首页 > 系统相关 >Linux 常用的磁盘命令

Linux 常用的磁盘命令

时间:2023-08-05 17:44:29浏览次数:55  
标签:常用 分区 文件系统 dev 指定 命令 Linux 磁盘

【Linux】与磁盘相关的常用命令(自用)

感谢地心引力

已于 2023-07-01 15:33:50 修改

4415
收藏
分类专栏: Ubuntu Linux 文章标签: linux 运维 服务器
版权

Ubuntu Linux
专栏收录该内容
38 篇文章0 订阅
订阅专栏
本文将详细介绍以下几个常用的命令:df、du、fdisk、mkfs、lsblk、mount、umount和parted。

一、概述
二、详细说明
df 命令
du 命令
fdisk 命令
mkfs 命令
mount 命令
umount 命令
parted 命令
lsblk 命令
一、概述
常用的磁盘相关命令:

df:用于显示文件系统的磁盘空间使用情况。

df:显示所有挂载的文件系统的磁盘使用情况。
df -h:以人类可读的格式显示磁盘使用情况,以便更易于理解。
df -i:显示inode的使用情况,而不是磁盘空间。
du:用于估算文件或目录的磁盘空间使用量。

du:显示当前目录下每个子目录和文件的磁盘空间使用量。
du -h:以人类可读的格式显示磁盘空间使用量。
du -s:仅显示总计磁盘空间使用量,而不显示每个子目录和文件的详细信息。
fdisk:用于磁盘分区管理。

fdisk -l:列出所有磁盘的分区表信息。
fdisk /dev/sdX:打开指定磁盘(例如:/dev/sda)的分区表进行编辑。
mkfs:用于创建文件系统。

mkfs.ext4 /dev/sdX#:创建ext4文件系统在指定磁盘分区(例如:/dev/sda1)上。
mkfs.ntfs /dev/sdX#:创建NTFS文件系统在指定磁盘分区上。
mount:用于挂载文件系统到指定的挂载点。

mount /dev/sdX# /mnt:将指定的磁盘分区(例如:/dev/sda1)挂载到/mnt目录。
umount:用于卸载挂载的文件系统。

umount /mnt:卸载/mnt目录下的文件系统。
lsblk:用于列出块设备的信息,包括磁盘和分区。

lsblk:显示所有块设备的信息,包括磁盘和分区。
parted:用于磁盘分区管理和操作。

parted /dev/sdX:打开指定磁盘(例如:/dev/sda)进行分区操作。
二、详细说明
df 命令
df(disk free)命令用来显示磁盘的使用情况,包括磁盘的总容量、已用空间、可用空间和使用百分比。它可以帮助我们监控磁盘的空间是否充足,以及哪些分区或文件系统占用了较多的空间。

df命令的基本语法是:

df [选项] [文件名]
1
其中,选项可以用来指定输出的格式或单位,例如:

-h 或 --human-readable:以人类可读的方式显示磁盘容量,如K、M、G等。
-T 或 --print-type:显示每个文件系统的类型,如ext4、xfs等。
-a 或 --all:显示所有文件系统,包括特殊的文件系统,如proc、sysfs等。
-i 或 --inodes:显示每个文件系统的inode信息,即文件数量和使用情况。
如果没有指定文件名,则df命令会显示所有已挂载的文件系统的信息。如果指定了文件名,则df命令会显示该文件所在的文件系统的信息。

例如,执行以下命令:

df -hT
1
输出可能类似于:

Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext4 20G 8.5G 11G 45% /
/dev/sda2 ext4 50G 12G 35G 25% /home
/dev/sdb1 xfs 100G 50G 50G 50% /data
tmpfs tmpfs 2.0G 0 2.0G 0% /dev/shm
1
2
3
4
5
这表示系统有四个文件系统,分别是/dev/sda1(根分区)、/dev/sda2(/home分区)、/dev/sdb1(/data分区)和tmpfs(内存文件系统)。它们的类型、大小、已用空间、可用空间和使用百分比都显示在相应的列中。

du 命令
du(disk usage)命令用来显示目录或文件占用的磁盘空间。它可以帮助我们找出哪些目录或文件占用了较多的空间,以便进行清理或优化。

du命令的基本语法是:

du [选项] [目录名或文件名]
1
其中,选项可以用来指定输出的格式或单位,例如:

