GNU coreutils 在线帮助:<https://www.gnu.org/software/coreutils/>
请向 <http://translationproject.org/team/zh_CN.html> 报告任何翻译错误
完整文档 <https://www.gnu.org/software/coreutils/du>
free 查看当前系统内存的使用情况
选项:
-b, --bytes 以字节显示输出
--kilo 使用千字节显示输出
--mega 使用兆字节显示输出
--giga 使用吉字节显示输出
--tera 使用太字节显示输出
--peta show output in petabytes
-k, --kibi show output in kibibytes
-m, --mebi show output in mebibytes
-g, --gibi show output in gibibytes
--tebi show output in tebibytes
--pebi show output in pebibytes
-h, --human 显示人类可读的输出
--si 使用 1000 的倍数而非使用 1024
-l, --lohi show detailed low and high memory statistics
-t, --total show total for RAM + swap
-s N, --seconds N repeat printing every N seconds
-c N, --count N repeat printing N times, then exit
-w, --wide 宽版输出--help 显示此帮助信息并退出
-V, --version 显示程序版本然后离开
total used free shared buff/cache available
内存: 3982112 1332856 1779248 32140 870008 2375200
交换: 2191356 0 2191356
total:物理内存大小,就是机器实际的内存
used:已使用的内存大小,这个值包括了 cached 和 应用程序实际使用的内存
free:未被使用的内存大小
shared:共享内存大小,是进程间通信的一种方式
buff/cache:应用程序实际使用的内存available 指系统中可用的内存量,表示系统当前可用于分配给新锦成使用的内存量。这个值并不完全等于free字段,原因是考虑了缓存和已经被分配但可以被回收的内存(计算方式:free + buffers + cached - low water mark(一个系统内部预留的缓冲区,为了应对高峰期的内存需求))
swap(交换):实现虚拟内存的重要概念,即相当于从硬盘上规划出来的一部分空间,当作备份内存。
swap out 把硬盘的上一部分当做内存使用,正在运行程序会使用物理内存,未有把正在使用的内存放在硬盘
swap in 把硬盘swap部分的内存重新放到物理内存中
swap可以在逻辑上扩大内存空间,但会造成系统变慢,原因是,硬盘的读写速度很慢;如果系统的负载太大,内存被用完,可能会出现严重的问题。
df 查看文件系统的磁盘空间占用情况
df
文件系统 1K的块 已用 可用 已用% 挂载点
tmpfs 398212 1952 396260 1% /run
/dev/sda3 19946096 10380480 8527076 55% /
tmpfs 1991056 0 1991056 0% /dev/shm
tmpfs 5120 4 5116 1% /run/lock
/dev/sda2 524252 6216 518036 2% /boot/efi
tmpfs 398208 2400 395808 1% /run/user/1000
/dev/sr0 3737140 3737140 0 100% /media/wangpan/Ubuntu 22.04.1 LTS amd64
df -h
文件系统 大小 已用 可用 已用% 挂载点
tmpfs 389M 2.0M 387M 1% /run
/dev/sda3 20G 9.9G 8.2G 55% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
/dev/sda2 512M 6.1M 506M 2% /boot/efi
tmpfs 389M 2.4M 387M 1% /run/user/1000
/dev/sr0 3.6G 3.6G 0 100% /media/wangpan/Ubuntu 22.04.1 LTS amd64df -l和df作用一样均不带单位
tmpfs是临时文件系统,基于内存的文件系统
其他的/dev下的都是块设备,磁盘上的文件系统
du 统计目录(或文件)所占用磁盘空间的大小
用法:du [选项]... [文件]...
或:du [选项]... --files0-from=F
计算每个文件的磁盘用量,目录则取总用量。长选项的必选参数对于短选项也是必选的。
-0, --null 每行输出使用 NUL 空字符结尾而非使用换行符
-a, --all 输出所有文件的磁盘用量,不仅仅是目录
--apparent-size 显示表面用量,而并非是磁盘用量;虽然表面用量通常会
小一些,但有时它会因为稀疏文件间的“洞”、内部碎
片、非直接引用的块等原因显得更大一些。
-B, --block-size=大小 打印大小前将其除以 <大小>;例如,"-BM" 将以
1,048,576 字节为单位显示大小。
参见下方的 <大小> 格式
-b, --bytes 等价于 "--apparent-size --block-size=1"
-c, --total 显示总计信息
-D, --dereference-args 仅解引用在命令行中列出的符号链接
-d, --max-depth=N 仅当目录(指定了 --all 时也包括文件)深度小于或等于
<文件> 之下 N 层时才打印目录总大小;
--max-depth=0 等价于 --summarize
--files0-from=F 统计由文件 F 给出的由 NUL 空字符结束的文件名列表
所对应各个文件的信息;如果 F 是 -,则从标准输入
读取文件名列表
-H 等效于 --dereference-args (-D)
-h, --human-readable 以人类可读的格式输出大小(例如,1K 234M 2G)
--inodes 列出 inode 使用信息而非块使用信息
-k 等于 --block-size=1K
-L, --dereference 解引用所有符号链接
-l, --count-links 如果是硬链接,则重复计算其大小
-m 等于 --block-size=1M
-P, --no-dereference 不跟随任何符号链接(默认行为)
-S, --separate-dirs 对于目录,不包括子目录的大小
--si 类似 -h,但使用 1000 的幂,而不是 1024
-s, --summarize 仅对每个命令行参数输出一个总使用量
-t, --threshold=大小 如果 <大小> 为正值,排除比该值更小的项,
如果 <大小> 为负值,排除比该值更大的项
--time 显示目录下的所有文件的修改时间中最晚的那个,
或者所有子目录的修改时间
--time=关键字 显示 <关键字> 对应的时间,而非修改时间:
atime、access、use、ctime 或 status
--time-style=风格 使用指定的 <风格> 显示时间,可能的取值有:
full-iso、long-iso、iso 或 +格式;
<格式> 的解释方式和 "date" 命令相同
-X, --exclude-from=文件 排除和 <文件> 提供的任一模式匹配的文件
--exclude=模式 排除和 <模式> 匹配的文件
-x, --one-file-system 跳过位于不同文件系统上的目录
--help 显示此帮助信息并退出
--version 显示版本信息并退出所显示的数值的单位是 --block-size 选项的参数、DU_BLOCK_SIZE、BLOCK_SIZE
和 BLOCKSIZE 环境变量的值中,第一个可用的 <大小>。
否则,默认单位是 1024 字节(如果 POSIXLY_CORRECT 被设定,则为 512 字节)。<大小> 参数是一个整数,后面可以跟一个单位(例如:10K 指 10*1024)。
可用的单位有 K、M、G、T、P、E、Z、Y(1024 的幂)以及 KB、MB、...(1000 的幂)。
也可以使用二进制前缀:KiB=K、MiB=M,以此类推。
du -l和du作用一样 均不带单位
fdisk 查看硬盘分区情况及对硬盘分区管理(使用须有root权限)
用法:
fdisk [options] <disk> change partition table
fdisk [options] -l [<disk>...] list partition table(s)显示或操作磁盘分区表。
选项:
-b, --sectors-size <大小> 显示扇区计数和大小
-B, --protect-boot 创建新标签时不要擦除 bootbits
-c, --compatibility[=<模式>] 模式,为“dos”或“nondos”(默认)
-L, --color[=<when>] colorize output (auto, always or never)
默认启用颜色
-l, --list 显示分区并退出
-x, --list-details like --list but with more details
-n, --noauto-pt don't create default partition table on empty devices
-o, --output <列表> 输出列
-t, --type <类型> 只识别指定的分区表类型
-u, --units[=<单位>] 显示单位,“cylinders”柱面或“sectors”扇区(默认)
-s, --getsz 以 512-字节扇区显示设备大小[已废弃]
-b, --bytes 以字节为单位而非易读的格式来打印 SIZE
--lock[=<mode>] use exclusive device lock (yes, no or nonblock)
-w, --wipe <mode> wipe signatures (auto, always or never)
-W, --wipe-partitions <mode> wipe signatures from new partitions (auto, always or never)-C, --cylinders <数字> 指定柱面数
-H, --heads <数字> 指定磁头数
-S, --sectors <数字> 指定每条磁道的扇区数-h, --help display this help
-V, --version display version
IDE 硬盘对应设备名称分别为:hda、hdb、hdc、hdd
SCSI硬盘对应的设备名称则为sda、sdb、...
hda1代表hda的第一个硬盘分区
hda2代表hda2的第二个分区
通过查看/var/log/messages文件可以找到Linux系统以辨别出来的设备代号
注:若系统没开syslog则/var/log/messages文件不存在,
开启syslog步骤1:执行 sudo vi /etc/rsyslog.d/50-default.conf
步骤2:在文件中添加一行信息
*.info;mail.none;authpriv.none;cron.none /var/log/messages
步骤3:重启 sudo reboot即可查看文件内容
EFI 分区:专门放各种操作系统的引导文件,无论 Windows/Linux/MacOS,需要 FAT32 文件系统,这个分区由主板的 UEFI 引导器读取。
在 Linux 下“EFI 分区”默认挂载路径为 /boot/efi ,和 “/boot 分区”没有关系,就一个路径