Linux学习笔记
Posted 激流勇进、
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux学习笔记相关的知识,希望对你有一定的参考价值。
1.Linux严格区分大小写
2.Linux中所有内容以文件的形式保存,包括硬件。(一切内容皆文件)
3.Linux不靠扩展名区分文件类型,靠权限,但有约定俗成的扩展名
4.Windows下的程序不能直接在Linux中安装和运行,但是Windows中的程序可以Linux的模拟器中运行
字符界面优势:
1. 占用的系统资源更少
2. 减少了出错, 被攻击的可能性
3. 服务器安全和稳定性优先, 所以一般用字符界面而不会考虑图形界面
Linux安装之虚拟机的安装:
1. VMware简介
(1) VMware是一个虚拟PC的软件, 可以在现有的OS上虚拟出一个新的硬件环境, 相当于模拟出一台新的PC; 由此来实现在一台机器上真正同时运行两个独立的OS
(2) 官网: www.vmware.com
VMware主要特点:
1、不需要分区或重新开机就能在同一台PC上使用两种以上的操作系统;
2、本机系统可以与虚拟机系统网络通信
3、可以设定并且随时修改虚拟机操作系统的硬件环境。
3. 建议的VMware配置
(1) CPU: 主频1GHz以上
(2) 内存: 1GB以上(若要安装Linux操作系统则分配2G以上)
(3) 硬盘: 建议分区空闲空间8GB以上
下载:https://pan.baidu.com/s/1gf3F6HP
分区:把大硬盘分为小的逻辑分区
格式化:写入文件系统
分区设备文件名:给每个分区定义设备文件名
挂载:给每个分区分配挂载点
1. 磁盘分区流程
Windows: 分区 -> 格式化 -> 分配盘符
Linux: 分区 -> 格式化 -> 给每个分区起"设备文件名" -> 分配挂载点
2. 设备文件名
(1) Linux中一切皆文件, 包括硬件,用户等
(2) 硬件的文件名为"硬件设备文件名", 硬件设备文件名是由Linux自动检测并分配的
(3) 硬件设备文件在目录中处于根目录("/"代表根目录,是最高级目录)下的dev(专用于放硬件设备文件)下, 即"/dev"文件夹下
3. 分区的设备文件名分配规则
/dev/hda1
/dev/sda1
hd代表IDE接口, sd代表SCSI或SATA接口
a代表第一块硬盘, b代表第二块, c代表第三块... ...
1代表一块硬盘上的第一个分区, 2代表此硬盘的第二个分区,3代表第三个... ...
其中1234编号只能代表主分区或扩展分区, 逻辑分区的编号从5开始分配, 最大分区编号16
/dev/sda1 第一块SATA接口硬盘的第一个分区
IDE接口: 老式硬盘接口, 传输速度较慢, 理论速度133MB/s
SCSI接口: 老式服务器硬盘接口, 理论速度200MB/s
SATA接口(窗口硬盘): 目前使用的硬盘接口, SATA3的理论速度为500MB/s
4. 挂载点
当成Windows中的盘符的概念来理解. Linux中挂载是指给分区分配"盘符"的过程, 而Linux中使用目录作为挂载点(盘符)
绝大多数目录都可以作为挂载点(部分必须和根目录放在同一个分区的目录除外, 否则将导致系统不能启动)包括你手工创建的目录
/(挂载点根目录,根目录中要保存其他所有数据,根目录如果没有硬盘空间,根下的很多数据将没有地方存放)
swap分区(交换分区, 可理解为虚拟内存, 当真实内存不足时, 可将swap分区中的硬盘空间作为内存使用, 如果内存小于等于4GB则推荐swap分配内存的两倍, 若内存大于4GB, 建议swap分区大小与内存相等, 不需要挂载点)
推荐分区:
boot分区: 推荐200MB(/boot目录, /boot中存放了用于系统启动的相关数据, 如果不单独分区, 将会和根分区存放在同一个存储空间中, 如果根分区写满将导致系统无法启动)
常用的分区类型,主分区、扩展分区、逻辑分区,而根分区不是常用的分区类型
Bios是主板自带的一个操作系统,切到BOOT下按+键可以改变开机启动顺序
红帽专有图形化工具setup设置IP地址,使用XShell前先来配置IP地址
XShell是进行远程Linux管理的一个工具
Linux命令格式:
在XShell界面中[[email protected] ~]#
root代表当前登录用户 Linux的管理员就是root,不是admin
localhost:主机名
~当前所在目录(家目录):
#:超级用户的提示符 普通用户的提示符是$
命令格式:命令 [选项] [参数]
注意: 个别命令使用不遵循此格式
当有多个选项时,可以写在一起
简化选项与完整选项 ,举例:-a 等于--all
查询目录中的内容:ls [选项] [文件或目录]
选项:
-a 显示所有文件,包括隐藏文件
-l 显示详细信息
-d 查看目录属性
-h 人性化显示文件大小
-i 显示inode
-rw-r--r--. 1 root root 1207 1月 14 18:18 anaconda-ks.cfg
-rw-r--r-- 代表权限,共10位
-文件类型(-表示文件 d 表示目录 i软链接文件(就是快捷方式))
rw-u所有者 r--g所属组 r--o其他人
r读 w写 x执行
. ACL权限
Linux目录处理命令:
mkdir -p [目录名]
-p 递归创建 举例 mkdir -p a/b 就是在a目录下再建立b目录,如果只是创建单独目录,不用加p
命令英文原意:make directories
切换所在目录:cd
cd [目录]
命令英文原意:change directory
简化操作 :
cd ~ 进入当前用户的家目录
cd
cd - 进入上次目录
cd .. 进入上一级目录
cd. 进入当前目录
Xshell Ctrl+L 进行清屏
相对路径:参照当前所在目录,进行查找
如:[[email protected] ~]# cd ../usr/local/src/
绝对路径:从根目录开始指定,一级一级递归查找。在任何目录下,都能进入指定位置
如:[[email protected] ~]# cd/etc/
*推荐初学者使用绝对路径,这样可以防止出错。
Tab 识别命令补全,目录补全
查询所在目录位置:pwd
命令英文原意:print working directory
删除空目录:rmdir [目录名] 这个命令现在极其少见,不常用
命令英文原意:remove empty directory
Linux的权限比Windows大,如果你懂Linux的内核,你大可以自己写命令。这就是Liunx的魅力所在。
rm -rf [文件或目录] 常用
选项: -r 删除目录
-f 强制
复制命令:cp [选项] [原文件或目录] [目标目录]
命令引文原意:copy
选项:
-r 复制目录
-p 连带文件属性复制
-d 若源文件是链接文件,则复制链接属性
-a 相当于 -pdr 它会使得目标文件和源文件一模一样,包括时间
剪切或改名命令: mv (如果原文件和目标文件在同一个目录,就是改名,否则是剪切)
英文原意 : move
mv [原文件或目录] [目标目录]
命令英文原意: move
Linux中常见目录作用:
/根目录
/bin 命令保存目录(普通用户就可以读取的命令)
/boot启动目录,启动相关文件
/dev设备文件保存目录
/etc配置文件保存目录
/home普通用户的家目录
/lib系统库保存目录
/mnt系统挂载目录
/media挂载目录
/root超级用户的家目录
/tmp临时目录
/sbin命令保存目录(超级用户才能使用的目录)
/proc直接写入内存的
/sys
/usr系统软件资源目录
/usr/bin/系统命令(普通用户)
/usr/sbin/系统命令(超级用户)
/var系统相关文档内容
可以在家目录root或home,以及tmp目录下随便放内容,做练习
Linux链接命令:ln
ln -s [原文件] [目标文件]
命令引文原意:link
功能描述:生成链接文件
选项:-s 创建软链接
硬链接特征:
1.拥有相同的i节点和存储block块,可以看做是同一个文件
2.可以通过i节点识别
3.不能跨分区
4.不能针对目录使用
软链接特征:
1.类似Windows快捷方式
2.软链接拥有自己的I节点和Block块,但是数据块中只保存原文件的文件名和I节点号,并没有实际的文件数据
3.lrwxrwxrwx |软链接
软链接文件权限都为rwxrwxrwx
4.修改任意文件(原文件或者快捷方式),另一个都改变
5.删除原文件。软链接不能使用
注意:如果要做软链接,原文件一定要做绝对路径,不然容易出错。
Linux文件搜索命令:
locate 文件名
它是在后台数据库中(/var/lib/mlocate)按文件名搜索,搜索速度更快
这个数据默认是一天一更新,新建的文件想要查出来,要用updatedb命令
搜索命令的命令:(只能搜索系统命令,不能搜索自己创建的命令)
whereis 命令名
搜索命令所在路径及帮助文档所在位置
选项:
-b 只查找可执行文件
-m 只查找帮助文件
which 命令名
查看命令所在位置及别名
PATH环境变量:定义的是系统搜索命令的路径
find命令:
find [搜索范围] [搜索条件]
#搜索文件
find / -name install.log
#避免大范围搜索,会非常耗费系统资源
#find 是在系统当中搜索符合条件的文件名。如果需要模糊匹配,使用通配符匹配,通配符是完 全匹配
Linux中的通配符:
* 匹配任意内容
? 匹配任意一个字符
[] 匹配任意一个中括号内的字符
find /var/log -mtime +10
#查找10天前修改的文件
-10 10天内修改的文件
10 10天当天修改的文件
+10 10天前修改的文件
atime 文件访问时间
ctime 改变文件属性
mtime 修改文件内容
find . size 25k
#查找文件大小为25kb的文件
find . -inum 262422
#查找i节点是262422的文件
字符串搜索命令grep
grep [选项] 字符串 文件名
#在文件当中匹配符合条件的字符串
选项:
-i 忽略大小写
-v 排除指定字符串
find命令与grep命令的区别
find命令:在系统当中搜索符合条件的文件名,如果需要匹配。使用通配符匹配,通配符是
完全匹配
grep命令:在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,
正则表达式是包含匹配
以上是关于Linux学习笔记的主要内容,如果未能解决你的问题,请参考以下文章