`

(四)对 Linux 专家非常有用的 20 个命令

阅读更多

在第一部分文章中我们讨论了那些都只是切换到 Linux 和linux新手所需的必要知识的用户的命令。

  1. 对 Linux 新手非常有用的 20 个命令

第二篇文章中我们讨论了中级用户管理自己的系统所需要的命令。

  1. 对中级 Linux 用户非常有用的 20 个命令

接下来呢?在这篇文章中我将解释管理 Linux 服务器所需的一些命令。

41. 命令: ifconfig

ifconfig用来配置常驻内核的网络接口信息。在系统启动必要时用来设置网络适配器的信息。之后,它通常是只需要在调试时或当系统需要调整时使用。

检查活动网络适配器
01 [avishek@tecmint ~]$ ifconfig
02  
03 eth0      Link encap:Ethernet  HWaddr 40:2C:F4:EA:CF:0E 
04           inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
05           inet6 addr: fe80::422c:f4ff:feea:cf0e/64 Scope:Link
06           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
07           RX packets:163843 errors:0 dropped:0 overruns:0 frame:0
08           TX packets:124990 errors:0 dropped:0 overruns:0 carrier:0
09           collisions:0 txqueuelen:1000
10           RX bytes:154389832 (147.2 MiB)  TX bytes:65085817 (62.0 MiB)
11           Interrupt:20 Memory:f7100000-f7120000
12  
13 lo        Link encap:Local Loopback 
14           inet addr:127.0.0.1  Mask:255.0.0.0
15           inet6 addr: ::1/128 Scope:Host
16           UP LOOPBACK RUNNING  MTU:16436  Metric:1
17           RX packets:78 errors:0 dropped:0 overruns:0 frame:0
18           TX packets:78 errors:0 dropped:0 overruns:0 carrier:0
19           collisions:0 txqueuelen:0
20           RX bytes:4186 (4.0 KiB)  TX bytes:4186 (4.0 KiB)
检查所有的网络适配器

“-a”参数用来显示所有网络适配器(网卡)的详细信息,包括那些停用的适配器。

01 [avishek@tecmint ~]$ ifconfig -a
02  
03 eth0      Link encap:Ethernet  HWaddr 40:2C:F4:EA:CF:0E 
04           inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
05           inet6 addr: fe80::422c:f4ff:feea:cf0e/64 Scope:Link
06           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
07           RX packets:163843 errors:0 dropped:0 overruns:0 frame:0
08           TX packets:124990 errors:0 dropped:0 overruns:0 carrier:0
09           collisions:0 txqueuelen:1000
10           RX bytes:154389832 (147.2 MiB)  TX bytes:65085817 (62.0 MiB)
11           Interrupt:20 Memory:f7100000-f7120000
12  
13 lo        Link encap:Local Loopback 
14           inet addr:127.0.0.1  Mask:255.0.0.0
15           inet6 addr: ::1/128 Scope:Host
16           UP LOOPBACK RUNNING  MTU:16436  Metric:1
17           RX packets:78 errors:0 dropped:0 overruns:0 frame:0
18           TX packets:78 errors:0 dropped:0 overruns:0 carrier:0
19           collisions:0 txqueuelen:0
20           RX bytes:4186 (4.0 KiB)  TX bytes:4186 (4.0 KiB)
21  
22 virbr0    Link encap:Ethernet  HWaddr 0e:30:a3:3a:bf:03 
23           inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0
24           UP BROADCAST MULTICAST  MTU:1500  Metric:1
25           RX packets:0 errors:0 dropped:0 overruns:0 frame:0
26           TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
27           collisions:0 txqueuelen:0
28           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
停用网络适配器
1 [avishek@tecmint ~]$ ifconfig eth0 down
启用网络适配器
1 [avishek@tecmint ~]$ ifconfig eth0 up
指定IP地址到网络适配器

为网络适配器eth0设定IP地址“192.168.1.12”.

1 [avishek@tecmint ~]$ ifconfig eth0 192.168.1.12
更改网络适配器eth0的子网掩码
1 [avishek@tecmint ~]$ ifconfig eth0 netmask 255.255.255.
更改网络适配器eth0的广播地址
1 [avishek@tecmint ~]$ ifconfig eth0 broadcast 192.168.1.255
为网络适配器eth0指定IP地址,子网掩码,广播地址
1 [avishek@tecmint ~]$ ifconfig eth0 192.168.1.12 netmask 255.255.255.0 broadcast 192.168.1.255

注Note: 如果你设置一块无线网卡的信息,你可以使用的命令是“iwconfig”.欲知更多ifconfig命令的例子和使用方法,读“15个有用的ifconfig 命令”.

42. 命令: netstat

netstat命令显示各种网络相关的信息,如网络连接,路由表,接口统计,伪装连接,组播成员身份等....

列出所有的网络端口
01 [avishek@tecmint ~]$ netstat -a
02  
03 Active UNIX domain sockets (servers and established)
04 Proto RefCnt Flags       Type       State         I-Node   Path
05 unix  2      [ ACC ]     STREAM     LISTENING     741379   /run/user/user1/keyring-I5cn1c/gpg
06 unix  2      [ ACC ]     STREAM     LISTENING     8965     /var/run/acpid.socket
07 unix  2      [ ACC ]     STREAM     LISTENING     18584    /tmp/.X11-unix/X0
08 unix  2      [ ACC ]     STREAM     LISTENING     741385   /run/user/user1/keyring-I5cn1c/ssh
09 unix  2      [ ACC ]     STREAM     LISTENING     741387   /run/user/user1/keyring-I5cn1c/pkcs11
10 unix  2      [ ACC ]     STREAM     LISTENING     20242    @/tmp/dbus-ghtTjuPN46
11 unix  2      [ ACC ]     STREAM     LISTENING     13332    /var/run/samba/winbindd_privileged/pipe
12 unix  2      [ ACC ]     STREAM     LISTENING     13331    /tmp/.winbindd/pipe
13 unix  2      [ ACC ]     STREAM     LISTENING     11030    /var/run/mysqld/mysqld.sock
14 unix  2      [ ACC ]     STREAM     LISTENING     19308    /tmp/ssh-qnZadSgJAbqd/agent.3221
15 unix  2      [ ACC ]     STREAM     LISTENING     436781   /tmp/HotShots
16 unix  2      [ ACC ]     STREAM     LISTENING     46110    /run/user/ravisaive/pulse/native
17 unix  2      [ ACC ]     STREAM     LISTENING     19310    /tmp/gpg-zfE9YT/S.gpg-agent
18 ....
显示所有tcp相关端口
01 [avishek@tecmint ~]$ netstat -at
02  
03 Active Internet connections (servers and established)
04 Proto Recv-Q Send-Q Local Address           Foreign Address         State     
05 tcp        0      0 localhost:mysql         *:*                     LISTEN    
06 tcp        0      0 *:5901                  *:*                     LISTEN    
07 tcp        0      0 *:5902                  *:*                     LISTEN    
08 tcp        0      0 *:x11-1                 *:*                     LISTEN    
09 tcp        0      0 *:x11-2                 *:*                     LISTEN    
10 tcp        0      0 *:5938                  *:*                     LISTEN    
11 tcp        0      0 localhost:5940          *:*                     LISTEN    
12 tcp        0      0 ravisaive-OptiPl:domain *:*                     LISTEN    
13 tcp        0      0 ravisaive-OptiPl:domain *:*                     LISTEN    
14 tcp        0      0 localhost:ipp           *:*                     LISTEN    
15 tcp        0      0 ravisaive-OptiPle:48270 ec2-23-21-236-70.c:http ESTABLISHED
16 tcp        0      0 ravisaive-OptiPle:48272 ec2-23-21-236-70.c:http TIME_WAIT 
17 tcp        0      0 ravisaive-OptiPle:48421 bom03s01-in-f22.1:https ESTABLISHED
18 tcp        0      0 ravisaive-OptiPle:48269 ec2-23-21-236-70.c:http ESTABLISHED
19 tcp        0      0 ravisaive-OptiPle:39084 channel-ecmp-06-f:https ESTABLISHED
20 ...
显示所有连接的统计信息
01 [avishek@tecmint ~]$ netstat -s
02  
03 Ip:
04     4994239 total packets received
05     0 forwarded
06     0 incoming packets discarded
07     4165741 incoming packets delivered
08     3248924 requests sent out
09     8 outgoing packets dropped
10 Icmp:
11     29460 ICMP messages received
12     566 input ICMP message failed.
13     ICMP input histogram:
14         destination unreachable: 98
15         redirects: 29362
16     2918 ICMP messages sent
17     0 ICMP messages failed
18     ICMP output histogram:
19         destination unreachable: 2918
20 IcmpMsg:
21         InType3: 98
22         InType5: 29362
23         OutType3: 2918
24 Tcp:
25     94533 active connections openings
26     23 passive connection openings
27     5870 failed connection attempts
28     7194 connection resets received
29 ....


好的!由于某些原因如果你不想解析netstat 输出的主机、端口和用户名称的话 。

1 [avishek@tecmint ~]$ netstat -an


好,你可能需要获取的 netstat 持续输出的动态信息,通过传递中断输出指令 (ctrl + c)来停止。

1 [avishek@tecmint ~]$ netstat -c

更多关于“netstat”的例子和使用方法,浏览文章“20个netstat 的使用案例”

43. 命令: nslookup

网络实用程序,用于获得互联网服务器的信息。顾名思义,该实用程序将发现通过查询 DNS 域的名称服务器信息。

1 [avishek@tecmint ~]$ nslookup tecmint.com
2  
3 Server:     192.168.1.1
4 Address:    192.168.1.1#53
5  
6 Non-authoritative answer:
7 Name:   tecmint.com
8 Address: 50.16.67.239
查询 邮件 交换器 记录
01 [avishek@tecmint ~]$ nslookup -query=mx tecmint.com
02  
03 Server:     192.168.1.1
04 Address:    192.168.1.1#53
05  
06 Non-authoritative answer:
07 tecmint.com mail exchanger = 0 smtp.secureserver.net.
08 tecmint.com mail exchanger = 10 mailstore1.secureserver.net.
09  
10 Authoritative answers can be found from:
查询域名服务器
01 [avishek@tecmint ~]$ nslookup -type=ns tecmint.com
02  
03 Server:     192.168.1.1
04 Address:    192.168.1.1#53
05  
06 Non-authoritative answer:
07 tecmint.com nameserver = ns3404.com.
08 tecmint.com nameserver = ns3403.com.
09  
10 Authoritative answers can be found from:
查询DNS记录
01 [avishek@tecmint ~]$ nslookup -type=any tecmint.com
02  
03 Server:     192.168.1.1
04 Address:    192.168.1.1#53
05  
06 Non-authoritative answer:
07 tecmint.com mail exchanger = 10 mailstore1.secureserver.net.
08 tecmint.com mail exchanger = 0 smtp.secureserver.net.
09 tecmint.com nameserver = ns06.domaincontrol.com.
10 tecmint.com nameserver = ns3404.com.
11 tecmint.com nameserver = ns3403.com.
12 tecmint.com nameserver = ns05.domaincontrol.com.
13  
14 Authoritative answers can be found from:
查询 起始 授权机构
01 [avishek@tecmint ~]$ nslookup -type=soa tecmint.com
02  
03 Server:     192.168.1.1
04 Address:    192.168.1.1#53
05  
06 Non-authoritative answer:
07 tecmint.com
08     origin = ns3403.hostgator.com
09     mail addr = dnsadmin.gator1702.hostgator.com
10     serial = 2012081102
11     refresh = 86400
12     retry = 7200
13     expire = 3600000
14     minimum = 86400
15  
16 Authoritative answers can be found from:
查询端口号

更改使用你想要连接的端口号

1 [avishek@tecmint ~]$ nslookup -port 56 tecmint.com
2  
3 Server:     tecmint.com
4 Address:    50.16.76.239#53
5  
6 Name:   56
7 Address: 14.13.253.12

更多阅读 8个Nslookup 命令

44. 命令: dig

dig是查询DNS 域名服务器的工具,可以查询的主机地址、 邮件交流、 域名服务器相关的信息。在任何 Linux (Unix) 或 Macintosh OS X 操作系统上,都可以使用该工具。dig的最典型的用法是单个主机的查询。

1 [avishek@tecmint ~]$ dig tecmint.com
2  
3 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com
4 ;; global options: +cmd
5 ;; Got answer:
6 ;; ->>HEADER<
关闭注释行
01 [avishek@tecmint ~]$ dig tecmint.com +nocomments
02  
03 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com +nocomments
04 ;; global options: +cmd
05 ;tecmint.com.           IN  A
06 tecmint.com.        14400   IN  A   40.216.66.239
07 ;; Query time: 418 msec
08 ;; SERVER: 192.168.1.1#53(192.168.1.1)
09 ;; WHEN: Sat Jun 29 13:53:22 2013
10 ;; MSG SIZE  rcvd: 45
关闭认证块
1 [avishek@tecmint ~]$ dig tecmint.com +noauthority
2  
3 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com +noauthority
4 ;; global options: +cmd
5 ;; Got answer:
6 ;; ->>HEADER<
关闭 其他
1 [avishek@tecmint ~]$ dig  tecmint.com +noadditional
2  
3 ; <<>> DiG 9.9.2-P1 <<>> tecmint.com +noadditional
4 ;; global options: +cmd
5 ;; Got answer:
6 ;; ->>HEADER<
关闭 统计块
1 [avishek@tecmint ~]$ dig tecmint.com +nostats
2  
3 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com +nostats
4 ;; global options: +cmd
5 ;; Got answer:
6 ;; ->>HEADER<
关闭回复块
1 [avishek@tecmint ~]$ dig tecmint.com +noanswer
2  
3 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com +noanswer
4 ;; global options: +cmd
5 ;; Got answer:
6 ;; ->>HEADER<
关闭所有块
1 [avishek@tecmint ~]$ dig tecmint.com +noall
2  
3 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com +noall
4 ;; global options: +cmd

阅读更多10 个Linux Dig 命令实例

45.命令: uptime

你连接到你的 Linux 服务器时发现一些不寻常或恶意的东西,你会做什么?猜测......不,绝不!你可以运行uptime来验证当服务器无人值守式到底发生了什么事情。

1 [avishek@tecmint ~]$ uptime
2  
3 14:37:10 up  4:21,  2 users,  load average: 0.00, 0.00, 0.04

46. 命令: wall

对系统管理员来说一个最重要的命令.wall发送一条消息到大家登录端将其 mesg 权限设置为"yes"。这条信息可以被wall作为参数,或者可以将它作为wall的标准输入。

1 [avishek@tecmint ~]$ wall "we will be going down for maintenance for one hour sharply at 03:30 pm"
2  
3 Broadcast message from root@localhost.localdomain (pts/0) (Sat Jun 29 14:44:02 2013):
4  
5 we will be going down for maintenance for one hour sharply at 03:30 pm

47. 命令: mesg

其他人们可以使用"wtrite"命令,将在在向您发送文本到屏幕上。你可以控制是否显示。

1 mesg [<strong>n</strong>|<strong>y</strong>] <strong>n</strong> - prevents the message from others popping up on the screen. <strong>y</strong> – Allows messages to appear on your screen.

48. 命令: write

如果 'mesg' 是 'y',让你的文本直接发送到另一台 Linux 机器的屏幕。.

1 [avishek@tecmint ~]$ write ravisaive

49. 命令: talk

增强的write命令,talk命令可让你与其他登录的用户交谈。

1 [avishek@tecmint ~]$ talk ravisaive

注释: 如果 talk 命令没安装的话,可以通过apt 或yum 安装所需的包.

1 [avishek@tecmint ~]$ yum install talk
2 OR
3 [avishek@tecmint ~]$ apt-get install talk

50. 命令:w

是否觉得命令'w'很滑稽?但是事实上不是的。它是一个命令,尽管只有一个字符长!命令"w"是uptimewho命令,以前后的顺序组合在一起。

1 [avishek@tecmint ~]$ w
2  
3 15:05:42 up  4:49,  3 users,  load average: 0.02, 0.01, 0.00
4 USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
5 server   tty7     :0               14:06    4:43m  1:42   0.08s pam: gdm-passwo
6 server   pts/0    :0.0             14:18    0.00s  0.23s  1.65s gnome-terminal
7 server   pts/1    :0.0             14:47    4:43   0.01s  0.01s bash

51. 命令: rename

见名知意,这个命令重命名文件。rename将会通过从文件名的首字符开始替换,重命名为指定的文件名。

1 Give the file names a1, a2, a3, a4.....1213

仅仅写这些命令:[@Lesus 注: 在Ubuntu上不支持这种格式, rename与mv不同的是,rename可以批量修改,如同带了while的mv操作。]

1 rename a1 a0 a?
2 rename a1 a0 a??

52. 命令: top

显示CPU进程信息。这个命令自动刷新,默认是持续显示CPU进程信息,除非使用了中断指令。

01 [avishek@tecmint ~]$ top
02  
03 top - 14:06:45 up 10 days, 20:57,  2 users,  load average: 0.10, 0.16, 0.21
04 Tasks: 240 total,   1 running, 235 sleeping,   0 stopped,   4 zombie
05 %Cpu(s):  2.0 us,  0.5 sy,  0.0 ni, 97.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
06 KiB Mem:   2028240 total,  1777848 used,   250392 free,    81804 buffers
07 KiB Swap:  3905532 total,   156748 used,  3748784 free,   381456 cached
08  
09   PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+ COMMAND                                                                                                           
10 23768 ravisaiv  20   0 1428m 571m  41m S   2.3 28.9  14:27.52 firefox                                                                                                           
11 24182 ravisaiv  20   0  511m 132m  25m S   1.7  6.7   2:45.94 plugin-containe                                                                                                   
12 26929 ravisaiv  20   0  5344 1432  972 R   0.7  0.1   0:00.07 top                                                                                                               
13 24875 ravisaiv  20   0  263m  14m  10m S   0.3  0.7   0:02.76 lxterminal                                                                                                        
14     1 root      20   0  3896 1928 1228 S   0.0  0.1   0:01.62 init                                                                                                              
15     2 root      20   0     0    0    0 S   0.0  0.0   0:00.06 kthreadd                                                                                                          
16     3 root      20   0     0    0    0 S   0.0  0.0   0:17.28 ksoftirqd/0                                                                                                       
17     5 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/0:0H                                                                                                      
18     7 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/u:0H                                                                                                      
19     8 root      rt   0     0    0    0 S   0.0  0.0   0:00.12 migration/0                                                                                                       
20     9 root      20   0     0    0    0 S   0.0  0.0   0:00.00 rcu_bh                                                                                                            
21    10 root      20   0     0    0    0 S   0.0  0.0   0:26.94 rcu_sched                                                                                                         
22    11 root      rt   0     0    0    0 S   0.0  0.0   0:01.95 watchdog/0                                                                                                        
23    12 root      rt   0     0    0    0 S   0.0  0.0   0:02.00 watchdog/1                                                                                                        
24    13 root      20   0     0    0    0 S   0.0  0.0   0:17.80 ksoftirqd/1                                                                                                       
25    14 root      rt   0     0    0    0 S   0.0  0.0   0:00.12 migration/1                                                                                                       
26    16 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kworker/1:0H                                                                                                      
27    17 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 cpuset                                                                                                            
28    18 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 khelper                                                                                                           
29    19 root      20   0     0    0    0 S   0.0  0.0   0:00.00 kdevtmpfs                                                                                                         
30    20 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 netns                                                                                                             
31    21 root      20   0     0    0    0 S   0.0  0.0   0:00.04 bdi-default                                                                                                       
32    22 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kintegrityd                                                                                                       
33    23 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 kblockd                                                                                                           
34    24 root       0 -20     0    0    0 S   0.0  0.0   0:00.00 ata_sff

另查看 12 TOP命令例子 ·[@Lesus 注:htop比top命令更好用,不过需要自己安装
]

53. 命令: mkfs.ext4

这个命令在指定的设备上创建一个新的ext4文件系统,如果这个命令后面跟的是个错误的设备,那么整个设备就会被擦除和格式化,所以建议不要运行这个命令,除非你清楚自己正在干什么。

1 Mkfs.ext4 /dev/sda1 (sda1 block will be formatted)
2 mkfs.ext4 /dev/sdb1 (sdb1 block will be formatted)

更多查看: Ext4是什么及怎么创建和转换

54. vi/emac/nano 命令

vi (visual), emac, nano 是 linux 中最常用的一些编辑器。它们经常用于编辑文本,配置,… 等文件. A quick guide to work around vi and nano is, emac is a.

vi 编辑器:
1 [avishek@tecmint ~]$ touch a.txt (创建一个名为a.txt的文本文件)
2 [avishek@tecmint ~]$ vi a.txt (用vi打开a.txt)

[按下‘i’键进入插入模式, 否则你不能输入任何内容]

1 echo "Hello"  (这里的文本会存到文件中)
  1. alt+x (退出插入模式, 记得在最后的字符间留有一些空格.
  2. ctrl+x 命令或你上一个单词将被删除).
  3. :wq! (以当前的文本保存文件, 记住‘!’ 是覆盖的意思).
nano 编辑器:
1 [avishek@tecmint ~]$ nano a.txt (用nano打开 a.txt)
1 edit, with the content, required

ctrl +x (关闭编辑器).它会显示如下的提示输出信息:

1 Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES) ?                   
2  Y Yes
3  N No           ^C Cancel

点击‘y’ 选择 yes 并输入文件名,就完成编辑了.

55. 命令: rsync

Rsync复制文件,参数-P开启进度条。如果你已经安装了rsync,你可以使用一个简单的别名。

1 alias cp='rsync -aP'

现在尝试在终端复制一个大文件,这样将会看到显示剩余部分的输出,与进度条类似。

而且,保持和维护备份是系统管理员不得不做的最重要、最无聊的工作之一。Rsync是一个用于新建和维护备份的非常好用的终端工具(也存在许多其它工具)。

1 [avishek@tecmint ~]$ rsync -zvr IMG_5267\ copy\=33\ copy\=ok.jpg ~/Desktop/
2  
3 sending incremental file list
4 IMG_5267 copy=33 copy=ok.jpg
5  
6 sent 2883830 bytes  received 31 bytes  5767722.00 bytes/sec
7 total size is 2882771  speedup is 1.00

注意: -z表示压缩, -v表示详细信息,-r表示递归。

56. 命令: free

跟踪内存的使用和资源一样重要,就像管理员执行的任何其它任务,可以使用 'free' 命令来在这里救援.

当前内存使用状态Current Usage Status of Memory
1 [avishek@tecmint ~]$ free
2  
3              total       used       free     shared    buffers     cached
4 Mem:       2028240    1788272     239968          0      69468     363716
5 -/+ buffers/cache:    1355088     673152
6 Swap:      3905532     157076    3748456
设置输出单位为KB,MB或GB
1 [avishek@tecmint ~]$ free -b
2  
3              total       used       free     shared    buffers     cached
4 Mem:    2076917760 1838272512  238645248          0   71348224  372670464
5 -/+ buffers/cache: 1394253824  682663936
6 Swap:   3999264768  160845824 3838418944
1 [avishek@tecmint ~]$ free -k
2  
3              total       used       free     shared    buffers     cached
4 Mem:       2028240    1801484     226756          0      69948     363704
5 -/+ buffers/cache:    1367832     660408
6 Swap:      3905532     157076    3748456
1 [avishek@tecmint ~]$ free -m
2  
3              total       used       free     shared    buffers     cached
4 Mem:          1980       1762        218          0         68        355
5 -/+ buffers/cache:       1338        641
6 Swap:         3813        153       3660
1 [avishek@tecmint ~]$ free -g
2  
3              total       used       free     shared    buffers     cached
4 Mem:             1          1          0          0          0          0
5 -/+ buffers/cache:          1          0
6 Swap:            3          0          3
以可读的格式显示,检查当前内存使用
1 [avishek@tecmint ~]$ free -h
2  
3              total       used       free     shared    buffers     cached
4 Mem:          1.9G       1.7G       208M         0B        68M       355M
5 -/+ buffers/cache:       1.3G       632M
6 Swap:         3.7G       153M       3.6G
设定 时间间隔 ,持续检查 使用状态
01 [avishek@tecmint ~]$ free -s 3
02  
03              total       used       free     shared    buffers     cached
04 Mem:       2028240    1824096     204144          0      70708     364180
05 -/+ buffers/cache:    1389208     639032
06 Swap:      3905532     157076    3748456
07  
08              total       used       free     shared    buffers     cached
09 Mem:       2028240    1824192     204048          0      70716     364212
10 -/+ buffers/cache:    1389264     638976
11 Swap:      3905532     157076    3748456

阅读更多10个Free命令使用实例

57. mysqldump 命令

好了,现在你从名字上就能明白这个命令所代表的作用。mysqldump 命令会转储(备份)数据库的全部或特定一部分数据到一个给定的文件中。例如:

1 [avishek@tecmint ~]$ mysqldump -u root -p --all-databases > /home/server/Desktop/backupfile.sql

注意: mysqldump 需要 mysql 在运行中并且有正确的授权密码。我们在 用mysqldump命令备份数据库中讨论了一些有用的 “mysqldump” 命令用法。

58. mkpasswd 命令

根据指定的长度,产生一个难猜的随机密码。

1 [avishek@tecmint ~]$ mkpasswd -l 10
2  
3 zI4+Ybqfx9
1 [avishek@tecmint ~]$ mkpasswd -l 20
2  
3 w0Pr7aqKk&hmbmqdrlmk

注意: -l 10 产生一个10个字符的随机密码,而-l 20 产生 20个字符的密码,它可以设置为任意长度来取得所希望的结果。这个命令很有用,经常在脚本语言里使用来产生随机的密码。你可能需要 yumapt ‘expect’ 包来使用这个命令。

1 [avishek@tecmint ~]$ yum install expect
2
3 [avishek@tecmint ~]$ apt-get install expect

59. Command: paste

合并两个或多个文本文件,按行来进行合并。示例。如果 file1 的内容是:

01 1
02 2
03 3
04  
05 file2 是这样的:
06  
07 a
08 b
09 c
10 d<pre class="brush:shell">[avishek@tecmint ~]$ paste file1 file2 > file3</pre> <br>
11 结果file3将是:
12 1    a
13 2    b
14 3    c
15      d

60.Command: lsof

lsof 是"list open files("列表中打开的文件") 的缩写,显示您的系统当前已打开的所有文件。这是非常有用的对于想找出哪些进程使用某一特定文件,或显示为单个进程打开所有文件。一些有用的 10 个lsof 命令示例,你可能会感兴趣阅读。

01 [avishek@tecmint ~]$ lsof
02  
03 COMMAND     PID   TID            USER   FD      TYPE     DEVICE SIZE/OFF       NODE NAME
04 init          1                  root  cwd       DIR        8,1     4096          2 /
05 init          1                  root  rtd       DIR        8,1     4096          2 /
06 init          1                  root  txt       REG        8,1   227432     395571 /sbin/init
07 init          1                  root  mem       REG        8,1    47080     263023 /lib/i386-linux-gnu/libnss_files-2.17.so
08 init          1                  root  mem       REG        8,1    42672     270178 /lib/i386-linux-gnu/libnss_nis-2.17.so
09 init          1                  root  mem       REG        8,1    87940     270187 /lib/i386-linux-gnu/libnsl-2.17.so
10 init          1                  root  mem       REG        8,1    30560     263021 /lib/i386-linux-gnu/libnss_compat-2.17.so
11 init          1                  root  mem       REG        8,1   124637     270176 /lib/i386-linux-gnu/libpthread-2.17.so
12 init          1                  root  mem       REG        8,1  1770984     266166 /lib/i386-linux-gnu/libc-2.17.so
13 init          1                  root  mem       REG        8,1    30696     262824 /lib/i386-linux-gnu/librt-2.17.so
14 init          1                  root  mem       REG        8,1    34392     262867 /lib/i386-linux-gnu/libjson.so.0.1.0
15 init          1                  root  mem       REG        8,1   296792     262889 /lib/i386-linux-gnu/libdbus-1.so.3.7.2
16 init          1                  root  mem       REG        8,1    34168     262840 /lib/i386-linux-gnu/libnih-dbus.so.1.0.0
17 init          1                  root  mem       REG        8,1    95616     262848 /lib/i386-linux-gnu/libnih.so.1.0.0
18 init          1                  root  mem       REG        8,1   134376     270186 /lib/i386-linux-gnu/ld-2.17.so
19 init          1                  root    0u      CHR        1,3      0t0       1035 /dev/null
20 init          1                  root    1u      CHR        1,3      0t0       1035 /dev/null
21 init          1                  root    2u      CHR        1,3      0t0       1035 /dev/null
22 init          1                  root    3r     FIFO        0,8      0t0       1714 pipe
23 init          1                  root    4w     FIFO        0,8      0t0       1714 pipe
24 init          1                  root    5r     0000        0,9        0       6245 anon_inode
25 init          1                  root    6r     0000        0,9        0       6245 anon_inode
26 init          1                  root    7u     unix 0xf5e91f80      0t0       8192 @/com/ubuntu/upstart
27 init          1                  root    8w      REG        8,1     3916        394 /var/log/upstart/teamviewerd.log.1 (deleted)

这 里并没有结束,系统管理员会很多东西,为你提供漂亮的界面,服务于你的工作。系统管理实际上是学习和实现的一门优雅的艺术。我们会尽力给你介绍 linux 专业人员必须了解的知识以及一些其他必要东西,linux本身是基础的,简单的。深入理解是不断学习的过程。你的美言好词总是在不断鼓励我们写出更多的优 秀,丰富的文章。"喜之以分享,助我来传播"。

分享到:
评论

相关推荐

    linux需知道的80个命令

    下面我们将详细探讨“Linux需知道的80个命令”这个主题,这将包括一些最常用的、对日常工作非常有用的命令。 1. **ls**:列出目录内容,可配合参数-a查看隐藏文件,-l显示详细信息。 2. **cd**:切换当前工作目录...

    linux命令大全 linux

    这个命令对于没有图形桌面环境或者需要临时启动图形界面的场景非常有用。 3. `Xconfigurator`: `Xconfigurator`是一个用于设置XFree86的交互式工具,尤其适用于Red Hat Linux。它允许用户通过简单的界面选择显卡...

    Linux命令高阶参考手册,1527页的命令大全

    该书的出版团队包括了来自多个领域的专家,如Richard K. Swadley担任总裁,Jordan Gold负责出版和收购事务,Dean Miller担任产品开发总监等。此外,还有一支专业的编辑团队确保内容的质量和准确性。 #### 二、版权...

    LINUX命令、编辑器与SHELL编程PDF.part01

    知名Linux专家Mark Sobell编写的这本书,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一个卓越的日常参考手册。  本书与具体版本无关,可以在任何Linux系统上使用。更重要的是,书中...

    LINUX命令、编辑器与SHELL编程PDF.part02.rar

    知名Linux专家Mark Sobell编写的这本书,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一个卓越的日常参考手册。  本书与具体版本无关,可以在任何Linux系统上使用。更重要的是,书中...

    Linux常用命令大全

    这两个命令对于大文件非常有用,可以在页面之间滚动浏览。 10. **grep**:搜索文件中的特定字符串。`grep "pattern" filename` 会显示所有包含指定模式的行。 11. **find**:在文件系统中查找文件。例如,`find / ...

    linux的常用命令大全(精华版)

    一个标准的Linux命令通常由三部分组成:命令(command)、选项(options)和参数(arguments或parameters)。例如,`rm -rf /home/ols3` 这个命令中,`rm` 是命令,`-rf` 是选项,`/home/ols3` 是参数。选项用来指定...

    linux常用命令

    在IT行业中,Linux操作系统是许多专业开发者和系统管理员的首选平台,因其开源、稳定和高效而备受推崇。...无论你是初学者还是资深开发者,深入理解并运用这些命令都将对你的Linux之旅产生积极的影响。

    linux命令大全(修改版)

    通过阅读《Linux命令大全(修改版).chm》这个压缩包中的内容,你可以深入理解每个命令的用法,结合实际操作实践,逐步成为Linux操作系统的专家。这份资源不仅适合初学者入门,也对有经验的Linux用户有参考价值,因为...

    VI 命令大全 linux很有用的文档

    本篇文章将会详细解读“VI命令大全 linux很有用的文档”中提到的各种`vi`命令及其应用场景。 #### 文件操作命令 - **vi filename**: 打开或新建一个文件,并将光标置于文件的第一行首。 - **vi +n filename**: ...

    LINUX命令、编辑器与SHELL编程.part05

    知名Linux专家Mark Sobell编写的这本书,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一个卓越的日常参考手册。  本书与具体版本无关,可以在任何Linux系统上使用。更重要的是,书中...

    LINUX命令编辑器与SHELL编程(中文)01

    并且,当需要立即得到答案时,可以翻到本书的命令参考部分,这部分内容经过精心组织和标注,非常易于快速查找! 作者简介 Mark G.Sobell是Sobell Associates 公司的主席,该公司是一个专于UNLX/Linux 培训、技术...

    LINUX命令、编辑器与SHELL编程.part03.rar

    知名Linux专家Mark Sobell编写的这本书,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一个卓越的日常参考手册。  本书与具体版本无关,可以在任何Linux系统上使用。更重要的是,书中...

    LINUX命令、编辑器与SHELL编程.part04.rar

    知名Linux专家Mark Sobell编写的这本书,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一个卓越的日常参考手册。  本书与具体版本无关,可以在任何Linux系统上使用。更重要的是,书中...

    LINUX命令、编辑器与SHELL编程.part11.rar

    知名Linux专家Mark Sobell编写的这本书,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一个卓越的日常参考手册。  本书与具体版本无关,可以在任何Linux系统上使用。更重要的是,书中...

    LINUX命令、编辑器与SHELL编程.part12.rar

    知名Linux专家Mark Sobell编写的这本书,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一个卓越的日常参考手册。  本书与具体版本无关,可以在任何Linux系统上使用。更重要的是,书中...

    LINUX命令、编辑器与SHELL编程.part07.rar

    知名Linux专家Mark Sobell编写的这本书,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一个卓越的日常参考手册。  本书与具体版本无关,可以在任何Linux系统上使用。更重要的是,书中...

    LINUX命令、编辑器与SHELL编程.part09.rar

    知名Linux专家Mark Sobell编写的这本书,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一个卓越的日常参考手册。  本书与具体版本无关,可以在任何Linux系统上使用。更重要的是,书中...

    LINUX命令、编辑器与SHELL编程.part08.rar

    知名Linux专家Mark Sobell编写的这本书,为系统管理员、开发人员和高级用户提供了最需要的全面的深入指导,同时还是一个卓越的日常参考手册。  本书与具体版本无关,可以在任何Linux系统上使用。更重要的是,书中...

    Linux系统文件命令精通指南(下)

    - **uniq**:用于去除连续重复的行,通常与sort命令一起使用,处理大量数据时非常有用。 3. **系统监控和管理** - **ps**:显示当前系统中的进程状态,常用于检查进程的运行情况。 - **top**:实时监控系统...

Global site tag (gtag.js) - Google Analytics