在系统里面添加一块磁盘,需要进行的操作
①对磁盘进行划分,以建立可用的磁盘分区。
②对该磁盘分区进行格式化,以建立系统可用的文件系统。
③对刚刚建立好的文件系统进行校验。
④建立挂载点(目录),将文件系统挂载上去。
观察磁盘分区状态
选项 |
说明 |
-d |
仅列出磁盘本身,并不会列出该磁盘的分区信息 |
-p |
列处该设备的完整文件名 |
-m |
同时列出该设备在/dev下面的权限信息 |
- blkid:列出设备的UUID等参数
- parted:列出磁盘分区表类型与分区信息(parted 设备名 print)
磁盘分区
gdisk:对使用GPT分区表的磁盘进行分区
-新建分区的流程
①gdisk 设备名
②n:进入新建分区状态
③Partition number:自动出现默认值,回车即可
④First sector:新增分区的起始扇区号码,使用默认值即可,回车即可
⑤Last sector:分区结束的扇区号码,需要跟据想要的大小自行设置,设置的格式为:+24G
⑥partprobe:更新Linux内核的分区表信息
- 删除分区的流程
①gdisk 设备名
②d:进入删除分区状态
③Partition number:输入数字,选择要删除的分区
④partprobe:更新Linux内核的分区表信息
fdisk:对使用MBR分区表的磁盘进行分区
使用方法与gdisk几乎一样
磁盘格式化(创建文件系统)
XFS文件系统的mkfs.xfs
mkfs.xfs 选项 设备名称
属性 |
说明 |
-b |
后面接的是区块容量,可由512到64K,不过LINUX最大容量限制为4K |
-d |
后面接重要的data section参数,见下表 |
-f |
如果设备已经有文件系统,需要使用-f来强制格式化才行 |
-L |
后面接这个文件系统的Lable name的意思 |
参数 |
说明 |
agcount=数值 |
设置需要几个存储群组的意思,通常与CPU有关 |
agsize=数值 |
每个存储群组设置为多少容量的意思 |
file |
指的是格式化的设备是个文件而不是个设备 |
su=数值 |
当有磁盘阵列时,那个strips数值的意思 |
sw=数值 |
当有磁盘阵列时,用于保存数据的磁盘数量 |
sunit=数值 |
与su相当 |
swidth |
su*sw的数值 |
ext4文件系统的mkfs.ext4
mkfs.ext4 设备名称
选项 |
说明 |
-b |
设置区块的大小有1k,2k,3k |
-L |
接这个设备的标头名称 |
文件系统校验
进行检验修复时要先将已挂载的文件系统卸载
选项 |
说明 |
-f |
后面名称指的是个文件而不是设备 |
-n |
单纯检查并不修改数据 |
-d |
通常使用在单人模式下,针对根目录进行检查和修复的操作 |
属性|说明|
-p|当文件修复时,若有需要回复y的操作时,自动回复y|
-f|强制检查|
-D|针对文件系统下的目录进行最优配置|
-b|后面接超级区块的位置。如果超级区块因故受损,通过这个参数可以利用文件系统内备份的超级区块来尝试修复dumpe2fs -h 设备名称 | grep ’Blocks per group‘|
文件系统挂载与卸载
- 注意事项
①单一文件系统不应该被重复挂载在不同的挂载点上
②单一目录不应该重复挂载多个文件系统
③要作为挂载点的目录,理论上应该都是空目录才行
- mount命令:挂载文件系统
mount LABEL=’‘ /UUID=’‘ 挂载点
选项 |
说明 |
-a |
依照配置文件/etc/fstab的数据将所有未挂载的磁盘都挂载上来 |
-l |
单纯的输入mount会显示目前挂载的信息,加上-l可增列Label名称 |
-t |
可以加上文件系统种类来指定欲挂载的类型 |
-o |
可以接一些挂载时额外加上的参数 |
-o 参数 |
说明 |
async,sync |
此文件系统是否使用同步写入sync或非同步async写入的内存机制 |
atime,noatime |
是否修改文件的读取时间 |
ro,rw |
挂载文件系统称为只读ro或可读写rw |
auto,noauto |
允许此文件系统被mount -a自动挂载 |
dev,nodev |
是否允许此文件系统可建立设备文件 |
suid,nosuid |
是否允许此文件系统含有suid/sgid的文件格式 |
exec,noexec |
是否允许此文件系统上拥有可执行文件 |
defaults |
默认值为:rw,suid,dev,exec,auto,nouser,async |
remount |
重新挂载 |
- 在挂载时指定挂载文件系统所用的语系
mount -o codepage=950 iocharset=utf8 UUID=“” 目录名
- 将某个目录挂载到另一个目录
mount --bind 目录1 目录2
相当于ln 对文件进行硬链接操作(两者链接到同一个inode),需要注意的是,这是对目录的操作,而ln是对文件的操作。
磁盘文件系统参数自定义
- xfs_admin:修改XFS文件系统的UUID与Lable name
xfs_admin 选项 设备文件名
选项 |
说明 |
-l |
列出这个设备的label name |
-u |
列出这个设备的UUID |
-L |
设置这个设备的Label name |
-U |
设置这个设备的UUID |
uuidgen:自动生成UUID
- tune2fs:修改ext4的label name与UUID
tune2fs 选项 设备文件名
选项 |
说明 |
-l |
类似dumpe2fs -h的功能,读取超级区块的内容 |
-L |
设置这个设备的Label name |
-U |
设置这个设备的UUID |