1 常用命令
Linux 磁盘管理常用三个命令为 df、du 和 fdisk。
- df(英文全称:disk free):列出文件系统的整体磁盘使用量
- du(英文全称:disk used):检查磁盘空间使用量
- fdisk:用于磁盘分区
2 df
检查文件系统的磁盘空间占用情况。
2.1 选项和参数
-a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;
-k :以 KBytes 的容量显示各文件系统;
-m :以 MBytes 的容量显示各文件系统;
-h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
-H :以 M=1000K 取代 M=1024K 的进位方式;
-T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;
-i :不用硬盘容量,而以 inode 的数量来显示
2.2 实例
2.2.1 将系统内所有的文件系统列出来
[root@KunPeng ~]#
[root@KunPeng ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 1918552 0 1918552 0% /dev
tmpfs 1930636 0 1930636 0% /dev/shm
tmpfs 1930636 12108 1918528 1% /run
tmpfs 1930636 0 1930636 0% /sys/fs/cgroup
/dev/mapper/centos_bogon-root 18655232 14605444 4049788 79% /
/dev/sda1 201380 131444 69936 66% /boot
tmpfs 386128 0 386128 0% /run/user/0
2.2.2将容量结果以易读的容量格式显示出来
[root@KunPeng ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 12M 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/mapper/centos_bogon-root 18G 14G 3.9G 79% /
/dev/sda1 197M 129M 69M 66% /boot
tmpfs 378M 0 378M 0% /run/user/0
2.2.3将系统内的所有特殊文件格式及名称都列出来
[root@KunPeng ~]# df -aT
Filesystem Type 1K-blocks Used Available Use% Mounted on
sysfs sysfs 0 0 0 - /sys
proc proc 0 0 0 - /proc
devtmpfs devtmpfs 1918552 0 1918552 0% /dev
securityfs securityfs 0 0 0 - /sys/kernel/security
tmpfs tmpfs 1930636 0 1930636 0% /dev/shm
devpts devpts 0 0 0 - /dev/pts
tmpfs tmpfs 1930636 12104 1918532 1% /run
tmpfs tmpfs 1930636 0 1930636 0% /sys/fs/cgroup
cgroup cgroup 0 0 0 - /sys/fs/cgroup/systemd
pstore pstore 0 0 0 - /sys/fs/pstore
cgroup cgroup 0 0 0 - /sys/fs/cgroup/pids
cgroup cgroup 0 0 0 - /sys/fs/cgroup/cpu,cpuacct
cgroup cgroup 0 0 0 - /sys/fs/cgroup/perf_event
cgroup cgroup 0 0 0 - /sys/fs/cgroup/freezer
cgroup cgroup 0 0 0 - /sys/fs/cgroup/net_cls,net_prio
cgroup cgroup 0 0 0 - /sys/fs/cgroup/devices
cgroup cgroup 0 0 0 - /sys/fs/cgroup/memory
cgroup cgroup 0 0 0 - /sys/fs/cgroup/cpuset
cgroup cgroup 0 0 0 - /sys/fs/cgroup/hugetlb
cgroup cgroup 0 0 0 - /sys/fs/cgroup/blkio
configfs configfs 0 0 0 - /sys/kernel/config
/dev/mapper/centos_bogon-root xfs 18655232 14605652 4049580 79% /
systemd-1 autofs 0 0 0 - /proc/sys/fs/binfmt_misc
debugfs debugfs 0 0 0 - /sys/kernel/debug
hugetlbfs hugetlbfs 0 0 0 - /dev/hugepages
mqueue mqueue 0 0 0 - /dev/mqueue
/dev/sda1 xfs 201380 131444 69936 66% /boot
tmpfs tmpfs 386128 0 386128 0% /run/user/0
2.2.4将 /etc 底下的可用的磁盘容量以易读的容量格式显示
[root@KunPeng ~]# df -h /etc
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos_bogon-root 18G 14G 3.9G 79% /
3 du
du 命令是对文件和目录磁盘使用的空间的查看
3.1 选项与参数:
-a :列出所有的文件与目录容量,因为默认仅统计目录底下的文件量而已。
-h :以人们较易读的容量格式 (G/M) 显示;
-s :列出总量而已,而不列出每个各别的目录占用容量;
-S :不包括子目录下的总计,与 -s 有点差别。
-k :以 KBytes 列出容量显示;
-m :以 MBytes 列出容量显示;
3.2 实例
3.2.1 只列出当前目录下的所有文件夹容量(包括隐藏文件夹)
[root@centos7 ~]# du
0 ./.pki/nssdb
0 ./.pki
4 ./.vscode-server/bin/d045a5eda657f4d7b676dedbfa7aab8207f8a075/bin/remote-cli
3.2.2 将文件的容量也列出来
[root@centos7 ~]# du
8 ./.vscode-server/data/logs/20221021T115248/exthost5
68 ./.vscode-server/data/logs/20221021T115248
68 ./.vscode-server/data/logs
4 ./.vscode-server/data/machineid
4 ./.vscode-server/data/CachedExtensions/user
640 ./.vscode-server/data/CachedExtensions/builtin
644 ./.vscode-server/data/CachedExtensions
724 ./.vscode-server/data
196496 ./.vscode-server
3.2.3 检查根目录底下每个目录所占用的容量
[root@centos7 ~]# du -sm /*
0 /bin
110 /boot
0 /dev
37 /etc
458 /home
0 /lib
0 /lib64
0 /media
0 /mnt
0 /opt
4 fdisk
fdisk 是 Linux 的磁盘分区表操作工具
4.1 选项与参数:
-l :输出后面接的装置所有的分区内容。若仅有 fdisk -l 时, 则系统将会把整个系统内能够搜寻到的装置的分区均列出来
4.2 实例
4.2.1 列出所有分区信息
[root@centos7 ~]# fdisk -l
Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000b694e
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 10487807 4194304 82 Linux swap / Solaris
/dev/sda3 10487808 41943039 15727616 83 Linux
4.2.2 找出你系统中的根目录所在磁盘,并查阅该硬盘内的相关信息
[root@centos7 ~]# df / <==注意:重点在找出磁盘文件名而已
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 15717376 3668444 12048932 24% /
[root@centos7 ~]# fdisk /dev/sda3 <==仔细看,不要加上数字喔!
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xaf47c785.
Command (m for help): <==等待你的输入!
输入 m 后,就会看到底下这些命令介绍
Command (m for help): m <== 输入 m 后,就会看到底下这些命令介绍
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition <==删除一个partition
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
l list known partition types
m print this menu
n add a new partition <==新增一个partition
o create a new empty DOS partition table
p print the partition table <==在屏幕上显示分割表
q quit without saving changes <==不储存离开fdisk程序
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit <==将刚刚的动作写入分割表
x extra functionality (experts only)
Command (m for help):
离开 fdisk 时按下 q,那么所有的动作都不会生效!相反的, 按下w就是动作生效的意思
Command (m for help): p <== 这里可以输出目前磁盘的状态
Disk /dev/hdc: 41.1 GB, 41174138880 bytes <==这个磁盘的文件名与容量
255 heads, 63 sectors/track, 5005 cylinders <==磁头、扇区与磁柱大小
Units = cylinders of 16065 * 512 = 8225280 bytes <==每个磁柱的大小
Device Boot Start End Blocks Id System
/dev/hdc1 * 1 13 104391 83 Linux
/dev/hdc2 14 1288 10241437+ 83 Linux
/dev/hdc3 1289 1925 5116702+ 83 Linux
/dev/hdc4 1926 5005 24740100 5 Extended
/dev/hdc5 1926 2052 1020096 82 Linux swap / Solaris
# 装置文件名 启动区否 开始磁柱 结束磁柱 1K大小容量 磁盘分区槽内的系统
Command (m for help): q
注意:
想要不储存离开吗?按下 q 就对了!不要随便按 w 啊! 使用 p 可以列出目前这颗磁盘的分割表信息,这个信息的上半部在显示整体磁盘的状态。
5 磁盘格式化
mkfs [-t 文件系统格式] 装置文件名
5.1 选项与参数
-t :可以接文件系统格式,例如 ext3, ext2, vfat 等(系统有支持才会生效)
5.2 实例
5.2.1 查看 mkfs 支持的文件格式
[root@www ~]# mkfs[tab][tab]
mkfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.msdos mkfs.vfat
5.2.2 将分区 /dev/hdc6 格式化为 ext3 文件系统
[root@www ~]# mkfs -t ext3 /dev/hdc6
mke2fs 1.39 (29-May-2006)
Filesystem label= <==这里指的是分割槽的名称(label)
OS type: Linux
Block size=4096 (log=2) <==block 的大小配置为 4K
Fragment size=4096 (log=2)
251392 inodes, 502023 blocks <==由此配置决定的inode/block数量
25101 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=515899392
16 block groups
32768 blocks per group, 32768 fragments per group
15712 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 blocks): done <==有日志记录
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 34 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
# 这样就创建起来我们所需要的 Ext3 文件系统了!简单明了!
6 磁盘检验
fsck(file system check)用来检查和维护不一致的文件系统。
fsck [-t 文件系统] [-ACay] 装置名称
6.1 选项与参数
-t : 给定档案系统的型式,若在 /etc/fstab 中已有定义或 kernel 本身已支援的则不需加上此参数
-s : 依序一个一个地执行 fsck 的指令来检查
-A : 对/etc/fstab 中所有列出来的 分区(partition)做检查
-C : 显示完整的检查进度
-d : 打印出 e2fsck 的 debug 结果
-p : 同时有 -A 条件时,同时有多个 fsck 的检查一起执行
-R : 同时有 -A 条件时,省略 / 不检查
-V : 详细显示模式
-a : 如果检查有错则自动修复
-r : 如果检查有错则由使用者回答是否修复
-y : 选项指定检测每个文件是自动输入yes,在不确定那些是不正常的时候,可以执行 # fsck -y 全部检查修复。
6.2 实例
6.2.1 查看系统有多少文件系统支持的 fsck 命令
[root@www ~]# fsck[tab][tab]
fsck fsck.cramfs fsck.ext2 fsck.ext3 fsck.msdos fsck.vfat
6.2.2 强制检测 /dev/hdc6 分区
[root@www ~]# fsck -C -f -t ext3 /dev/hdc6
fsck 1.39 (29-May-2006)
e2fsck 1.39 (29-May-2006)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
vbird_logical: 11/251968 files (9.1% non-contiguous), 36926/1004046 blocks
7 磁盘挂载与卸除
挂载使用 mount 命令,卸载使用 umount 命令
7.1 挂载
7.1.1 选项和参数
mount [-t 文件系统] [-L Label名] [-o 额外选项] [-n] 装置文件名 挂载点
7.1.2 实例
7.1.2.1 用默认的方式挂载
将刚刚创建的 /dev/hdc6 挂载到 /mnt/hdc6 上面
[root@www ~]# mkdir /mnt/hdc6
[root@www ~]# mount /dev/hdc6 /mnt/hdc6
[root@www ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
.....中间省略.....
/dev/hdc6 1976312 42072 1833836 3% /mnt/hdc6
7.2 卸载
umount [-fn] 装置文件名或挂载点
7.2.1 选项与参数
-f :强制卸除!可用在类似网络文件系统 (NFS) 无法读取到的情况下;
-n :不升级 /etc/mtab 情况下卸除。
7.2.2 实例
7.2.2.1 卸载
[root@www ~]# umount /dev/hdc6
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/79958.html
暂无评论内容