大数跨境

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

对 Linux 专家非常有用的 20 个命令(上) 慧测
2016-03-22
1
导读:英文:Tecmit中文:oschina网址:http://www.oschina.net/translate


英文:Tecmit

中文:oschina

网址:http://www.oschina.net/translate/20-advanced-commands-for-linux-experts

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

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

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

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

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

41.命令:ifconfig

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

检查活动网络适配器

[avishek@tecmint ~]$ ifconfig

eth0      Link encap:Ethernet  HWaddr 40:2C:F4:EA:CF:0E

inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0

inet6 addr: fe80::422c:f4ff:feea:cf0e/64 Scope:Link

UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

RX packets:163843 errors:0 dropped:0 overruns:0 frame:0

TX packets:124990 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:154389832 (147.2 MiB)  TX bytes:65085817 (62.0 MiB)

Interrupt:20 Memory:f7100000-f7120000

lo        Link encap:Local Loopback

inet addr:127.0.0.1  Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING  MTU:16436  Metric:1

RX packets:78 errors:0 dropped:0 overruns:0 frame:0

TX packets:78 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:4186 (4.0 KiB)  TX bytes:4186 (4.0 KiB)

检查所有的网络适配器

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

[avishek@tecmint ~]$ ifconfig -a

eth0      Link encap:Ethernet  HWaddr 40:2C:F4:EA:CF:0E

inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0

inet6 addr: fe80::422c:f4ff:feea:cf0e/64 Scope:Link

UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

RX packets:163843 errors:0 dropped:0 overruns:0 frame:0

TX packets:124990 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:154389832 (147.2 MiB)  TX bytes:65085817 (62.0 MiB)

Interrupt:20 Memory:f7100000-f7120000

lo        Link encap:Local Loopback

inet addr:127.0.0.1  Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING  MTU:16436  Metric:1

RX packets:78 errors:0 dropped:0 overruns:0 frame:0

TX packets:78 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:4186 (4.0 KiB)  TX bytes:4186 (4.0 KiB)

virbr0    Link encap:Ethernet  HWaddr 0e:30:a3:3a:bf:03

inet addr:192.168.122.1  Bcast:192.168.122.255  Mask:255.255.255.0

UP BROADCAST MULTICAST  MTU:1500  Metric:1

RX packets:0 errors:0 dropped:0 overruns:0 frame:0

TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

停用网络适配器

[avishek@tecmint ~]$ ifconfig eth0 down

启用网络适配器

[avishek@tecmint ~]$ ifconfig eth0 up

指定IP地址到网络适配器

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

[avishek@tecmint ~]$ ifconfig eth0 192.168.1.12

更改网络适配器eth0的子网掩码

[avishek@tecmint ~]$ ifconfig eth0 netmask 255.255.255.

更改网络适配器eth0的广播地址

[avishek@tecmint ~]$ ifconfig eth0 broadcast 192.168.1.255

为网络适配器eth0指定IP地址,子网掩码,广播地址

