本节中的一些技巧是 Linux 系统特有的。大多数技巧通常适用于 UNIX 系统。
du 实用程序命令: 您可以使用 du 实用程序来估计文件空间使用情况。例如,要确定以下目录树的大小(以兆字节为单位):/var/log/和/home/目录树,请键入以下命令
[root@deep] /# du -sh /var/log /home
3.5M /var/log 350M /home请记住,以上命令将报告数据的实际大小。现在您知道例如/home正在使用 350M,您可以进入该目录并使用 du -sh * 来定位最大的文件所在位置。
[root@deep] /# cd /home/ [root@deep ]/home# du -sh *
343M admin 11k ftp 6.8M httpd 12k lost+found 6.0k named 6.0k smbclient 6.0k test 8.0k www
: 您可以将此命令添加到您的 crontab,以便每天收到包含所需磁盘空间列表的电子邮件,并且您无需 постоянно 登录即可监控它。
查找路由: 如果您想找出从您的机器发送到远程主机的数据包的路由,只需发出以下命令
[root@deep] /# traceroute www.redhat.com其中 <www.redhat.com> 是您要跟踪的主机名或 IP 地址。
traceroute to www.portal.redhat.com (206.132.41.202), 30 hops max, 38 byte packets 1 ppp005.108-253-207.mtl.mt.videotron.net (207.253.108.5) 98.584 ms 1519.806 ms 109.911 ms 2 fa5-1-0.rb02-piex.videotron.net (207.96.135.1) 149.888 ms 89.830 ms 109.914 ms 3 ia-tlpt-bb01-fec1.videotron.net (207.253.253.53) 149.896 ms 99.873 ms 139.930 ms 4 ia-cduc-bb02-ge2-0.videotron.net (207.253.253.61) 99.897 ms 169.863 ms 329.926 ms 5 if-4-1.core1.Montreal.Teleglobe.net (207.45.204.5) 409.895 ms 1469.882 ms 109.902 ms 6 if-1-1.core1.NewYork.Teleglobe.net (207.45.223.109) 189.920 ms 139.852 ms 109.939 ms 7 206.132.150.133 (206.132.150.133) 99.902 ms 99.724 ms 119.914 ms 8 pos1-0-2488M.wr2.CLE1.gblx.net (206.132.111.89) 189.899 ms 129.873 ms 129.934 ms 9 pos8-0-2488m.wr2.kcy1.globalcenter.net (206.132.111.82) 169.890 ms 179.884 ms 169.933 ms 10 206.132.114.77 (206.132.114.77) 199.890 ms 179.771 ms 169.928 ms 11 pos8-0-2488M.wr2.SFO1.gblx.net (206.132.110.110) 159.909 ms 199.959 ms 179.837 ms 12 pos1-0-2488M.cr1.SNV2.gblx.net (208.48.118.118) 179.885 ms 309.855 ms 299.937 ms 13 pos0-0-0-155M.hr2.SNV2.gblx.net (206.132.151.46) 329.905 ms 179.843 ms 169.936 ms 14 206.132.41.202 (206.132.41.202) 2229.906 ms 199.752 ms 309.927 ms
显示网页访问次数: 要快速显示您的网页被访问的次数,请使用以下命令
[root@deep] /# grep "GET / HTTP" /var/log/httpd/access_log | wc -l
467
完全关闭大多数服务: 作为 root 用户,您可以使用以下命令完全关闭大多数服务
以上命令将分别关闭 Apache 服务器、Samba 服务、LDAP 服务器和 DNS 服务器。
[root@deep] /# killall httpd smbd nmbd slapd named
终端顶部的时钟: 编辑profile文件,vi/etc/profile并添加以下行
结果将如下所示
PROMPT_COMMAND='echo -ne "\0337\033[2;999r\033[1;1H\033[00;44m\033[K"`date`"\033[00m\0338"'
您的服务器上安装了 lsof 吗?: 如果没有,请安装它并执行 lsof-i。这应该列出您的机器上打开了哪些端口。lsof 程序是一个很棒的工具,因为它可以告诉您哪些进程正在侦听给定的端口。
[root@deep] /# lsof -i
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME Inetd 344 root 4u IPv4 327 TCP *:ssh (LISTEN) sendmail 389 root 4u IPv4 387 TCP *:smtp (LISTEN) smbd 450 root 5u IPv4 452 TCP deep.openna.com:netbios-ssn (LISTEN) nmbd 461 root 5u IPv4 463 UDP *:netbios-ns nmbd 461 root 6u IPv4 465 UDP *:netbios-dgm nmbd 461 root 8u IPv4 468 UDP deep.openna.com:netbios-ns nmbd 461 root 9u IPv4 470 UDP deep.openna.com:netbios-dgm named 2599 root 4u IPv4 3095 UDP *:32771 named 2599 root 20u IPv4 3091 UDP localhost.localdomain:domain named 2599 root 21u IPv4 3092 TCP localhost.localdomain:domain (LISTEN) named 2599 root 22u IPv4 3093 UDP deep.openna.com:domain named 2599 root 23u IPv4 3094 TCP deep.openna.com:domain (LISTEN)
通过 ssh 协议在远程服务器上执行命令: ssh 命令还可用于在远程系统上运行命令,而无需登录。命令的输出会显示,并且控制权返回到本地系统。这是一个示例,它将显示远程系统上所有已登录的用户。
[admin@deep /]$ ssh mail.openna.com who
admin@mail.openna.com's password: root tty1 Dec 2 14:45 admin tty2 Dec 2 14:45 wahib pts/0 Dec 2 11:38
文件名补全: Tab 文件名补全允许您键入文件名或程序的部分内容,然后按 TAB 键,它将为您补全文件名。如果存在多个以您已键入内容开头的文件或程序,它会发出蜂鸣声,然后当您再次按 TAB 键时,它将列出所有以您最初键入内容开头的文件。
特殊字符: 您可以使用快捷键(一个或多个您在键盘上按下的键来完成任务)快速完成您经常执行的任务。例如,特殊字符可以在 Linux shell 上使用,如下所示
Control+d:如果您在 shell 中并按下 Control+d,您将被注销。
Control+l:如果您在 shell 中并按下 Control+l,您将清除屏幕。
?:这是一个通配符。它可以代表单个字符。如果您在命令行中指定了类似 "m?b" 的内容,Linux 将查找 mob、mib、mub 以及 a-z、0-9 之间的每个其他字母/数字。
*:这可以代表任意数量的字符。如果您指定了 "mi*",它将使用 "mit"、mim、miiii、miya 以及任何以 mi 开头的内容。"m*l" 可以是 mill、mull、ml 以及任何以 m 开头并以 l 结尾的内容。
[] - 指定范围。如果我执行 m[o,u,i]m,Linux 会认为:mim、mum、mom。如果我执行:m[a-d]m,Linux 会认为:mam、mbm、mcm、mdm。明白了吗?[]、? 和 * 通常与复制、删除和目录列表一起使用。
: Linux 中的一切 都区分大小写。这意味着 "Bill" 和 "bill" 不是同一件事。这允许存储许多文件,因为 "Bill"、"bill"、"bIll"、"biLl" 等可以是不同的文件。因此,当使用 [] 时,如果任何您正在处理的文件包含大写字母,则必须指定大写字母。尽管如此,UNIX 中的大多数内容都是小写的。