本篇内容介绍了“Linux常用硬盘管理相关命令有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
df
命令用于统计分区的占用状况。
[root@localhost ~]# df -ahT
选项:
-a
:显示特殊文件系统,这些文件系统几乎都是保存在内存中的。如proc
,因为是挂载在内存中,所以占用量都是0。
-h
:换算成人类习惯看的单位(人性化显示)。
-T
:多出了一列文件系统类型。
示例如下:
[root@localhost ~]# df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/sda3 ext4 19G 2.2G 16G 13% / tmpfs tmpfs 495M 0 495M 0% /dev/shm /dev/sdal ext4 190M 33M 147M 19% /boot
结果说明:
Filesystem
:设备文件名。
Type
:文件系统类型。
Size
:分区总大小。
Used
:占用大小。
Avail
:空闲多少。
Use%
:利用率。
Mounted on
:挂载点。
du
命令用于统计目录或文件大小的命令。
[root@localhost ~]# du [选项] [目录或文件名]
选项:
-a
:显示每个子文件的磁盘占用量。默认只统计子目录的磁盘占用量。
-h
:使用习惯单位显示磁盘占用量,如KB,MB或GB等(人性化显示)。
-s
:统计总占用量,而不列出子目录和子文件的占用量。
(1)ls
或者ll
命令统计目录的大小是不准确的,为什么?
我们通过ls
或者ll
命令查看文件大小,目录一般是0K
或者4k
或者是4K
的倍数。
如下图:boot
目录和dev
目录除外。
我把一个6.2M
大小的压缩包解压后,所的到的文件夹,显示也是4K
。
如下图所示:
解压后得到的文件,反而比压缩文件小很多,这明显就是不正确的数据。
这明显就是不合理的情况。
说明ls
或者ll
命令统计文件大小有问题,统计目录大小的数据是不准确的。
出现这种问题的原因,还要从分区说起。
目录有自己的block
块,该block
块中存放着文件名和对应的i
节点号,和目录中文件的文件名和i
节点号的数据,目录的block
块中是不会统计目录中的文件大小是多少。
记录目录的文件名和对应的i
节点号,和目录中文件的文件名和i
节点号的这些数据,如果一个block
块能装下,就是4K
,如果装不下,就分多个block
块来存储,这样就是4K
的倍数。
所以执行[root@localhost ~]# du -h httpd-2.2.9
命令,就可以看到httpd-2.2.9
目录中每个文件的大小,最后会显示httpd-2.2.9
目录的大小。
如果只需要看文件的总大小,添加选项s
即可。
[root@localhost ~]# du -hs httpd-2.2.9
解释:
为什么boot
目录是1K大小,因为之前说过block
块的大小为1K、2K、4K(默认),但是boot
是一个单独的分区,默认就是1KB。
dev
目录是特殊硬件目录,里边保存的都是硬盘等设备信息,比较特殊,所以除外。
(2)du
命令与df
命令的区别
du
命令是用于统计文件大小的,统计的文件大小是准确的。
df
命令是用于统计空间大小的(文件和临时文件都会算,重启会释放),统计分区的使用率是准确的(更明确的说法是分区剩余空间是准确的)。
再有如果你在工作中不能重启服务器,想释放临时文件占用的空间,也是可以手动释放的。
sof I grep deleted
:是查询文件隐藏状态的命令,找出要删除的文件,然后一个进程一个进程的手工kill
也是可以的。
这样做法极其难操作,出现错误的几率很高,不推荐手动释放。
Linux服务器在计划之内的重启所造成的损失,远比服务器意外宕机或重启所造成的损失要小的多。
这个命令是Linux系统中自带的一个文件系统修复的命令。
这个命令有点类似于Windows系统没有正常关机(突然断电了),下次开机的时候会提示是否扫描修复文件。
自动修复命令:
[root@localhost ~]# fsck -y /dev/sdb1
这条命令在Linux系统开机的时候,会自动执行。如果文件能通过fsck
命令进行修复,开机自动执行也就修复了,如果Linux系统启动之后文件还报错,手工在执行一边fsck
命令,也是没有用的,修复不好。
显示磁盘状态使用dumpe2fs
命令,执行dumpe2fs + 分区号
进行查看。
如何查询分区号,通过df -h
命令进行查询,很方便。
下面是执行命令的结果:
上面的信息很多,如果你只想看超级块的信息(也就是最上面的一部分信息),只需要加上-h
选项即可。
如下:
[root@localhost ~]# dumpe2fs -h /dev/sda3
stat 文件名
:查看文件的详细时间。
执行命令结果如下:
这些信息能看懂就行。了解即可。
file 文件名
:判断文件类型
type 命令名
:判断命令类型
判断文件类型
如果我们判断一个文件,会显示该文件是一个ASCII码的英文文档。
[root@localhost ~]# file anaconda-ks. cfg anaconda-ks. cfg: ASCII English text
如果我们判断一个目录,会显示该文件是一个目录。
[root@localhost ~]# file 123/ 123/: directory
判断命令类型
Linux系统中的命令分为内部命令和外部命令
如果用type
命令判断命令类型,有命令的位置,说明是外部命令。
如下:
[root@localhost ~]# type mkdir mkdir is /bin/mkdir
如果用type
命令判断命令类型,显示shell builtin
(shell内置命令),说明是内部命令。
如下:
[root@localhost ~]# type cd cd is a shell builtin
如果命令有别名,用type
命令判断命令类型,显示的是命令的别名信息。
[root@localhost ~]# type ls ls is aliased to 'ls --color=auto'
提示:这两个命令一般都是在写脚本程序的时候使用,平时我们辨别文件还是文件夹都很方便的(用眼,哈哈)。
“Linux常用硬盘管理相关命令有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。