[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命令显示各种网络相关的信息,如网络连接,路由表,接口统计,伪装连接,组播成员身份等….

列出所有的网络端口

[avishek@tecmint ~]$ netstat -a

Active UNIX domain sockets (servers and established)

Proto RefCnt Flags       Type       State         I-Node   Path

unix  2      [ ACC ]     STREAM     LISTENING     741379   /run/user/user1/keyring-I5cn1c/gpg

unix  2      [ ACC ]     STREAM     LISTENING     8965     /var/run/acpid.socket

unix  2      [ ACC ]     STREAM     LISTENING     18584    /tmp/.X11-unix/X0

unix  2      [ ACC ]     STREAM     LISTENING     741385   /run/user/user1/keyring-I5cn1c/ssh

unix  2      [ ACC ]     STREAM     LISTENING     741387   /run/user/user1/keyring-I5cn1c/pkcs11

unix  2      [ ACC ]     STREAM     LISTENING     20242    @/tmp/dbus-ghtTjuPN46

....

显示所有tcp相关端口

[avishek@tecmint ~]$netstat -at

Active Internet connections (servers and established)

Proto Recv-Q Send-Q Local Address           Foreign Address         State

tcp        0      0 localhost:mysql         *:*                     LISTEN

tcp        0      0 *:5901                  *:*                     LISTEN

tcp        0      0 *:5902                  *:*                     LISTEN

tcp        0      0 *:x11-1                 *:*                     LISTEN

tcp        0      0 *:x11-2                 *:*                     LISTEN

tcp        0      0 *:5938                  *:*                     LISTEN

tcp        0      0 localhost:5940          *:*                     LISTEN

...

显示所有连接的统计信息

[avishek@tecmint ~]$ netstat -s

Ip:

4994239 total packets received

0 forwarded

0 incoming packets discarded

4165741 incoming packets delivered

3248924 requests sent out

8 outgoing packets dropped

Icmp:

29460 ICMP messages received

566 input ICMP message failed.

ICMP input histogram:

destination unreachable: 98

redirects: 29362

2918 ICMP messages sent

0 ICMP messages failed

ICMP output histogram:

destination unreachable: 2918

IcmpMsg:

InType3: 98

InType5: 29362

OutType3: 2918

Tcp:

94533 active connections openings

23 passive connection openings

5870 failed connection attempts

7194 connection resets received

....

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

[avishek@tecmint ~]$ netstat -an

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

[avishek@tecmint ~]$ netstat -c

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

43.命令:nslookup

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

[avishek@tecmint~]$ nslookup tecmint.com

Server:     192.168.1.1

Address:    192.168.1.1

#53

Non-authoritative answer:

Name:   tecmint.com

Address: 50.16.67.239

查询邮件交换器记录

[avishek@tecmint ~]$ nslookup -query=mx tecmint.com

Server:     192.168.1.1

Address:    192.168.1.1

#53

Non-authoritative answer:

tecmint.com mail exchanger = 0 smtp.secureserver.net.

tecmint.com mail exchanger = 10 mailstore1.secureserver.net.

Authoritative answers can be found from:

查询域名服务器

[avishek@tecmint ~]$ nslookup -type=ns tecmint.com

Server:     192.168.1.1

Address:    192.168.1.1

#53

Non-authoritative answer:

tecmint.com nameserver = ns3404.com.

tecmint.com nameserver = ns3403.com.

Authoritative answers can be found from:

查询DNS记录

[avishek@tecmint ~]$ nslookup -type=any tecmint.com

Server:     192.168.1.1

Address:    192.168.1.1

#53

Non-authoritative answer:

tecmint.com mail exchanger = 10 mailstore1.secureserver.net.

tecmint.com mail exchanger = 0 smtp.secureserver.net.

tecmint.com nameserver = ns06.domaincontrol.com.

tecmint.com nameserver = ns3404.com.

tecmint.com nameserver = ns3403.com.

tecmint.com nameserver = ns05.domaincontrol.com.

Authoritative answers can be found from:

查询起始授权机构

[avishek@tecmint ~]$ nslookup -type=soa tecmint.com

Server:     192.168.1.1

Address:    192.168.1.1

#53

Non-authoritative answer:

tecmint.com

origin = ns3403.hostgator.com

mail addr = dnsadmin.gator1702.hostgator.com

serial = 2012081102

refresh = 86400

retry = 7200

expire = 3600000

minimum = 86400

Authoritative answers can be found from:

查询端口号

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

[avishek@tecmint ~]$ nslookup -port 56 tecmint.com

Server:     tecmint.com

Address:    50.16.76.239

#53

Name:   56

Address: 14.13.253.12

44.命令:dig

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

[avishek@tecmint ~]$ dig tecmint.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com

;; global options: +cmd

;; Got answer:

;; ->>HEADER<

关闭注释行

[avishek@tecmint ~]$ dig tecmint.com +nocomments

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com +nocomments

;; global options: +cmd

;tecmint.com.           IN  A

tecmint.com.        14400   IN  A   40.216.66.239

;; Query time: 418 msec

;; SERVER: 192.168.1.1

#53(192.168.1.1)

;; WHEN: Sat Jun 29 13:53:22 2013

;; MSG SIZE  rcvd: 45

关闭认证块

[avishek@tecmint ~]$ dig tecmint.com +noauthority

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com +noauthority

;; global options: +cmd

;; Got answer:

;; ->>HEADER<

关闭 其他 块

[avishek@tecmint ~]$ dig  tecmint.com +noadditional

; <<>> DiG 9.9.2-P1 <<>> tecmint.com +noadditional

;; global options: +cmd

;; Got answer:

;; ->>HEADER<

关闭 统计块

[avishek@tecmint ~]$ dig tecmint.com +nostats

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com +nostats

;; global options: +cmd

;; Got answer:

;; ->>HEADER<

关闭回复块

[avishek@tecmint ~]$ dig tecmint.com +noanswer

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com +noanswer

;; global options: +cmd

;; Got answer:

;; ->>HEADER<

关闭所有块

[avishek@tecmint ~]$ dig tecmint.com +noall

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> tecmint.com +noall

;; global options: +cmd

阅读更多10个LinuxDig命令实例

45.命令:uptime

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

[avishek@tecmint ~]$ uptime

14:37:10 up  4:21,  2 users,  load average: 0.00, 0.00, 0.04

46.命令:wall

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

[avishek@tecmint ~]$ wall "we will be going down for maintenance for one hour sharply at 03:30 pm"

Broadcast message from root@localhost.localdomain (pts/0) (Sat Jun 29 14:44:02 2013):

we will be going down for maintenance for one hour sharply at 03:30 pm

47.命令:mesg

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

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 机器的屏幕。.

[avishek@tecmint ~]$ write ravisaive

49.命令:talk

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

[avishek@tecmint ~]$ talk ravisaive

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

[avishek@tecmint ~]$ yum install talk

OR

[avishek@tecmint ~]$ apt-get install talk

50.命令:w

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

[avishek@tecmint ~]$w

15:05:42 up  4:49,  3 users,  load average: 0.02, 0.01, 0.00

USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT

server   tty7     :0               14:06    4:43m  1:42   0.08s pam: gdm-passwo

server   pts/0    :0.0             14:18    0.00s  0.23s  1.65s gnome-terminal

server   pts/1    :0.0             14:47    4:43   0.01s  0.01s bash

51. 命令: rename

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

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

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

rename a1 a0 a

rename a1 a0 a

52.命令:top

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

[avishek@tecmint ~]$ top

top - 14:06:45 up 10 days, 20:57,  2 users,  load average: 0.10, 0.16, 0.21

Tasks: 240 total,   1 running, 235 sleeping,   0 stopped,   4 zombie

%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

KiB Mem:   2028240 total,  1777848 used,   250392 free,    81804 buffers

KiB Swap:  3905532 total,   156748 used,  3748784 free,   381456 cached

PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+ COMMAND                                        23768 ravisaiv  20   0 1428m 571m  41m S   2.3 28.9  14:27.52 firefox                                                      24182 ravisaiv  20   0  511m 132m  25m S   1.7  6.7   2:45.94 plugin-containe                                        26929 ravisaiv  20   0  5344 1432  972 R   0.7  0.1   0:00.07 top                                                                  24875 ravisaiv  20   0  263m  14m  10m S   0.3  0.7   0:02.76 lxterminal                                                   1 root      20   0  3896 1928 1228 S   0.0  0.1   0:01.62 init

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


公益传播测试知识、技能与正能量!感谢作者!分享测试生活,思考测试人生!
文章图片来自网络,如有侵权请见谅,请联系我们妥善处理。
twftesting@163.com


欢迎加入我们:

官网:www.huicewang.com
中国软件测试群: 172923163  

测试编程技术交流群: 231767115  

性能测试技术交流群: 385202672

咨询QQ:2657535456

公众号:慧测


【声明】内容源于网络
0
0
慧测
专注人工智能前沿技术落地企业实战应用
内容 404
粉丝 0
慧测 专注人工智能前沿技术落地企业实战应用
总阅读104
粉丝0
内容404