-h 或 --human-readable:以人类可读的方式显示磁盘容量,如K、M、G等。
-s 或 --summarize:只显示总计,而不显示每个子目录或文件的大小。
-a 或 --all:显示所有文件和目录的大小,而不只是目录。
-c 或 --total:在最后一行显示所有参数的总计。
如果没有指定目录名或文件名,则du命令会显示当前目录及其子目录的大小。如果指定了目录名或文件名,则du命令会显示该目录或文件及其子目录或子文件的大小。

例如,执行以下命令:

du -sh /home/*
1
输出可能类似于:

1.2G /home/alex
2.3G /home/bob
3.4G /home/cathy
1
2
3
这表示/home目录下有三个用户目录,分别是/home/alex、/home/bob和/home/cathy。它们的大小分别是1.2G、2.3G和3.4G。

fdisk 命令
fdisk(fixed disk)命令用来对磁盘进行分区,即将磁盘划分为若干个逻辑区域,以便在不同的区域安装不同的操作系统或存储不同的数据。它可以帮助我们管理磁盘的结构和布局,以及修改分区的类型、大小和标志。

fdisk命令的基本语法是:

fdisk [选项] [设备名]
1
其中,选项可以用来指定操作模式或输出格式,例如:

-l 或 --list:列出所有磁盘或指定磁盘的分区信息,而不进入交互模式。
-s 或 --get-size:显示指定分区的大小,以扇区为单位。
-u 或 --units:指定输出的单位,可以是cylinders(柱面)、sectors(扇区)或bytes(字节)。
如果没有指定选项,则fdisk命令会进入交互模式,让用户输入各种命令来操作分区。常用的命令有:

p:显示当前磁盘的分区信息。
n:创建一个新的分区。
d:删除一个已有的分区。
t:修改一个分区的类型。
a:设置一个分区为可引导的。
w:保存修改并退出。
q:放弃修改并退出。
如果指定了设备名,则fdisk命令会对该设备进行操作。设备名通常是/dev/sdX的形式,其中X是一个字母,表示磁盘的编号。例如,/dev/sda表示第一块磁盘,/dev/sdb表示第二块磁盘,依此类推。

例如,执行以下命令:

fdisk -l /dev/sda
1
输出可能类似于:

Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders, total 156301488 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 identifier: 0x000e6b8a

Device Boot Start End Blocks Id System
/dev/sda1 * 2048 40962047 20480000 83 Linux
/dev/sda2 40962048 156301311 57669632 8e Linux LVM
1
2
3
4
5
6
7
8
9
10
这表示/dev/sda这块磁盘有80GB的容量,共有两个分区。第一个分区是/dev/sda1,大小为20GB,类型为Linux(83),并且是可引导的(*)。第二个分区是/dev/sda2,大小为57.7GB,类型为Linux LVM(8e),用于逻辑卷管理。

mkfs 命令
mkfs(make file system)命令用来在一个分区上创建一个文件系统,即将分区格式化为一种特定的数据结构,以便存储和管理文件。它可以帮助我们为不同的分区选择合适的文件系统类型,以提高磁盘的性能和稳定性。

mkfs命令的基本语法是:

mkfs [选项] [设备名]
1
其中,选项可以用来指定文件系统的类型或参数,例如:

-t 或 --type:指定文件系统的类型,如ext4、xfs、vfat等。
-V 或 --verbose:显示详细的信息,包括文件系统的参数和进度。
-L 或 --label:指定文件系统的标签,即给分区起一个别名,方便识别和挂载。
如果没有指定选项,则mkfs命令会根据设备名的后缀来判断文件系统的类型。例如,mkfs.ext4表示创建ext4类型的文件系统,mkfs.vfat表示创建vfat类型的文件系统,依此类推。

如果指定了设备名,则mkfs命令会对该设备进行格式化。设备名通常是/dev/sdXN的形式,其中X是一个字母,表示磁盘的编号,N是一个数字,表示分区的编号。例如,/dev/sda1表示第一块磁盘的第一个分区,/dev/sdb2表示第二块磁盘的第二个分区,依此类推。

例如,执行以下命令:

mkfs -t ext4 -L data /dev/sdb1
1
输出可能类似于:

mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=data
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
6553600 inodes, 26214400 blocks
1310720 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
800 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
这表示将/dev/sdb1这个分区格式化为ext4类型的文件系统,并且给它起了一个标签为data。输出中还显示了文件系统的各种参数和进度。

好的,我会尝试写一篇文章,详细介绍:mount、umount、parted命令。请看:

mount 命令
mount命令用来将一个文件系统挂载到一个指定的目录上,使得该文件系统可以被访问。mount命令的基本语法是:

mount [-t 文件系统类型] [-o 选项] 设备文件名 挂载点
1
其中,-t选项可以指定文件系统的类型,如ext4、ntfs、vfat等;-o选项可以指定一些挂载选项,如ro(只读)、rw(读写)、noexec(禁止执行)等;设备文件名是要挂载的磁盘分区或者光盘等的设备文件,如/dev/sda1、/dev/cdrom等;挂载点是一个已存在的空目录,用来作为文件系统的访问入口。

例如,如果要将/dev/sda1分区挂载到/mnt目录上,并且指定文件系统类型为ext4,可以使用以下命令:

mount -t ext4 /dev/sda1 /mnt
1
如果要查看当前系统中已经挂载的文件系统,可以使用以下命令:

mount
1
或者

cat /proc/mounts
1
umount 命令
umount命令用来卸载一个已经挂载的文件系统,使得该文件系统不再被访问。umount命令的基本语法是:

umount [-f] [-l] 设备文件名或者挂载点
1
其中,-f选项可以强制卸载一个文件系统,即使该文件系统正在被使用;-l选项可以延迟卸载一个文件系统,即使该文件系统正在被使用,直到该文件系统不再被使用为止;设备文件名或者挂载点是要卸载的文件系统对应的设备文件或者挂载点。

例如,如果要卸载/mnt目录上的文件系统,可以使用以下命令:

umount /mnt
1
或者

umount /dev/sda1
1
parted 命令
parted命令用来对磁盘进行分区和格式化操作。parted命令的基本语法是:

parted [选项] [设备] [命令]
1
其中,选项可以是-s(脚本模式)、-a(对齐方式)等;设备是要操作的磁盘设备,如/dev/sda、/dev/sdb等;命令是要执行的分区或格式化操作,如mklabel(创建分区表)、mkpart(创建分区)、print(显示分区信息)、rm(删除分区)、mkfs(格式化分区)等。

例如,如果要对/dev/sda磁盘进行分区操作,并且创建两个主分区和一个扩展分区,可以使用以下命令:

parted -s /dev/sda mklabel msdos # 创建msdos分区表
parted -s /dev/sda mkpart primary ext4 1M 100M # 创建第一个主分区,大小为100M,格式为ext4
parted -s /dev/sda mkpart primary ext4 100M 200M # 创建第二个主分区,大小为100M,格式为ext4
parted -s /dev/sda mkpart extended 200M 100% # 创建扩展分区,大小为剩余空间
1
2
3
4
如果要查看/dev/sda磁盘的分区信息,可以使用以下命令:

parted -s /dev/sda print
1
lsblk 命令
lsblk是一个用于列出所有可用块设备的信息,以及他们之间的依赖关系的命令。块设备是指代表磁盘、分区、光盘等设备的特殊文件。lsblk命令通过查询/sys虚拟文件系统和udev数据库来获取信息。如果udev数据库不可用或者lsblk没有编译udev支持,那么它会尝试从块设备中读取标签、UUID和文件系统类型。lsblk命令的基本语法是:

lsblk [选项] [设备...]
1
其中,选项可以指定输出格式、过滤条件、显示列等;设备可以指定要显示的块设备,如/dev/sda、/dev/sdb等。如果不指定设备,则默认显示所有块设备(除了RAM盘)。

lsblk命令的输出是一个树状结构,显示了每个块设备的名称、大小、类型、安装点等信息。例如,以下命令显示了我的系统中的所有块设备:

lsblk
1
输出结果如下:

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 931.5G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 732M 0 part /boot
└─sda3 8:3 0 930.3G 0 part
├─vgubuntu-root
253:0 0 200G 0 lvm /
└─vgubuntu-swap_1
253:1 0 4G 0 lvm
sr0 11:0 1 1.4G 0 rom
1
2
3
4
5
6
7
8
9
10
从上面的输出可以看出,我的系统有一个磁盘(sda),一个光驱(sr0),以及一个逻辑卷管理器(lvm)。磁盘sda有三个分区(sda1, sda2, sda3),其中sda3被划分为两个逻辑卷(vgubuntu-root, vgubuntu-swap_1)。每个分区或逻辑卷都有自己的主设备号(MAJ)、次设备号(MIN)、是否可移动(RM)、大小(SIZE)、是否只读(RO)、类型(TYPE)和安装点(MOUNTPOINT)。
————————————————
版权声明:本文为CSDN博主「感谢地心引力」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43764974/article/details/131485170

标签:常用,分区,文件系统,dev,指定,命令,Linux,磁盘
From: https://www.cnblogs.com/zxdplay/p/17608309.html

相关文章

  • linux select函数详解
    转载:linuxselect函数详解-AlanTu-博客园(cnblogs.com)在Linux中,我们可以使用select函数实现I/O端口的复用,传递给 select函数的参数会告诉内核:     •我们所关心的文件描述符     •对每个描述符,我们所关心的状态。(我们是要想从一个文件描述符中读或者写,还......
  • Linux系统下将java程序开机自启
    Linux系统下将java程序开机自启在Linux环境下,可以通过将Java程序配置为系统服务(systemd服务)来实现开机自启动。使用systemd可以很方便地管理和控制后台服务,包括Java程序。以下是一个简单的步骤来配置Java程序为systemd服务:1.编写启动脚本创建一个脚本文件,用于启动您的Java程序......
  • linux---设置允许流量转发
    linux---设置允许流量转发临时生效:#方法1(必须使用root账户)echo1>/proc/sys/net/ipv4/ip_forward#方法1变种(有sudo权限即可)echo1|sudotee/proc/sys/net/ipv4/ip_forward#方法2sudosysctl-wnet.ipv4.ip_forward=1方法1和方法2效果一样永久生效:修改/et......
  • 前端常用页面适配
    1、媒体查询(media)通过在CSS文件中使用@media规则来定义媒体查询。@mediascreenand(max-width:768px){/*在宽度小于等于768px时应用的CSS样式*/}@mediascreenand(min-width:768px)and(max-width:992px){/*在宽度大于768px且小于等于992px时应用的CSS......
  • linux磁盘管理
    1、fdisk-l      查看所有磁盘信息n      创建新分区d       删除分区p       列出分区表w       保存分区表并退出e        扩展分区2、partprobe    刷新分区表3、df-T     ......
  • 随笔(二十六)『SpringBoot + Vue 简单部署到Linux』
    1、安装docker1.1、卸载系统之前的dockersudoyumremovedocker\docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\......
  • JS数组有哪些常用原生方法?哪些能改变数组本身?
    1.数组和字符串的转换方法toString不改变原数组constarr=[1,2,3]console.log(arr.toString());//1,2,3join不改变原数组join(str)数组转字符串,接收一个参数,默认为逗号分隔符。constarr=[1,2,3]console.log(arr)//[1,2,3]console.log(ar......
  • linux怎么查看文件夹多大
    方法:1、利用ls命令查看,该命令可将结果以KB、MB等为单位进行显示,语法为“ls-ll”或“ls-lh”;2、利用“du-h–max-depth=1*”命令,该命令可查看当前目录下的各个文件和文件夹的大小;3、利用“du-sh”命令,可查看当前文件夹的总大小;4、利用“du-h–max-depth=0*”命令,可查看直接......
  • Linux git mirror站点
    由于kernel的官网站点和Github镜像下载都很慢,于是想到找一下国内镜像站点。kernel.org有个GitmirroravailableinBeijing,地址为https://kernel.source.codeaurora.cn/,但是已经失效,具体说明看这里。kernel.org上还有个知道如何建立kerelmirror的指导页面,但是没有提供......
  • Abaqus 中最常用的子程序有哪些 硕迪科技
    在ABAQUS中,用户定义的子程序是一种重要的构件,可以将其插入到Abaqus分析中以增强该软件的功能和灵活性。这些子程序允许用户在分析过程中添加自定义材料模型、边界条件、初始化、加载等特定操作,以便更精准地模拟分析中的现象和现象。ABAQUS支持各种不同类型和用途的子程序,下面列举了......