一、磁盘分区机制
[root@master-129 tmp]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 10G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 9G 0 part
├─centos-root 253:0 0 8G 0 lvm /
└─centos-swap 253:1 0 1G 0 lvm [SWAP]
sr0 11:0 1 906M 0 rom
可以通过lsblk命令查看分区挂载的情况:
上面可以看出 sda是一块硬盘,分了两个区,sda1和sda2,
sda1是/boot挂载的,属于系统引导层
sda2是根目录和swap挂载的
vda表示的是虚拟硬盘,就是云主机上面的磁盘。
查看详细信息 可以查看文件系统类型和uuid
[root@master-129 tmp]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 93514cb1-f3b8-4d58-b6ea-bf6cbb7e3cab /boot
└─sda2 LVM2_member n1SLlh-YPGU-dBUs-OU2W-yUf2-vLiu-BswmuT
├─centos-root xfs b695e590-cc3e-41fc-8dca-7867c9c1184d /
└─centos-swap swap e4350624-b1aa-4fc7-ba8e-0d5718b36917 [SWAP]
sr0 iso9660 CentOS 7 x86_64 2018-05-03-21-07-04-00
二、新增一块磁盘挂载
虚拟机自己添加一块
后面的不截图了,虚拟机上面操作,都用默认即可
记得重启linux
[root@master-129 ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 93514cb1-f3b8-4d58-b6ea-bf6cbb7e3cab /boot
└─sda2 LVM2_member n1SLlh-YPGU-dBUs-OU2W-yUf2-vLiu-BswmuT
├─centos-root xfs b695e590-cc3e-41fc-8dca-7867c9c1184d /
└─centos-swap swap e4350624-b1aa-4fc7-ba8e-0d5718b36917 [SWAP]
sdb
sr0 iso9660 CentOS 7 x86_64 2018-05-03-21-07-04-00
可以看到新增了一块sdb的磁盘
分区fdisk命令
1、输入fdisk命令 /dev/sdb 是我们磁盘的位置
2、输入选项
表示 n add a new partition,添加一个新的分区
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-2097151,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-2097151,默认为 2097151):
将使用默认值 2097151
分区 1 已设置为 Linux 类型,大小设为 1023 MiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
a)先输入 n 创建一个新的分区,
b)然后提示选择主分区还是扩展分区,选默认的 p
c)然后提示要进行几个分区,默认选 1 即可
d)然后都输入enter即可,
e)最后一步,记得要输入 w 进行写磁盘,如果到这里不想进行分区了可以使用q
在通过linux查看lsblk,已经有一个sdb1的分区
mkfs -t ext4 /dev/sdb1
格式化成功以后,这里就有了uuid了
我们把/dev/sdb1这个分区挂载到/newdisk目录下面
mount /dev/sdb1 /newdisk
现在查看lsblk -f就发现了已经挂载到了/newdisk
如果想卸载可以直接用
umount /dev/sdb1
vim /etc//etc/fstab
添加我们新增的分区挂载到/newdisk
这种就是自动挂载,每次linux重启也没有问题。
三、磁盘的大小
du -h 统计目录的占用情况,不添加目录则默认为当前目录
-s 指定目录占用大小汇总
-h 带计量单位
-a 含有文件
--max-depth=1 子目录深度
-c 列出明细的同时,增加汇总
案例:
1、查询根目录下面的每个目录的占用情况
du -h --max-depth=1 /
2、 查看/usr/local目录下面目录和文件大小
du -ha --max-depth=1 /usr/local/
1、统计/opt目录下面文件的个数
ll /opt | grep "^-" | wc -l
wc命令是统计命令,-l 表示统计行数, grep "^-" 表示使用正则表达式搜索以-开头的
2、统计/opt目录下面目录的个数
ll /opt | grep "^d" | wc -l
3、统计/opt目录下面所有的文件,包括子文件
ls -lR /opt | grep "^-" | wc -l
这里需要使用ls -lR -R的意思就是表示递归把下面所有的文件展示
4、用树状的目录显示某个目录,使用tree命令
如果没有安装,则可以用yum install tree