一、使用技巧
命令是否成功执行
Linux命令是否成功执行,我们可以通过echo $ ?
判断;
其中$?是上一条命令执行的返回值,如果成功执行就返回0,失败返回非0值;
连续命令执行
我们可以使用’;‘&&’'I’等符号将多条命令连接在一起执行;
命令 | 作用 |
---|---|
&& | 前一条命令成功执行之后,才会执行下一条命令; |
|| | 前一条命令成功执行的话,后一条命令就不执行了; |
; | 无论前一条命令是否成功执行,都将继续执行后面的命令; |
修改sudo配置
修改/ec/ sudoers,不建议直接使用vim,而是使用visudo。因为修改 fec/ sudboers文件需遵循一定的语法规则,如果配置文件中有任何的语法错误都会导致sudlo命令不能再使用。使用visudo的好处就在于,当修改完毕/ec/ sudoers文件,离开修改页面时,系统会自行检验/ec sudoers文件的语法。
两个字符设备
Linux下有两个特殊的字符设备文件:
- /dev/null(空设备文件或黑洞文件)是一个特殊的设备文件,所有写入其中的数据,都会被丢弃的无影无踪,/dev/null通常被用于丢弃不需要的数据输出,或作为用于输入流的空文件,这些操作通常由重定向完成。
- 和/dev/null类似,/dev/zero也是一个特殊的字符设备文件,当我们使用或读取它的时候,它会提供无限连续不断的空的数据流,这些数据其值全部为0。
二、标准重定向
Linux系统下在shell中执行命令时,每个进程都和三个打开的文件相联系,并使用文件描述符来引用这些文件:
项目 | 描述 |
---|---|
标准输入(0) | 它是系统命令或程序获取数据输入的地方。默认是键盘输入,也可以是文件(标准输入重定向)或其他命令的输出(管道) |
标准输出(1) | 它是系统命令或程序正确执行信息的输出地方。默认是屏幕,也可以是文件(标准输出重定向); |
标准错误(2) | 它是系统命令或程序执行出错信息的输出地方。默认是屏幕,也可以是文件(标准出错重定向); |
重定向符号:
项目 | 描述 |
---|---|
< | 输入重定向符 |
> | 输出重定向符 |
>> | 输出追加重定向符(在文件末尾附加内容) |
注意:
如果这样写:1>2,意味着将标准输出重定向到一个名叫2的文件中
而1>&2代表着将标准输出重定向到标准错误中,&可以看成是个转义字符
三、系统磁盘管理
接口分类
接口和读取速度关系很大:
- IDE硬盘接口(Integrated Drive Eectronics,并口,即电子集成驱动器)也称作"ATA硬盘"或"PATA硬盘",是早期机械硬盘的主要接口,ATA133硬盘的理论速度可以达到133MB/s(此速度为理论平均值)
- SATA接口(Serial ATA,串口),是速度更高的硬盘标准,具备了更高的传输速度,并具备了更强的纠错能力。目前已经是SATA三代,理论传输速度达到600MB/s(此速度为理论平均值),
- SCSI接口(Smal omputer System Interface,小型计算机系统接口),广泛应用在服务器上,具有应用范围广、多任务、带宽大、CPU占用率低
及热插拔等优点,理论传输速度达到320MB/s,如右图所示。
分区
硬盘最多有四个主分区,要划分多分区的话,就引入拓展分区,将拓展分区划分为多个逻辑分区,就可以有多个分区可以使用了。
命名规则:
设备类型 | 设备文件 | 备注说明 |
---|---|---|
IDE硬盘 | /dev/hd[a-d][1-4[5…]] | IDE最多只支持4个设备,不支持热拔插 |
SATA/SCSI硬盘 | /devlsd[a-z][1-4][5.….] | 支持热拔插,理论上支持很多个 |
U盘、SD卡 | /dev/sdx[1…] | 都是走SCSI总线,跟SCSI硬盘─样使用 |
光盘 | /dev/srO或/dev/cdrom |
- IDE接口硬盘叫hdX,SATA/SCSI接口硬盘叫sdX,U盘/SD卡等设备也叫scX,光驱(光盘)设备叫srO或cdrom;
- 因为一个机器上可能会有多个硬盘,这样多个硬盘时就安装a,b,c …依次编号,所以第一个IDE硬盘叫hda,而第二个SATA硬盘叫sdb;
- 一个硬盘上可以有多个分区,其中主分区从1~4编号,而逻辑分区从5开始编号。这样第一个SATA硬盘的第一个主分区叫stal,第一个逻辑分区叫sda5
为磁盘分区
fdisk
用来为磁盘建立传统的MBR分区,GPT分区用parted
命令
1.查看分区:
df
查看系统各个盘的使用情况
ls
查看分区
可以看到sda磁盘还没有分区
- 用fdisk给sda创建一个逻辑分区,根据提示内容创建分区即可
分区格式化
Linux下常用的文件系统有ext3、ext4,在这里我们使用ext4文件系统格式化之前创建的两个分区。需要注意的是,对于逻辑分区和扩展分区我们应该格式化逻辑分区(/dev/sdb5),而不是扩展分区(/dev/sdb2)。
Linux下有mkfs.ext4/mkfs.ext3或mkfs -t ext3/ext4两个命令实现分区格式化: