假设有一天你系统装完,空间不够用。需要你新装一块硬盘到服务器,那么我们要做如下事情:
一 用fdisk建立好分区:
fdisk –l 查看当前已经划分的分区
fdisk /dev/sda
输入如下字母和数字 n e 3 n 5 l t 83 w
为了更好的懂得什么意思,下面给出各选项的中文意思:
p: 显示
n: 创建
d: 删除
t: 修改分区ID
l: 列出所有支持ID类型
w: 保存退出
q: 放弃修改并退出
m: 获取帮助
二、让系统识别出分区
因为我们实际环境中操作的是服务器,不到万不得已不能轻易重启系统
那么就用到partx这个命令,更新分区表
partx –a –n 5 /dev/sda
-a 添加特殊分区到分区表
-n 表示要添加到分区表的分区号码。
三、文件系统的创建
1 知道文件系统都包括那些类型:
Linux:ext2, ext3, ext4, reiserfs, xfs, btrfs, swap
光盘:iso9660
Windows: fat32(vfat), ntfs
Unix: ffs, ufs, jfs, jfs2
网络文件系统:nfs, cifs
集群文件系统:ocfs2, gfs2
分布式文件系统:ceph,
moosefs, mogilefs, hdfs, gfs, glusterfs
(1) 日志型文件系统
非日志型文件系统:ext2
日志型文件系统:ext3
(2) swap:交换分区
2、 要使用某种文件系统,满足两个条件:
内核中:支持此种文件系统
用户空间:有文件系统管理工具
3. 创建文件系统的工具:
1)我们可以使用mkfs来创建, mkfs –t 文件类型 /dev/sda5
2)针对ext系统我们使用mke2fs,
mke2fs -t ext4 -b 4096 -L ‘mydata1‘ -m 20 /dev/sda5
-t 要格式话的文件系统类型一般为ext2、ext3、ext4;
-b 指定文件系统块的大小,一般为1024、2048、4096;
-L 设定卷标;
-m 预留多少百分比的空间给管理。
3) 执行时报错,输 入 partprobe 解决。
partprobe可以修改kernel中分区表,使kernel重新读取分区表。
4、修改卷标及管理空间
1) 先用 e2label /dev/sd5 查看卷标
2)用e2label /dev/sda5 mydata 修改卷标
3)用tune2fs -l -L ‘mydata2‘ -m 30 /dev/sda5
tune2fs命令的意思是显示ext系列文件系统的属性,或调整其属性;
-l:显示超级块中的信息;显示整个文件的属性及布局等相关信息;
-L ‘LABEL‘:修改卷标;
-m : 调整预留给管理员的管理空间百分比;
四、 文件系统的挂载与卸载
1、我们都知道系统访问是内核通过文件系统中的inode寻找磁盘中的数据块来进行文件的读写操作,而根目录则是所有系统访问的入口。挂载就是将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件系统访问入口的行为,称之为挂载;
2、卸载就是解除挂载的过程。
3、挂载命令mount
1) mount 不加任何选项和参数则表示显示已挂载的设备。
2)mount [options] [-o options] DEVICE MOUNT_POINT
[options]:命令选项
[-o options]:挂载选项
DEVICE: 要挂载的设备
(1) 设备文件:/dev/sda5
(2) 卷标:-L ‘LABEL‘
(3) UUID:-U ‘UUID‘
(4) 伪文件系统名称
MOUNT_POINT: 挂载点
常用选项:
-t type:文件系统类型
-r: 以“只读”方式挂载此文件系统
-w: 以“读写”方式挂载此文件系统
-n:每个文件系统在挂载时都会自动更新/etc/mtab文件,-n用于禁止此功能;
此时,如果想查看挂载的所有文件系统:cat /proc/mounts
-a: 自动挂载所有支持自动挂载的设备;
-B:绑定目录至另一个目录上;
-o 挂载选项:
async:异步模式
sync: 同步模式
atime/noatime:是否更新访问时间戳;
diratime/nodiratime:是否更新目录的访问时间戳;
auto/noauto: 是否允许此设备被自动挂载;
exec/noexec:是否允许执行此文件系统上应用程序;
dev/nodev:是否支持在此设备上使用设备文件;
suid/nosuid:
remount:重新挂载
ro
rw
user/nouser: 是否允许普通挂载此设备;
acl:是否支持此设备上使用facl;
defaults:rw, suid, dev, exec, auto, nouser, and async
3)此例中所用到的挂载:
mkdir /mydata
mount /dev/sda5 /mydata
4、卸载命令
umount 挂载设备 或 umount 挂载点
我们执行卸载时报错,我们先用fuser -v查看说占用了/mydata这个挂载点
然后用fuser-km /mydata
五、当我们正在做挂载点挂载和卸载的时候,有同事反映说监控报警。有台swap空间不足:
果断远程登录服务器,free –m
重复建立用fdisk建立分区操作,将t 83 改成 t82(注:操作相同但是机器不同)
partprobe 更新分区表而不重新启动
mkswap -L ‘swap‘ /dev/sda6 创建swap分区
swapon -a /dev/sda6 激活 swap分区
free –m 查看swap空间
搞定退出远程服务器。
六 接下来我们使用df和du命令来查看本地磁盘使用情况
df –h 查看磁盘占用情况
du –sh /etc 显示/etc这个目录用了多少空间
注意:df针对磁盘,du针对文件和目录.
七、每次手动加载加载几次就觉得麻烦,然后就想到了/etc/fstab这个文件
/dev/mapper/centos-root 表示要挂载的设备或伪文件系统,可为设备文件、LABEL=、UUID=、伪文件系统名称;
/ 表示挂载点
xfs 表示文件系统类型
default 挂载选项
第一个0 表示转储频率也就是dump备份设置,当其值设置为1时,将允许dump备份程序备份;设置为0时,忽略备份操作;
第二个0 fsck磁盘检查设置,其值是一个顺序。当其值为0时,永远不检查;而 / 根目录分区永远都为1。其它分区从2开始,数字越小越先检查,如果两个分区的数字相同,则同时检查。
/dev/sda5 /mydata ext4 defaults 0 0添加到/etc/fstab中
保存退出,重启验证收工!