Linux 磁盘相关命令

一、磁盘分区机制

[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 磁盘相关命令_第1张图片

 Linux 磁盘相关命令_第2张图片

 后面的不截图了,虚拟机上面操作,都用默认即可

记得重启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的磁盘

Linux 磁盘相关命令_第3张图片

 分区fdisk命令

1、输入fdisk命令  /dev/sdb 是我们磁盘的位置

Linux 磁盘相关命令_第4张图片

 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

Linux 磁盘相关命令_第5张图片

 c)然后提示要进行几个分区,默认选 1 即可

Linux 磁盘相关命令_第6张图片

 d)然后都输入enter即可,

e)最后一步,记得要输入 w 进行写磁盘,如果到这里不想进行分区了可以使用q

Linux 磁盘相关命令_第7张图片

在通过linux查看lsblk,已经有一个sdb1的分区

Linux 磁盘相关命令_第8张图片

 ③ 磁盘格式化

mkfs -t ext4 /dev/sdb1

Linux 磁盘相关命令_第9张图片

 格式化成功以后,这里就有了uuid了

Linux 磁盘相关命令_第10张图片

 ④ 进行挂载

我们把/dev/sdb1这个分区挂载到/newdisk目录下面

mount /dev/sdb1 /newdisk

现在查看lsblk -f就发现了已经挂载到了/newdisk 

Linux 磁盘相关命令_第11张图片

 如果想卸载可以直接用

umount /dev/sdb1

⑤ 用命令进行挂载,如果linux重启会失效

vim /etc//etc/fstab

Linux 磁盘相关命令_第12张图片

 添加我们新增的分区挂载到/newdisk

这种就是自动挂载,每次linux重启也没有问题。

三、磁盘的大小

① df -h

Linux 磁盘相关命令_第13张图片

 ② du 命令

du -h 统计目录的占用情况,不添加目录则默认为当前目录

Linux 磁盘相关命令_第14张图片

 -s 指定目录占用大小汇总

-h 带计量单位

-a 含有文件

--max-depth=1 子目录深度

-c 列出明细的同时,增加汇总

案例:

1、查询根目录下面的每个目录的占用情况

du -h --max-depth=1 /

Linux 磁盘相关命令_第15张图片

 2、 查看/usr/local目录下面目录和文件大小

du -ha --max-depth=1 /usr/local/

Linux 磁盘相关命令_第16张图片

③ 案例测试

 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

 Linux 磁盘相关命令_第17张图片

 

你可能感兴趣的:(Linux,linux,centos,运维)