Linux系统命令指南
理员更重要的职责之一。du、df 和 fdisk 命令提供了可用磁盘空间的不同视图。 du 命令提供对每个目录的文件空间使用情况的评估。在默认情况下,测量的单位是块的数目,块的大小通常在安装您的系统时确定。 在以下的示例中,系统是使用 1024 字节的块安装的。如果没有指定目录,则 du 开始对当前目录进行计算。-h 选项以易于读懂的形式提供大小的值: $ du -h Documents 105k Documents/jj 573k Documents/John 682k Documents可以使用 -a 选项更改输出,该选项指示 du 显示文件和目录的块数。选项 block-size=SIZE 指示 du 以 SIZE 所指定字节大小的块的数目来显示输出。 $ du block-size=512 Documents 209 Documents/jj 1146 Documents/John 1363 Documents 在默认情况下,du 还为每个子目录递归地打印信息。通过使用 max-depth=N 选项可以限制这种操作,其中 N 等于被报告的最大级数: $ du max-depth=2 . $ du max-depth=2 | sort -n 4 ./.xemacs 4 ./public_html 105 ./Documents/jj 573 ./Documents/Ian 682 ./Documents 2420 ./jdevhome/system 8350 ./jdevhome/system9.0.3.1035 13483 ./jdevhome/mywork 24252 ./jdevhome ... du 报告目录和子目录的空间使用情况,而 df 报告已安装文件系统的磁盘空间使用情况: $ df Filesystem 1k-blocks Used Available Use% Mounted on /dev/hda6 4195632 1983656 2211976 48% / /dev/hda5 14607 3778 10075 28% /boot /dev/hda9 937372 494028 443344 53% /home /dev/hda8 6297248 3876880 2420368 62% /opt shmfs 256220 0 256220 0% /dev/shm 在这里,df 报告了五个文件系统的状态。与 du 类似,df 利用 -h 选项提供人类可读的输出: $ df -h Filesystem Size Used Avail Use% Mounted on /dev/hda6 4.0G 1.9G 2.1G 48% / /dev/hda5 14M 3.7M 9.8M 28% /boot /dev/hda9 915M 476M 440M 52% /home /dev/hda8 6.0G 3.7G 2.3G 62% /opt shmfs 250M 0 250M 0% /dev/shm df 命令还允许您利用 -block-size=SIZE 选项来指定块的大小。 fdisk 命令是 Linux 的分区表操作命令。与 du 和 df 不同,没有 root 用户权限时不能运行该命令。如果指定了 -l 选项,则可以将它仅用于报告的目的。它提供了您的整个分区表的完整视图,而不仅仅是您使用 df 所看到的扩展 Linux 分区: # fdisk -l Disk /dev/hda:240 heads, 63 sectors, 1940 cylinders Units = cylinders of 15120 * 512 bytes Device Boot Start End Blocks Id System /dev/hda1 1 286 2162128+ c Win95 FAT32 (LBA) /dev/hda2 * 288 1940 12496680 5 Extended /dev/hda5 288 289 15088+ 83 Linux /dev/hda6 290 844 4195768+ 83 Linux /dev/hda7 845 983 1050808+ 82 Linux swap /dev/hda8 984 1816 6297448+ 83 Linux /dev/hda9 1817 1940 937408+ 83 Linux 进程监视 在繁忙的多用户系统中,进程监视也是 Linux 系统管理员的一项重要职责。在这方面,ps 和 top 是两个最有用的命令。 ps 命令提供了当前运行进程的快照。 生动翔实的一课 以下是 ps 的最简单形式: $ ps PID TTY TIME CMD 3884 pts/1 00:00:00 bash 3955 pts/2 00:00:00 more 3956 pts/5 00:00:05 sqlplus PID 是进程的标识号。 TTY 是进程所属的终端控制台。 TIME 列是进程所使用的总的 CPU 时间。 CMD 列列出正在执行的命令行。 使用带有 -ef 选项的 ps,返回系统中所有用户的所有进程的完整列表。如果您将此 ps 命令的结果传送到 grep 中,则该结果更易于查看。例如: $ ps -ef | grep oracle UID PID PPID C STIME TTY TIME CMD oracle 1633 1 0 13:58 ?00:00:00 ora_pmon_ora1 oracle 1635 1 0 13:58 ?00:00:00 ora_dbw0_ora1 oracle 1637 1 0 13:58 ?00:00:01 ora_lgwr_ora1 oracle 1639 1 0 13:58 ?00:00:02 ora_ckpt_ora1 oracle 1641 1 0 13:58 ?00:00:02 ora_smon_ora1 oracle 1643 1 0 13:58 ?00:00:00 ora_reco_ora1 oracle 1645 1 0 13:58 ?00:00:00 ora_cjq0_ora1 oracle 1647 1 0 13:58 ?00:01:18 ora_qmn0_ora1 oracle 1649 1 0 13:58 ?00:00:00 ora_s000_ora1 oracle 1651 1 0 13:58 ?00:00:00 ora_d000_ora1 注意,当您将 ps 的输出传送到 grep 命令时,列标题并不象在 ps 命令本身所使用时那样正常地显示。为便于说明,标题位于输出的上方,以便清楚地显示其联系。 虽然 uid 通常是指数字型的标识,但在第一列下指定的是用户名,标记为 UID。 PPID 是父进程的标识号。对于 Oracle 进程,这里的标识号为 1 — 它是 init 进程(所有进程的父进程)的 id,因为在本系统中安
- Virtex-II系列应用指南(06-06)
- VHDL:中文版Verilog HDL简明教程:第2章 HDL指南(06-06)
- LTE达人的简明EPC自学指南——接口篇(12-13)
- ARM处理器选型指南:选ARM7还是选Cortex-M3(11-10)
- 基于ARM9平台的电子指南针的设计(10-08)
- AT91SAM7S/7X ADS下调试指南(09-22)