1. 内存和硬盘使用率查看
查看内存使用率
- 常用命令:
- free
- top
查看硬盘使用率
- 常用命令:
- fdisk
- fidsk -l:查看硬盘分区信息
- df:类似fdisk,但会显示挂在目录
- du:查看文件实际大小(ls查看的是inode信息,du查看数据块信息)
- fdisk
2. 文件系统
常见Linux文件系统:ext4, xfs, btrfs
ext4文件系统
相关概念:
- 超级块:文件产生变动时候,超级块就会更新
- 超级块副本
- i节点(inode):使用
ls -i
查看inode编号 - 数据块(datablock):用于记录数据(如果将inode比作火车头,那么数据块就是车厢)
- 链接:
- 硬链接:
- 指向同一个inode
- 无法跨文件系统
- 软链接:
- 指向不同的inode
- 可以跨文件系统
- 硬链接:
- 文件访问控制:
- getfacl
- setfacl
- -m:赋予权限
- -x:撤回权限
- 示例:setfacl -m u:user1:rw tmpfile(对用户user1赋予tmpfile文件可读写的权限)
3. 硬盘的分区与挂载
常用命令:
- fdisk
- mkfs
- parted
- mount
常见配置文件
- /etc/fstab
大致步骤:假设新添加了一块硬盘,设备名为/dev/sdb:
- 分区
- fdisk /dev/sdb(如果大于2TB,则需要使用parted,而不是fdisk)
- 在fdisk终端按“m”获取帮助
- 按“n”添加新分区(一路按回车键就是默认全盘分一个区)
- 按“w”保存分区信息(新分区被命名为sdb1)
- 格式化
- 如果分区大小小于2TB,可以使用mkfs;若大于,则使用parted;
-
mkfs.ext4 /dev/sdb1
,将新分区格式化为ext4
- 挂载
- mkdir -p /mnt/sdb1
-
mount -t ext4 /dev/sdb1 /mnt/sdb1
,挂载到/mnt/sdb1,中间“-t ext4”可不加,mount会自动识别文件系统。 -
注意:上一步的挂载只是暂存在内存中,需要编辑
/etc/fstab
文件,在最后新起一行添加“/dev/sdb1 /mnt/sdb1 ext4 defaults 0 0
”,使得挂载固化。
4. XFS文件系统的用户硬盘配额
XFS有个名为quota的设置,可以对用户硬盘配额进行简单的设置。大致操作步骤如下:
- 分区(不赘述了)
- 格式化(使用mkfs.xfs格式化分区)
- 挂载:
mkdir -p /mnt/sdb1
mount -o uquota,gquota /dev/sdb1 /mnt/sdb1
-
xfs_quota -x -c 'report -ugib' /mnt/sdb1
,查看“/mnt/sdb1”的磁盘配额,报告用户配额、用户组配额,inode和block。 -
xfs_quota -x -c 'limit -u isoft=5 ihard=10 user1' /mnt/sdb1
,对user1进行硬盘配额限制,使用5个inode时提示,最多使用10个inode。
5. 交换分区的查看与创建
使用free
命令查看swap大小。
使用分区方式扩充swap
- 分区(不赘述了)
-
mkswap /dev/sdb1
,将/dev/sdb1格式化为swap -
swapon /dev/sdb1
,启用新swap分区(使用swapoff
关闭指定swap分区)
使用文件扩充swap
-
dd if=/dev/zero bs=4M count=1024 of=/swapfile
,制作一个4G大小的空文件 -
mkswap /swapfile
,格式化(有的发行版可能会在这一步报错,提示不安全) -
chmod 600 /swapfile
,修改/swapfile的权限 -
swapon /swapfile
,启用新swap分区
固化新swap
- 编辑/etc/fstab文件
- 以文件方式扩充swap为例:在fstab文件底部添加
/swapfile swap swap defaults 0 0
6. 软件RAID的使用
常见RAID方式:
- RAID 0:至少需要两块硬盘,数据分别存在两块盘上,可以提高单盘吞吐率,缺点是不安全;
- RAID 1:至少需要两块硬盘,数据以镜像方式保存,可以提高可靠性;
- RAID 5:至少需要三块硬盘,前两块做数据盘,第三块做校验盘,相当于RAID 0和RAID 1的简单折中方案;
- RAID 10:至少需要四块硬盘,假设ABCD四个盘,A、B做RAID 1,C、D也做RAID 1,然后AB和CD做RAID 0,兼顾速度和可靠。
软RAID操作方式
- 安装 mdadm 软件
-
mdadm -C /dev/md0 -a yes -l1 -n2 /dev/sd[b,c]1
,创建软RAID(如果提示不支持boot启动,输入“y”同意即可)-
-C
:创建 -
/dev/md0
,创建后的设备文件 -
-a yes
,创建过程中的一些选项全部yes; -
-l1
:RAID级别为1; -
-n2
:活动硬盘为2个; -
/dev/sd[b,c]1
:指定组成RAID的硬盘是sdb1和sdc1。
-
-
mdadm -D /dev/md0
,查看/dev/md0; -
mkfs.xfs /dev/md0
,格式化…… - 停止RAID:
mdadm --stop /dev/md0
7. 逻辑卷管理
逻辑卷与文件系统的关系
逻辑卷就相当于将所有硬盘虚拟成一块硬盘,有点像RAID。
为Linux创建逻辑卷
- 假设有三块硬盘,且已分区;
-
pcvcreate /dev/sd[b,c,d]1
,创建pv; - 使用命令
pvs
查看 -
vgcreate vg1 /dev/sdb1 /dev/sdc1
,将sdb1和sdc1加入新建的卷组vg1; - 使用
vgs
查看卷组; -
lvcreate -L 100M -n lv1 vg1
,在卷组vg1上创建大小为100M的逻辑卷lv1;-
-L
:设置逻辑卷的大小; -
-n
:设置逻辑卷的名字; -
vg1
:指定卷组。
-
- 使用命令
lvs
查看逻辑卷; - 格式化与挂载:
mkfs.xfs /dev/vg1/lv1
mkdir /mnt/tmp1
-
mount /dev/vg1/lv1 /mnt/tmp1
(如果要保存,需要写入fstab文件)
动态扩容逻辑卷
-
vgextend vg1 /dev/sdd1
,将sdd1加入vg1; -
lvextend -L +10G /dev/vg1/lv1
,为逻辑卷lv1扩充10G; -
xfs_growfs /dev/vg1/lv1
,让xfs文件系统更新;(ext4使用resize2fs
)
8. 系统综合状态查看
使用sar
命令查看系统综合命令
示例:sar -u 1 10
:每1秒采样一次CPU的信息,总共采集10次。
-
-u
:查看CPU -
-r
:查看内存 -
-b
:查看IO -
-d
:查看硬盘 -
-q
:查看进程
使用第三方命令查看网络流量(如iftop
)
- 由于
sar
命令无法监测网络流量,所以可以安装iftop,借助iftop查看网络流量。
网友评论