Linux磁盘系统——管理磁盘的命令
Linux磁盘系统——管理磁盘的命令
摘要:本文主要学习了Linux系统中管理磁盘的命令,包括查看磁盘使用情况、磁盘挂载相关、磁盘分区相关、磁盘格式化等操作。
df命令
df命令用于显示Linux系统中各文件系统的硬盘使用情况,包括文件系统所在硬盘分区的总容量、已使用的容量、剩余容量等。
/dev/shm为内存挂载点,如果你想把文件放到内存里,就可以放到/dev/shm/目录下。
基本语法
df [选项] 目录或文件
选项说明
-a:显示所有文件系统信息,包括系统特有的/proc、/sysfs等文件系统。
-k:以KB为单位显示容量,默认。
-m:以MB为单位显示容量。
-h:使用人们习惯的KB、MB或GB等单位自行显示容量。
-H:以M=1000K取代M=1024K的进位方式显示容量。
-T:显示该分区的文件系统名称(例如xfs)。
-i:不用硬盘容量显示,而是以含有inode的数量来显示。
使用举例
[root@localhost /]# df -hiT
文件系统 类型 Inode 已用(I) 可用(I) 已用(I)% 挂载点
/dev/mapper/centos-root xfs 17M 28K 17M % /
devtmpfs devtmpfs 120K 120K % /dev
tmpfs tmpfs 123K 123K % /dev/shm
tmpfs tmpfs 123K 122K % /run
tmpfs tmpfs 123K 123K % /sys/fs/cgroup
/dev/sda2 xfs 700K 700K % /boot
tmpfs tmpfs 123K 123K % /run/user/
[root@localhost /]#
du命令
du命令是统计目录或文件所占磁盘空间大小的命令。
基本语法
du [选项] 目录或文件
选项说明
-a:显示每个子文件的磁盘占用量。默认只统计子目录的磁盘占用量。
-h:使用习惯单位显示磁盘占用量,如KB、MB或GB等。
-s:统计总磁盘占用量,而不列出子目录和子文件的磁盘占用量。
使用举例
[root@localhost ~]# du -sh /
du: 无法访问"/proc/3628/task/3628/fd/4": 没有那个文件或目录
du: 无法访问"/proc/3628/task/3628/fdinfo/4": 没有那个文件或目录
du: 无法访问"/proc/3628/fd/4": 没有那个文件或目录
du: 无法访问"/proc/3628/fdinfo/4": 没有那个文件或目录
.1G /
[root@localhost ~]#
mount命令
mount挂载命令是用来将硬件设备的文件系统和Linux系统中的文件系统,通过指定目录(作为挂载点)进行关联。
基本语法
显示已挂载设备:
mount [选项]
挂载设备:
mount [选项] 设备文件名 挂载点
选项说明
-a:显示出系统中已挂载的设备信息。
-l:额外显示出卷标名称。
-t 系统类型:指定欲挂载的文件系统类型。Linux常见的支持类型有xfs、ext2、ext3、ext4、iso9660、fat、vfat等。如果不指定具体类型,挂载时Linux会自动检测。
-L 卷标名:除了使用设备文件名之外,还可以利用文件系统的卷标名称进行挂载。
-n:在默认情况下,系统会将实际挂载的情况实时写入/etc/mtab文件中,但在某些场景下(例如单人维护模式),为了避免出现问题,会刻意不写入,此时就需要使用这个选项。
-o 特殊选项:可以指定挂载的额外选项,比如读写权限、同步/异步等,如果不指定,则使用默认值(defaults)。具体的特殊选项:
rw/ro:是否对挂载的文件系统拥有读写权限,rw为默认值,表示拥有读写权限。ro表示只读权限。
async/sync:此文件系统是否使用同步写入(sync)或异步(async)的内存机制,默认为异步async。
dev/nodev:是否允许从该文件系统的block文件中提取数据,为了保证数据安装,默认是nodev。
auto/noauto:是否允许此文件系统被以mount -a的方式进行自动挂载,默认是auto。
suid/nosuid:设定文件系统是否拥有SetUID和SetGID权限,默认是拥有。
exec/noexec:设定在文件系统中是否允许执行可执行文件,默认是允许。
user/nouser:设定此文件系统是否允许让普通用户使用mount执行实现挂载,默认是不允许(nouser),仅有root可以。
defaults:定义默认值,相当于rw、suid、dev、exec、auto、nouser、async这7个选项。
remount:重新挂载已挂载的文件系统,一般用于指定修改特殊权限。
umount命令
umount命令用于卸载已经挂载的硬件设备。
基本语法
umount 设备文件名或挂载点
lsblk命令
lsblk命令用来列出所有可用块设备的信息,但是,它不会列出RAM盘的信息。
基本语法
lsblk [选项] 设备名称
选项说明
-d:仅列出磁盘本身,并不会列出该磁盘的分区信息。
-f:同时列出该磁盘内的文件系统名称。
-i:使用ASCII的字符输出,不要使用使用复杂的编码(在某些环境下有用)。
-m:同时输出该设备在/dev下面的权限信息(rwx的数据)。
-p:列出该设备的完整文件名(因为不加这个选项,显示的是最后的名字)。
-t:列出该磁盘设备的详细数据,包括磁盘列阵机制、预读写的数据量大小等。
使用举例
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda : 20G disk
├─sda1 : 2M part
├─sda2 : 700M part /boot
└─sda3 : 19G part
├─centos-root : 17G lvm /
└─centos-swap : 2G lvm [SWAP]
sr0 : 4G rom
[root@localhost ~]#
结果说明
NAME:这是块设备名。
MAJ:MIN:显示主要和次要设备号。
RM:显示设备是否可移动设备。RM值为0说明是不可移动设备,RM值等于1说明是可移动设备。
SIZE:列出设备的容量大小信息。
RO:该项表明设备是否为只读。RO值为0说明不是只读,RO值为1说明是只读。
TYPE:显示块设备是否是磁盘或磁盘上的一个分区。在本例中,sda和sdb是磁盘,而sr0是只读存储(rom)。
MOUNTPOINT:指出设备挂载的挂载点。
blkid命令
blkid命令可以列出文件系统名称与设备的UUID等数据。
UUID是全局唯一标识符(universally unique identifier)。Linux会将系统内所有的设备给予一个独一无二的标识符,可以拿来作为挂载或是使用这个设备或文件系统。
基本语法
blkid 设备文件名
使用举例
[root@localhost ~]# blkid
/dev/sr0: UUID="2015-12-09-23-14-10-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/sda2: UUID="8ea9a0fe-8856-4c0e-9d8e-4d676aefb33e" TYPE="xfs"
/dev/sda3: UUID="yasEyq-jfRF-pMZp-eoeK-fkXu-ouuS-Y46Op2" TYPE="LVM2_member"
/dev/mapper/centos-root: UUID="eee2ef01-d9fd-4357-9c82-4578ad4d4060" TYPE="xfs"
/dev/mapper/centos-swap: UUID="aa4242d0-542f-4512-b475-a91b1bc6c354" TYPE="swap"
[root@localhost ~]#
parted命令
parted命令可用于查看磁盘的分区状态,还可以用于磁盘的分区/删除,以及磁盘分区表的类型转换(可以实现,但是不建议做,十分危险)。
基本语法
parted 设备文件名 [选项]
选项说明
print:打印磁盘分区信息。
mkpart [primary|logical|extended] [ext4|vfat|xfs] 分区开始内存处 分区结束内存处:新增分区。
rm 分区号码:删除分区。
mklabel 分区表格式:磁盘分区表的类型转换,常用的有msdos和gpt分区表格式,msdos不支持2TB以上容量的磁盘,所以大于2TB的磁盘选gpt分区表格式。
使用举例
[root@localhost ~]# parted /dev/sda print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: .5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: Number Start End Size Type File system 标志
1049kB 3146kB 2097kB primary
3146kB 737MB 734MB primary xfs 启动
737MB .1GB .4GB primary lvm [root@localhost ~]#
结果说明
Model:磁盘的模板名称(厂商)。
Disk:磁盘的总容量。
Sector size:磁盘的每个逻辑/物理扇区的大小。
Partition Table:分区表的格式(MBR/GPT)。
最后一排:分区的数据。
partprobe命令
partprobe命令可以使kernel重新读取分区表。
基本语法
partprobe [选项]
选项说明
-s:显示摘要和分区信息。
fdisk命令
fdisk命令用于MBR分区表格式磁盘的分区或查询。
基本语法
fdisk 设备文件名
gdisk命令
gdisk命令用于GPT分区表格式磁盘的分区或查询。
基本语法
gdisk 设备文件名
mkfs命令
mkfs命令可以对硬盘分区进行格式化。
基本语法
mkfs [选项] 分区设备文件名
选项说明
-t 文件系统格式:用于指定格式化的文件系统,如ext3、ext4、xfs等。
mke2fs命令
mke2fs命令可以在为硬盘分区写入文件系统时,手动调整分区的默认参数。
基本语法
mke2fs [选项] 分区设备文件名
选项说明
-t 文件系统:指定格式化成哪个文件系统。
-b 字节:指定block的大小。
-i 字节:指定字节inode的比例,也就是多少字节分配一个inode。
-L 卷标名:给文件系统设置卷标名。
-j:建立带有ext3日志功能的文件系统。
Linux磁盘系统——管理磁盘的命令的更多相关文章
- Linux中系统检测工具top命令
Linux中系统检测工具top命令 本文转自:https://www.cnblogs.com/zhoug2020/p/6336453.html 首先介绍top中一些字段的含义: VIRT:virtua ...
- Linux查看系统版本号及关机命令各种方法归纳
shutdown -h now 立即关机halt 立即关机init 0 立即关机poweroff 立即关机shutdown -r now 重启reboot 重启logout 注销su - 命令切换身份 ...
- 在Linux/Unix系统下用iconv命令处理文本文件中文乱码问题
iconv命令是运行于linux/unix平台的文件编码装换工具.当我们在linux/unix系统shell查看文本文件时,常常会发现文件的中文是乱码的,这是由于文本文件的编码与当前操作系统设置的编码 ...
- Linux(centos)系统导出数据库文件命令
mysqldump -uroot -p test > /test.sql -uroot 其中的root是数据库的用户名 test是要导出的数据库名字 test.sql 是要导出的数据库文件名字, ...
- [Linux] killall 、kill 、pkill 命令详解
killall 命令 Linux系统中的killall命令用于杀死指定名字的进程(kill processes by name).我们可以使用kill命令杀死指定进程PID的进程,如果要找到我们需要杀 ...
- Linux系统的磁盘管理
Linux系统的磁盘管理有三个命令:df.du.fdisk. df:列出Linux中所有文件系统的整体磁盘使用量: du:对文件和目录所占用磁盘空间的查看: fdisk:用于磁盘分区时列出所有的磁盘. ...
- Linux fdisk命令参数及用法详解---Linux磁盘分区管理命令fdisk
fdisk 命令 linux磁盘分区管理 用途:观察硬盘之实体使用情形与分割硬盘用. 使用方法: 一.在 console 上输入 fdisk -l /dev/sda ,观察硬盘之实体使用情形. 二.在 ...
- Linux系统查看磁盘可用空间的5个命令
大家好,我是良许. 工作中,经常会遇到磁盘爆满的情况,尤其是一台服务器运行了 N 年之后,里面会充满各种各样垃圾文件,比如:编译产生的中间文件.打包的镜像文件.日志文件,等等. 别问我怎么知道,我上家 ...
- Linux下监控磁盘空间的四个命令
无论是运行简单的Linux桌面还是大型Linux服务器,都需要了解可供应用程序使用的空间,并跟踪系统的磁盘使用情况.下面介绍四个核心命令行命令来管理Linux系统上的介质环境. 一.mount命令 m ...
随机推荐
- Java基础—面向对象的三大特性
面向对象有三大特性分别是继承.封装和多态. (1)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法.对象的一个新类可以从现有的类中派生,这个过程称为类继承.新类 ...
- 01初识 JavaScript
1.初识 JavaScript 1.1 JavaScript 是什么 l JavaScript 是世界上最流行的语言之一,是一种运行在客户端的脚本语言 (Script 是脚本的意思) l 脚本语言 ...
- 【Android】Context的使用
Android开发经常需要使用Context来启动Activity,或者打开SharedPreferences,或者构建一个Dialog.最近老是用到getContext(),getApplicati ...
- Vue实战狗尾草博客管理平台第五章
本章主要内容如下: 静态资源服务器的配置.学会如何使用静态资源服务器引入静态资源.并给大家推荐一个免费可使用的oss服务器~ 页面的开发由于近期做出的更改较大.就放在下一篇中. 静态资源服务器 静态资 ...
- laravel Error 笔记
一.有关CSRF验证 1.网址访问POST请求,如 127.0.0.1:81/delUser?id=1 网页请求是默认是GET请求方式,看返回的数据信息就知道,数据是以GET方式发送的,所以若路由中 ...
- python基础 while 字符串方法 运算符
一.while 1.while 死循环 f=True while f: print(1) print(2) 2.while 活循环 ①.正序 count = 1 while count <= 5 ...
- Python面试题分享——图迹信息科技
本帖最后由 逆风TO 于 2019-5-23 14:25 编辑 公司名称:西安图迹信息科技有限公司 公司地址:锦业路69号创业研发园瞪羚谷A座9层 主营概况:2013年成立,大数据应用工程中心,为五大 ...
- linux下C/C++编译时系统搜索 include 和 链接库 文件路径的指定
C/C++程序在linux下被编译和连接时,GCC/G++会查找系统默认的include和link的路径,以及自己在编译命令中指定的路径.自己指定的路径就不说了,这里说明一下系统自动搜索的路径. ...
- linux虚拟机安装python 及 配置环境变量
一.安装anaconda 下载anaconda安装包 (wget -P filepath 下载链接) linux下安装anaconda教程,并添加清华镜像 sh Anaconda3-5.3.1-Lin ...
- RabbitMQ的消息传输保障三个层级
这里只简单介绍一下三个层级,笔记摘录自<RabbitMQ实战指南>朱忠华作者 消息可靠传输一般是业务系统接入消息中间件时候首要考虑的问题,一般消息中间件的消息传输保障分为三个层级 1 A ...