Linux文件系统常用命令
Linux文件系统常用命令
查看磁盘空间
df
df 以磁盘分区为单位查看文件系统,可以获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
例如,我们使用df -h命令来查看磁盘信息, -h 选项为根据大小适当显示。
显示内容参数说明:
Filesystem:文件系统
Size: 分区大小
Used: 已使用容量
Avail: 还可以使用的容量
Use%: 已用百分比
Mounted on: 挂载点
相关命令:
df -hl:查看磁盘剩余空间
df -h:查看每个根路径的分区大小
du -sh [目录名]:返回该目录的大小
du -sm [文件夹]:返回该文件夹总M数
du -h [目录名]:查看指定文件夹下的所有文件大小(包含子文件夹)
du
du 的英文原义为 disk usage,含义为显示磁盘空间的使用情况,用于查看当前目录的总大小。
例如查看当前目录的大小:
# du -sh
605M
显示指定文件所占空间:
# du log2012.log
300 log2012.log
方便阅读的格式显示test目录所占空间情况:
# du -h test
608K test/test6
308K test/test4
4.0K test/scf/lib
4.0K test/scf/service/deploy/product
4.0K test/scf/service/deploy/info
12K test/scf/service/deploy
16K test/scf/service
4.0K test/scf/doc
4.0K test/scf/bin
32K test/scf
8.0K test/test3
1.3M test
du 命令用于查看当前目录的总大小:
- -s:对每个Names参数只给出占用的数据块总数。
- -a:递归地显示指定目录中各文件及子目录中各文件占用的数据块数。若既不指定-s,也不指定-a,则只显示Names中的每一个目录及其中的各子目录所占的磁盘块数。
- -b:以字节为单位列出磁盘空间使用情况(系统默认以k字节为单位)。
- -k:以1024字节为单位列出磁盘空间使用情况。
- -c:最后再加上一个总计(系统默认设置)。
- -l:计算所有的文件大小,对硬链接文件,则计算多次。
- -x:跳过在不同文件系统上的目录不予统计。
- -h:以K,M,G为单位,提高信息的可读性。
注意:du命令在统计目录占用磁盘空间时,默认不统计链接文件(无论是硬链接或是符号链接),所以要用-l和-L选项特地指出来;此外,du命令默认不显示目录下文件占用磁盘空间的信息,但是却默认显示其下子目录所占用磁盘空间的信息。
du命令还可以对结果进行排序,以方便快速找出占用空间最多目录。
du -h --max-depth=1 /home # 仅列出home目录下面所有的一级目录文件大小;
du -h --max-depth=1 /home/* # 列出home下面所有一级目录的一级目录文件大小。
统计总数大小
du -sh xmldb/
du -sm * | sort -n # 统计当前目录大小 并安大小 排序
du -sk * | sort -n
du -sk * | grep guojf # 看一个人的大小
du -m | cut -d "/" -f 2 # 看第二个/ 字符前的文字
# 查看此文件夹有多少文件 /*/*/* 有多少文件
du xmldb/
du xmldb/*/*/* |wc -l
wc [-lmw]说明
# 参数说明:-l :多少行; -m:多少字符; -w:多少字
通过fdisk命令检查
fdisk是另一个非常方便的系统管理员实用程序。fdisk是一个用户交互式程序,主要用于创建和操作分区表,例如创建,删除,修改分区。但是,也可以使用此实用程序列出连接到Linux系统的可用磁盘以及相应的磁盘大小。
sudo fdisk -l
# 运行实例
Disk /dev/ram0: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/ram1: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/ram2: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/ram3: 4 MiB, 4194304 bytes, 8192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
磁盘格式化
文件系统的格式化命令非常的简单,使用 mkfs(make filesystem) 命令
mkfs [-t 文件系统格式] 装置文件名
选项与参数:
-t :可以接文件系统格式,例如 ext3, ext2, vfat 等(系统有支持才会生效)
查看 mkfs 支持的文件格式
[root@www ~]# mkfs[tab][tab]
mkfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.msdos mkfs.vfat
按下两个[tab],会发现 mkfs 支持的文件格式如上所示。
将分区 /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
查看文件系统挂载点
1.查看已经挂载的文件系统
在Linux系统中,通过使用Mount命令来查看已经挂载的文件系统。在终端窗口中输入以下命令:
sudo mount
# 结果示例
/dev/mmcblk0p2 on / type ext4 (rw,noatime)
devtmpfs on /dev type devtmpfs (rw,relatime,size=332564k,nr_inodes=83141,mode=755)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,size=186288k,nr_inodes=819200,mode=755)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
cgroup2 on /sys/fs/cgroup type cgroup2 (rw,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
bpf on /sys/fs/bpf type bpf (rw,nosuid,nodev,noexec,relatime,mode=700)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=29,pgrp=1,timeout=0,minproto=5,maxproto=5,direct)
mqueue on /dev/mqueue type mqueue (rw,nosuid,nodev,noexec,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime)
tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime)
sunrpc on /run/rpc_pipefs type rpc_pipefs (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,nosuid,nodev,noexec,relatime)
configfs on /sys/kernel/config type configfs (rw,nosuid,nodev,noexec,relatime)
/dev/mmcblk0p1 on /boot type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=ascii,shortname=mixed,errors=remount-ro)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=93140k,nr_inodes=23285,mode=700,uid=1000,gid=1000)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)
挂载硬盘/U盘
在linux系统中连接移动硬盘/U盘
windows下使用接入U盘时会系统会自动为U盘指定一个盘符(如F盘),然后就可以直接操作了。但linux系统没有盘符的概念,所以需要手动将U盘挂载在某个目录下才能使用。
什么是挂载?
linux系统将所有的外部设备都视作为文件,所以将U盘插入后系统会将其识别为一个目录(虚拟的),然后需要手动把这个目录映射到真实的目录(挂载点)中去,这样才能通过这个真实目录去访问这个设备,这个步骤叫就做挂载。
注意:外部设备必须挂载在根目录下的/mnt(子)文件夹中,为了方便区分,实际操作一般会在mnt中创建不同的子文件夹代表去挂载不同的设备,这里创建的是/mnt/mydev。
具体步骤
插入U盘,执行如下指令后能看到设备则说明连接成功
sudo fdisk -l #查看外接设备名称,一般为/dev/sd...,这里假设为/dev/sdc1
在/mnt下创建挂载点,进行挂载
sudo mkdir /mnt/mydev #创建挂载点
sudo mount /dev/sdc1 /mnt/mydev #将/dev/sdc1挂载到mnt中的挂载点去
sudo df -h #查看是否挂载成功
此时挂载文件夹/mnt/mydev里面就是你U盘的内容了,可以随意访问
取消挂载,这一步相当于windows下的弹出U盘
sudo umount /mnt/mydev #取消挂载,拔出硬盘
sudo rmdir –p /mnt/mydev #删除挂载目录(选做)
注意:一定要确保这个步骤执行!否则硬盘数据可能会损坏。

浙公网安备 33010602011771号