ifconfig
用于配置内核常驻网络接口。它用于在启动时根据需要设置接口。
[[email protected]local ~]$ 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
显示所有接口的详细信息
[[email protected]local ~]$ ifconfig -aeth0 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)
[[email protected]local ~]$ ifconfig eth0 down
[[email protected]local ~]$ ifconfig eth0 up
指定
192.168.1.12
作为网卡 eth0 的 IP 地址。
[[email protected]local ~]$ ifconfig eth0 192.168.1.12
[[email protected]local ~]$ ifconfig eth0 netmask 255.255.255.
[[email protected]local ~]$ ifconfig eth0 broadcast 192.168.1.255
[[email protected]local ~]$ ifconfig eth0 192.168.1.12 netmask 255.255.255.0 broadcast 192.168.1.255
Note
: 如果使用无线网络,则需要使用命令iwconfig
。欲了解更多ifconfig
命令示例和用法,请阅读[15 个有用的ifconfig
命令]。
netstat
命令显示各种网络相关信息,如网络连接、路由表
[[email protected]local ~]$ netstat -aActive 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
unix 2 [ ACC ] STREAM LISTENING 13332 /var/run/samba/winbindd_privileged/pipe
unix 2 [ ACC ] STREAM LISTENING 13331 /tmp/.winbindd/pipe
unix 2 [ ACC ] STREAM LISTENING 11030 /var/run/mysqld/mysqld.sock
unix 2 [ ACC ] STREAM LISTENING 19308 /tmp/ssh-qnZadSgJAbqd/agent.3221
unix 2 [ ACC ] STREAM LISTENING 436781 /tmp/HotShots
unix 2 [ ACC ] STREAM LISTENING 46110 /run/user/ravisaive/pulse/native
unix 2 [ ACC ] STREAM LISTENING 19310 /tmp/gpg-zfE9YT/S.gpg-agent
....
[[email protected]local ~]$ netstat -atActive 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
tcp 0 0 ravisaive-OptiPl:domain *:* LISTEN
tcp 0 0 ravisaive-OptiPl:domain *:* LISTEN
tcp 0 0 localhost:ipp *:* LISTEN
tcp 0 0 ravisaive-OptiPle:48270 ec2-23-21-236-70.c:http ESTABLISHED
tcp 0 0 ravisaive-OptiPle:48272 ec2-23-21-236-70.c:http TIME_WAIT
tcp 0 0 ravisaive-OptiPle:48421 bom03s01-in-f22.1:https ESTABLISHED
tcp 0 0 ravisaive-OptiPle:48269 ec2-23-21-236-70.c:http ESTABLISHED
tcp 0 0 ravisaive-OptiPle:39084 channel-ecmp-06-f:https ESTABLISHED
...
[[email protected]local ~]$ netstat -sIp:
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 的输出。
[[email protected]local ~]$ netstat -an
你可能需要不断获取 netstat 的输出,直到通过中断指令(
ctrl+c
)。
[[email protected]local ~]$ netstat -c
一种网络实用程序,用于获取有关 Internet 服务器的信息。顾名思义,该实用程序通过查询来查找域的名称服务器信息
DNS
.
[[email protected]local ~]$ nslookup rumenz.com Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
Name: rumenz.com
Address: 50.16.67.239
[[email protected]local ~]$ nslookup -query=mx rumenz.com Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
rumenz.com mail exchanger = 0 smtp.secureserver.net.
rumenz.com mail exchanger = 10 mailstore1.secureserver.net.
Authoritative answers can be found from:
[[email protected]local ~]$ nslookup -type=ns rumenz.com Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
rumenz.com nameserver = ns3404.com.
rumenz.com nameserver = ns3403.com.
Authoritative answers can be found from:
[[email protected]local ~]$ nslookup -type=any rumenz.com Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
rumenz.com mail exchanger = 10 mailstore1.secureserver.net.
rumenz.com mail exchanger = 0 smtp.secureserver.net.
rumenz.com nameserver = ns06.domaincontrol.com.
rumenz.com nameserver = ns3404.com.
rumenz.com nameserver = ns3403.com.
rumenz.com nameserver = ns05.domaincontrol.com.
Authoritative answers can be found from:
[[email protected]local ~]$ nslookup -type=soa rumenz.com Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
rumenz.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:
更改要连接的端口号
[[email protected]local ~]$ nslookup -port 56 rumenz.comServer: rumenz.com
Address: 50.16.76.239#53
Name: 56
Address: 14.13.253.12
dig
是一个查询工具DNS
nameservers 获取有关主机地址、邮件交换、名称服务器和相关信息的信息。这个工具可以在任何 Linux (Unix
) 或Macintosh OS X
操作系统。最典型的用途dig
是简单地查询单个主机。
[[email protected]local ~]$ dig rumenz.com; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
[[email protected]local ~]$ dig rumenz.com +nocomments ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com +nocomments
;; global options: +cmd
;rumenz.com. IN A
rumenz.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
[[email protected]local ~]$ dig rumenz.com +noauthority ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com +noauthority
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
[[email protected]local ~]$ dig rumenz.com +noadditional ; <<>> DiG 9.9.2-P1 <<>> rumenz.com +noadditional
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
[[email protected]local ~]$ dig rumenz.com +nostats ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com +nostats
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
[[email protected]local ~]$ dig rumenz.com +noanswer ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com +noanswer
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
[[email protected]local ~]$ dig rumenz.com +noall ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> rumenz.com +noall
;; global options: +cmd
uptime命令能够打印系统总共运行了多长时间和系统的平均负载
[[email protected]local ~]$ uptime14:37:10 up 4:21, 2 users, load average: 0.00, 0.00, 0.04
管理员最重要的命令之一,
wall
向使用他们登录的每个人发送消息mesg
权限设置为yes
。该消息可以作为参数给出wall
,也可以发送到 wall 的标准输入。
[[email protected]local ~]$ wall "we will be going down for maintenance for one hour sharply at 03:30 pm"Broadcast message from [email protected] (pts/0) (Sat Jun 29 14:44:02 2013):
we will be going down for maintenance for one hour sharply at 03:30 pm
让你控制人们是否可以使用
write
命令,通过屏幕向你发送文本。
mesg [n|y]
n - prevents the message from others popping up on the screen.
y – Allows messages to appear on your screen.
让你直接将文本发送到另一台 Linux 机器的屏幕,如果
mesg
是y
。
[[email protected]local ~]$ write ravisaive
对
write
命令,talk
命令可让你与登录用户交谈。
[[email protected]local ~]$ talk ravisaive
Note
: 如果talk
命令未安装,你可以随时apt
或yum
所需的包。
[[email protected]local ~]$ yum install talk
OR
[[email protected]local ~]$ apt-get install talk
什么命令
w
看起来你很有趣吗?但实际上并非如此。这是一个命令,即使它只有一个字母长!命令w
的组合uptime
和who
命令一个接一个地发出,按照这个顺序。
[[email protected]local ~]$ w15:05:42 up 4:49, 3 users, load average: 0.02, 0.01, 0.00
USER TTY FROM [email protected] 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
顾名思义,此命令重命名文件。rename 将通过替换文件名中的第一个匹配项来重命名指定的文件。
Give the file names a1, a2, a3, a4.....1213
只需键入命令。
rename a1 a0 a?
rename a1 a0 a??
显示进程
CPU
.默认情况下,此命令会自动刷新并继续显示CPU
除非给出中断指令,否则处理。
[[email protected]local ~]$ toptop - 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
2 root 20 0 0 0 0 S 0.0 0.0 0:00.06 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:17.28 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
7 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/u:0H
8 root rt 0 0 0 0 S 0.0 0.0 0:00.12 migration/0
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
10 root 20 0 0 0 0 S 0.0 0.0 0:26.94 rcu_sched
11 root rt 0 0 0 0 S 0.0 0.0 0:01.95 watchdog/0
12 root rt 0 0 0 0 S 0.0 0.0 0:02.00 watchdog/1
13 root 20 0 0 0 0 S 0.0 0.0 0:17.80 ksoftirqd/1
14 root rt 0 0 0 0 S 0.0 0.0 0:00.12 migration/1
16 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/1:0H
17 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 cpuset
18 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 khelper
19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs
20 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 netns
21 root 20 0 0 0 0 S 0.0 0.0 0:00.04 bdi-default
22 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kintegrityd
23 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kblockd
24 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 ata_sff
此命令创建一个新的
ext4
指定设备上的文件系统,如果在此命令后跟随错误的设备,整个块将被擦除和格式化,因此建议不要运行此命令,除非并且直到你明白你在做什么。
Mkfs.ext4 /dev/sda1 (sda1 block will be formatted)
mkfs.ext4 /dev/sdb1 (sdb1 block will be formatted)
vi
,emacs
,nano
是 Linux 中一些最常用的编辑器。它们通常用于编辑文本、配置、文件。
[[email protected]local ~]$ touch a.txt (creates a text file a.txt)
[[email protected]local ~]$ vi a.txt (open a.txt with vi editor)
[按i
进入插入模式,否则你将无法输入任何内容]
echo "Hello" (your text here for the file)
alt+x
(退出插入模式,记得在最后一个字母之间保留一些空格。ctrl+x
命令或你的最后一句话将被删除)。:wq!
(保存文件,用当前文本,记住!
是覆盖)。[[email protected]local ~]$ nano a.txt (open a.txt file to be edited with nano)
edit, with the content, required
ctrl +x(关闭编辑器)。它将显示输出为:
Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES) ?
Y Yes
N No ^C Cancel
点击
y
到 yes 并输入文件名,你就完成了。
Rsync
复制文件并有一个-P
切换进度条。所以如果你安装了 rsync,你可以使用一个简单的别名。
alias cp='rsync -aP'
现在尝试在终端中复制一个大文件并查看包含剩余项目的输出,类似于进度条。
此外,保持和维护备份是系统管理员需要执行的最重要和最无聊的工作之一。Rsync 是一个非常好的工具(存在,还有其他几个)用于在终端中创建和维护备份。
[[email protected]local ~]$ rsync -zvr IMG_5267\ copy\=33\ copy\=ok.jpg ~/Desktop/ sending incremental file list
IMG_5267 copy=33 copy=ok.jpg
sent 2883830 bytes received 31 bytes 5767722.00 bytes/sec
total size is 2882771 speedup is 1.00
Note
:-z
用于压缩,-v 用于详细,-r 用于递归。
跟踪内存和资源与管理员执行的任何其他任务一样重要,并且
free
命令来拯救这里。
[[email protected]local ~]$ free total used free shared buffers cached
Mem: 2028240 1788272 239968 0 69468 363716
-/+ buffers/cache: 1355088 673152
Swap: 3905532 157076 3748456
[[email protected]local ~]$ free -b total used free shared buffers cached
Mem: 2076917760 1838272512 238645248 0 71348224 372670464
-/+ buffers/cache: 1394253824 682663936
Swap: 3999264768 160845824 3838418944
[[email protected]local ~]$ free -k total used free shared buffers cached
Mem: 2028240 1801484 226756 0 69948 363704
-/+ buffers/cache: 1367832 660408
Swap: 3905532 157076 3748456
[[email protected]local ~]$ free -m total used free shared buffers cached
Mem: 1980 1762 218 0 68 355
-/+ buffers/cache: 1338 641
Swap: 3813 153 3660
[[email protected]local ~]$ free -g total used free shared buffers cached
Mem: 1 1 0 0 0 0
-/+ buffers/cache: 1 0
Swap: 3 0 3
[[email protected]local ~]$ free -h total used free shared buffers cached
Mem: 1.9G 1.7G 208M 0B 68M 355M
-/+ buffers/cache: 1.3G 632M
Swap: 3.7G 153M 3.6G
[[email protected]local ~]$ free -s 3 total used free shared buffers cached
Mem: 2028240 1824096 204144 0 70708 364180
-/+ buffers/cache: 1389208 639032
Swap: 3905532 157076 3748456
total used free shared buffers cached
Mem: 2028240 1824192 204048 0 70716 364212
-/+ buffers/cache: 1389264 638976
Swap: 3905532 157076 3748456
你应该已经从该命令的名称中了解了该命令的实际含义。
mysqldump
命令将所有或特定的数据库数据转储(备份)到给定的文件中。例如,
[[email protected]local ~]$ mysqldump -u root -p --all-databases > /home/server/Desktop/backupfile.sql
Note
:mysqldump
需要运行 mysql 并正确密码进行授权。我们已经介绍了一些有用的mysqldump
使用 mysqldump命令进行数据库备份的命令
制作指定长度的难以猜测的随机密码。
[[email protected]local ~]$ mkpasswd -l 10zI4+Ybqfx9
[[email protected]local ~]$ mkpasswd -l 20 w0Pr7aqKk&hmbmqdrlmk
Note
:-l 10
生成一个随机密码10
字符而-l 20
生成字符密码20
,它可以设置为任何以获得所需的结果。此命令非常有用,通常以脚本语言实现以生成随机密码。你可能需要yum
或apt
expect' 包来使用这个命令。
[[email protected] ~]# yum install expect
OR
[[email protected] ~]# apt-get install expect
使用行合并两个或多个文本文件
[[email protected]local ~] cat rumenz1.txt #rumenz1.txt文件的内容
1
2
3
[[email protected]local ~] cat rumenz2.txt #rumenz2.txt 文件的内容
4
[[email protected]local ~] cat rumenz3.txt #rumenz3.txt文件的内容
5
6
[[email protected]local ~] paste rumenz1.txt rumenz2.txt rumenz3.txt
1
2
3
4
5
6
lsof
代表list open files
并显示你的系统当前打开的所有文件。找出哪些进程使用某个文件或显示单个进程的所有文件非常有用。
[[email protected]local ~]$ lsof COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
init 1 root cwd DIR 8,1 4096 2 /
init 1 root rtd DIR 8,1 4096 2 /
init 1 root txt REG 8,1 227432 395571 /sbin/init
...