基础知识
常用存储设备
- IDE磁盘:日常接触少,性价比高,速度慢,不支持热插拔,最多四个设备
- 设备文件命名:/dev/hd[a-d][1-4][5-…]
- SCSI磁盘:速度快性能好,可连接多个设备。可支持热插拔,占用CPU低,价格贵,一般用于工作站或服务器上
- SATA磁盘:我们日常使用的,结构简单、支持热插拔
- 设备文件命名:/dev/sd[a-d][1-4][5-…]
- U盘、sd卡,走SCSI接口
- 设备文件命名:/dev/sd[a-d][1-4][5-…]
- 光盘
- 设备文件命名:/dev/sr0
设备文件命名解释,在Linux下一切皆文件,当存储设备插入主机,也是以文件的形式操作,这些文件有一定的命名规律
如第一个SATA硬盘命名:/dev/sda,第二个/dev/sdb
该硬盘第一个主分区 sda1 第二个sda2 第三个 sda4
从第5个序号开始是逻辑分区,是逻辑分区,第一个逻辑分区 sda5
磁盘的分区
接入一个硬盘后,我们需要对其分区后再使用,就是将整个硬盘划分为几个部分(类似于Windows的分盘)
一个MBR分区类型的硬盘最多只能有四个主分区,需要再多分区的话只能建立扩展分区,然后在扩展分区下再划分逻辑分区
磁盘的挂载
刚刚说到硬盘以文件的形式存在在Linux上,但是我们是不能直接操作/dev/sda1这些文件的
在使用硬盘前,还需要给它指定一个目录作为入口(这个过程就是挂载),比如我挂载在目录mnt下,mnt就是这个硬盘的入口,可以通过这个目录来使用这个硬盘
挂载是针对分区而言的,不是针对整个硬盘,我们只能挂载某个分区
磁盘的格式化
使用一个存储设备,必要有文件系统的存在
格式化就是指将分区格式化成不同的文件系统,会清空文件
文件系统
就是操作系统确定存储设备或分区上的文件的方法和数据结构:即在存储设备上组织文件的方法
Linux常用文件类型有ext2、ext3、ext4、xfs
fdisk命令
查看磁盘详情,添加、删除、修改分区
需要root权限
不带选项只带一个设备文件参数时,会进入fdisk的界面进行操作
查看硬盘个数和分区情况
sudo fdisk -l
结果
可以看出
sda硬盘的大小是32.2GB,有255个柱面,63个扇区,3916个磁柱
我只有一块硬盘sda,这个硬盘有两个主分区1和2,有一个逻辑分区5
*代表这个分区是系统启动分区
进入fdisk操作一个硬盘,以/dev/sdb为例
sudo fdisk /dev/sdb
结果:(输入了m查看帮助)
常用的功能:
-
d :删除一个分区
-
l :是列出分区类型,以供我们设置相应分区的类型
-
m :列出帮助信息
-
n :添加一个分区
-
p :打印分区表
-
q :不保存退出
-
w :保存退出
-
t : 改变分区类型;
输入n,添加分区
p新建主分区,后有已经建立的分区(0个主分区,0个扩展分区,4个可划分)
e新建扩展分区
建立3个主分区,一个扩展分区
在扩展分区下,建立逻辑分区
打印分区表
输入w保存退出
mkfs命令
在特定的分区上建立 linux 文件系统,(格式化)
选项
-t : 指定文件系统,Linux 的预设值为 ext2
-c : 在制做文件系统前,检查是否有坏轨
-l bad_blocks_file : 将有坏轨的block资料加到 bad_blocks_file 里面
将sda6分区格式化为ext3格式
将一个分区指定格式化为某个文件系统
将sdb1格式化为ext3
sudo mkfs -t ext3 /dev/sdb1
mount 命令
用于将磁盘挂载到某个文件夹
文件夹需要已经存在
这是临时挂载,重启后失效,需要永久挂载,需要修改配置文件
挂载命令:
格式:sudo mount -t 文件系统类型 硬盘设备文件 挂载目录
sudo mount -t ext3 /dev/sdb1 ~/mnt/b1
一个目录被多次挂载后,该目录内是最后一次挂载的内容,之前就存在的文件内容会被隐藏,但不是没有了
挂载一个光盘到/mnt/ddd
mount -o loop /dev/sr0 /mnt/ddd
umount命令
取消挂载命令
格式:sudo umount 挂载目录
sudo umount ~/mnt/b1
目录被多次挂载后,取消挂载将回到上一次挂载的硬盘,继续取消挂载将一次次退回,直到全部取消。目录内的文件内容可是随之更改
全部取消挂载后,该文件夹就和上一级文件夹在同一个硬盘下了
配置文件/etc/fstab
想实现开机自动挂载某设备,只要修改/etc/fstab文件即可
sudo vim /etc/fstab
将最后一行添加进去即可
意义是
硬盘文件 挂载目录 文件系统 模式 0 0