20 คำสั่งขั้นสูงสำหรับผู้เชี่ยวชาญ Linux
ขอบคุณสำหรับทุกไลค์ คำพูดดีๆ และการสนับสนุนที่คุณมอบให้เราในสองส่วนแรกของบทความนี้ ในบทความแรก เราได้พูดถึงคำสั่งสำหรับผู้ใช้ที่เพิ่งเปลี่ยนมาใช้ Linux และต้องการความรู้ที่จำเป็นในการเริ่มต้น
- 20 คำสั่งที่เป็นประโยชน์สำหรับมือใหม่ Linux
ในบทความที่สอง เราได้พูดถึงคำสั่งที่ผู้ใช้ ระดับกลาง ต้องใช้ในการจัดการระบบของตนเอง
- 20 คำสั่งขั้นสูงสำหรับผู้ใช้ Linux ระดับกลาง
อะไรต่อไป? ในบทความนี้ ผมจะอธิบายคำสั่งที่จำเป็นสำหรับการดูแลระบบ Linux Server
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 ให้กับอินเทอร์เฟซ
กำหนด “192.168.1.12” เป็นที่อยู่ IP สำหรับอินเทอร์เฟซ eth0
[avishek@tecmint ~]$ ifconfig eth0 192.168.1.12
เปลี่ยน Subnet Mask ของอินเทอร์เฟซ eth0
[avishek@tecmint ~]$ ifconfig eth0 netmask 255.255.255.
เปลี่ยนที่อยู่การออกอากาศของอินเทอร์เฟซ eth0
[avishek@tecmint ~]$ ifconfig eth0 broadcast 192.168.1.255
กำหนดที่อยู่ IP, Netmask และ Broadcast ให้กับอินเทอร์เฟซ eth0
[avishek@tecmint ~]$ ifconfig eth0 192.168.1.12 netmask 255.255.255.0 broadcast 192.168.1.255
หมายเหตุ: หากใช้เครือข่ายไร้สาย คุณต้องใช้คำสั่ง “iwconfig“ หากต้องการดูตัวอย่างและการใช้คำสั่ง “ifconfig” เพิ่มเติม โปรดอ่านคำสั่ง “ifconfig ” ที่มีประโยชน์ 15 คำสั่ง
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
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
....
แสดงรายการพอร์ต 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
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
...
แสดงสถิติสำหรับพอร์ตทั้งหมด
[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 linux-console.net
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
Name: linux-console.net
Address: 50.16.67.239
แบบสอบถามบันทึก Exchanger Mail
[avishek@tecmint ~]$ nslookup -query=mx linux-console.net
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
linux-console.net mail exchanger = 0 smtp.secureserver.net.
linux-console.net mail exchanger = 10 mailstore1.secureserver.net.
Authoritative answers can be found from:
เซิร์ฟเวอร์ชื่อแบบสอบถาม
[avishek@tecmint ~]$ nslookup -type=ns linux-console.net
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
linux-console.net nameserver = ns3404.com.
linux-console.net nameserver = ns3403.com.
Authoritative answers can be found from:
สอบถามบันทึก DNS
[avishek@tecmint ~]$ nslookup -type=any linux-console.net
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
linux-console.net mail exchanger = 10 mailstore1.secureserver.net.
linux-console.net mail exchanger = 0 smtp.secureserver.net.
linux-console.net nameserver = ns06.domaincontrol.com.
linux-console.net nameserver = ns3404.com.
linux-console.net nameserver = ns3403.com.
linux-console.net nameserver = ns05.domaincontrol.com.
Authoritative answers can be found from:
แบบสอบถามการเริ่มต้นอำนาจ
[avishek@tecmint ~]$ nslookup -type=soa linux-console.net
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
linux-console.net
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 linux-console.net
Server: linux-console.net
Address: 50.16.76.239#53
Name: 56
Address: 14.13.253.12
อ่านเพิ่มเติม : 8 คำสั่ง Nslookup
44. คำสั่ง: ขุด
dig เป็นเครื่องมือสำหรับค้นหาเนมเซิร์ฟเวอร์ DNS เพื่อขอข้อมูลเกี่ยวกับที่อยู่โฮสต์ การแลกเปลี่ยนอีเมล เนมเซิร์ฟเวอร์ และข้อมูลที่เกี่ยวข้อง เครื่องมือนี้สามารถใช้ได้จากระบบปฏิบัติการ Linux (Unix) หรือ Macintosh OS X ใดก็ได้ การใช้งาน dig ทั่วไปส่วนใหญ่คือการสืบค้นโฮสต์เดียว
[avishek@tecmint ~]$ dig linux-console.net
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> linux-console.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
ปิดบรรทัดแสดงความคิดเห็น
[avishek@tecmint ~]$ dig linux-console.net +nocomments
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> linux-console.net +nocomments
;; global options: +cmd
;linux-console.net. IN A
linux-console.net. 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 linux-console.net +noauthority
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> linux-console.net +noauthority
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
ปิดส่วนเพิ่มเติม
[avishek@tecmint ~]$ dig linux-console.net +noadditional
; <<>> DiG 9.9.2-P1 <<>> linux-console.net +noadditional
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
ปิดส่วนสถิติ
[avishek@tecmint ~]$ dig linux-console.net +nostats
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> linux-console.net +nostats
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
ปิดส่วนคำตอบ
[avishek@tecmint ~]$ dig linux-console.net +noanswer
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> linux-console.net +noanswer
;; global options: +cmd
;; Got answer:
;; ->>HEADER<
ปิดการใช้งานส่วนทั้งหมดพร้อมกัน
[avishek@tecmint ~]$ dig linux-console.net +noall
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6 <<>> linux-console.net +noall
;; global options: +cmd
อ่านเพิ่มเติม : 10 ตัวอย่างคำสั่ง Linux Dig
45. คำสั่ง: สถานะการออนไลน์
คุณเพิ่งเชื่อมต่อกับ เครื่องเซิร์ฟเวอร์ Linux และพบสิ่งผิดปกติหรือเป็นอันตราย คุณจะทำอย่างไร? คาดเดา…. ไม่ คุณไม่สามารถเรียกใช้ เวลาทำงาน เพื่อตรวจสอบสิ่งที่เกิดขึ้นจริงเมื่อเซิร์ฟเวอร์ไม่มีผู้ดูแลได้
[avishek@tecmint ~]$ uptime
14:37:10 up 4:21, 2 users, load average: 0.00, 0.00, 0.04
46. คำสั่ง: ผนัง
หนึ่งในคำสั่งที่สำคัญที่สุดสำหรับผู้ดูแลระบบ วอลล์ ส่งข้อความถึงทุกคนที่เข้าสู่ระบบโดยตั้งค่าสิทธิ์ mesg เป็น “ใช่“ สามารถกำหนดข้อความเป็นอาร์กิวเมนต์ไปที่ วอลล์ หรือสามารถส่งไปยังอินพุตมาตรฐานของวอลล์ได้
[avishek@tecmint ~]$ wall "we will be going down for maintenance for one hour sharply at 03:30 pm"
Broadcast message from [email (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 [n|y]
n - prevents the message from others popping up on the screen.
y – Allows messages to appear on your screen.
48. คำสั่ง: เขียน
ให้คุณส่งข้อความโดยตรงไปยังหน้าจอของเครื่อง Linux อื่นหาก 'mesg' คือ 'y'
[avishek@tecmint ~]$ write ravisaive
49. คำสั่ง: พูด
คำสั่ง เขียน ที่ได้รับการปรับปรุง คำสั่ง พูดคุย ช่วยให้คุณสามารถพูดคุยกับผู้ใช้ที่เข้าสู่ระบบได้
[avishek@tecmint ~]$ talk ravisaive
หมายเหตุ: หากไม่ได้ติดตั้งคำสั่ง talk คุณสามารถ apt หรือ yum แพ็คเกจที่จำเป็นได้ตลอดเวลา
[avishek@tecmint ~]$ yum install talk
OR
[avishek@tecmint ~]$ apt-get install talk
50. คำสั่ง: ว
คำสั่ง '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 จะเปลี่ยนชื่อไฟล์ที่ระบุโดยแทนที่ไฟล์แรกที่เกิดขึ้นจากชื่อไฟล์
Give the file names a1, a2, a3, a4.....1213
เพียงพิมพ์คำสั่ง
rename a1 a0 a?
rename a1 a0 a??
52. คำสั่ง: ด้านบน
แสดงกระบวนการของ 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
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
อ่านเพิ่มเติม : 12 ตัวอย่างคำสั่ง TOP
53. คำสั่ง: mkfs.ext4
คำสั่งนี้สร้างระบบไฟล์ ext4 ใหม่บนอุปกรณ์ที่ระบุ หากติดตามอุปกรณ์ผิดหลังจากคำสั่งนี้ บล็อกทั้งหมดจะถูกล้างและฟอร์แมต ดังนั้นจึงแนะนำว่าอย่ารันคำสั่งนี้เว้นแต่และจนกว่า คุณเข้าใจสิ่งที่คุณกำลังทำ
Mkfs.ext4 /dev/sda1 (sda1 block will be formatted)
mkfs.ext4 /dev/sdb1 (sdb1 block will be formatted)
อ่านเพิ่มเติม: Ext4 คืออะไร และวิธีการสร้างและแปลง
54. คำสั่ง: vi/emacs/nano
vi (ภาพ), emacs, nano คือโปรแกรมแก้ไขบางส่วนที่ใช้บ่อยที่สุดใน Linux มักใช้เพื่อแก้ไขข้อความ การกำหนดค่า... ไฟล์ คำแนะนำอย่างรวดเร็วเกี่ยวกับ vi และ nano คือ emacs คือ a
vi-บรรณาธิการ
[avishek@tecmint ~]$ touch a.txt (creates a text file a.txt)
[avishek@tecmint ~]$ vi a.txt (open a.txt with vi editor)
echo "Hello" (your text here for the file)
- alt+x (ออกจากโหมดแทรก อย่าลืมเว้นช่องว่างระหว่างตัวอักษรตัวสุดท้าย
- ctrl+x คำสั่ง ไม่เช่นนั้นคำสุดท้ายของคุณจะถูกลบ)
- :wq! (บันทึกไฟล์ด้วยข้อความปัจจุบัน จำไว้ว่า '!' คือการแทนที่)
โปรแกรมแก้ไขนาโน
[avishek@tecmint ~]$ 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' เพื่อใช่และป้อนชื่อไฟล์ เท่านี้ก็เสร็จสิ้น
55. คำสั่ง: rsync
Rsync คัดลอกไฟล์และมีสวิตช์ -P สำหรับแถบความคืบหน้า ดังนั้นหากคุณติดตั้ง rsync คุณสามารถใช้นามแฝงง่ายๆ ได้
alias cp='rsync -aP'
ตอนนี้ให้ลองคัดลอกไฟล์ขนาดใหญ่ในเทอร์มินัลและดูผลลัพธ์ที่มีรายการที่เหลือ คล้ายกับแถบความคืบหน้า
นอกจากนี้ การเก็บและบำรุงรักษาการสำรองข้อมูลถือเป็นงานที่สำคัญและน่าเบื่ออย่างหนึ่งที่ผู้ดูแลระบบจำเป็นต้องดำเนินการ Rsync เป็นเครื่องมือที่ดีมาก (มีอยู่หลายตัว) ในการสร้างและดูแลรักษาการสำรองข้อมูลในเทอร์มินัล
[avishek@tecmint ~]$ 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
หมายเหตุ: -z สำหรับการบีบอัด -v สำหรับรายละเอียด และ -r สำหรับการเกิดซ้ำ
56. คำสั่ง: ฟรี
การติดตามหน่วยความจำและทรัพยากรมีความสำคัญพอๆ กับงานอื่นๆ ที่ผู้ดูแลระบบดำเนินการ และคำสั่ง 'ฟรี' ก็เข้ามาช่วยเหลือที่นี่
สถานะการใช้งานปัจจุบันของหน่วยความจำ
[avishek@tecmint ~]$ free
total used free shared buffers cached
Mem: 2028240 1788272 239968 0 69468 363716
-/+ buffers/cache: 1355088 673152
Swap: 3905532 157076 3748456
ปรับเอาต์พุตเป็น KB หรือ MB หรือ GB
[avishek@tecmint ~]$ free -b
total used free shared buffers cached
Mem: 2076917760 1838272512 238645248 0 71348224 372670464
-/+ buffers/cache: 1394253824 682663936
Swap: 3999264768 160845824 3838418944
[avishek@tecmint ~]$ free -k
total used free shared buffers cached
Mem: 2028240 1801484 226756 0 69948 363704
-/+ buffers/cache: 1367832 660408
Swap: 3905532 157076 3748456
[avishek@tecmint ~]$ free -m
total used free shared buffers cached
Mem: 1980 1762 218 0 68 355
-/+ buffers/cache: 1338 641
Swap: 3813 153 3660
[avishek@tecmint ~]$ free -g
total used free shared buffers cached
Mem: 1 1 0 0 0 0
-/+ buffers/cache: 1 0
Swap: 3 0 3
ตรวจสอบการใช้งานปัจจุบันในรูปแบบที่มนุษย์สามารถอ่านได้
[avishek@tecmint ~]$ 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
ตรวจสอบสถานะอย่างต่อเนื่องหลังจากช่วงเวลาปกติ
[avishek@tecmint ~]$ 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
อ่านเพิ่มเติม : 10 ตัวอย่างคำสั่งอิสระ
57. คำสั่ง: mysqldump
โอเค จนถึงตอนนี้ คุณคงเข้าใจแล้วว่าจริงๆ แล้วคำสั่งนี้ย่อมาจากอะไร จากชื่อของคำสั่งนี้ คำสั่ง mysqldump จะดัมพ์ (สำรองข้อมูล) ข้อมูลฐานข้อมูลทั้งหมดหรือเฉพาะเจาะจงลงในไฟล์ที่กำหนด ตัวอย่างเช่น
[avishek@tecmint ~]$ mysqldump -u root -p --all-databases > /home/server/Desktop/backupfile.sql
หมายเหตุ: mysqldump กำหนดให้ mysql ทำงานและแก้ไขรหัสผ่านเพื่อขออนุญาต เราได้ครอบคลุมคำสั่ง “mysqldump” ที่เป็นประโยชน์บางส่วนในการสำรองฐานข้อมูลด้วยคำสั่ง mysqldump
58. คำสั่ง: mkpasswd
จัดทำรหัสผ่านสุ่มเดายากตามความยาวที่กำหนด
[avishek@tecmint ~]$ mkpasswd -l 10
zI4+Ybqfx9
[avishek@tecmint ~]$ mkpasswd -l 20
w0Pr7aqKk&hmbmqdrlmk
หมายเหตุ: -l 10 สร้างรหัสผ่านแบบสุ่มที่มีอักขระ 10 ในขณะที่ -l 20 สร้างรหัสผ่านอักขระ 20 สามารถตั้งค่าเป็นอะไรก็ได้เพื่อให้ได้ผลลัพธ์ที่ต้องการ คำสั่งนี้มีประโยชน์มากและนำไปใช้ในภาษาสคริปต์เพื่อสร้างรหัสผ่านแบบสุ่ม คุณอาจต้อง yum หรือ apt แพ็คเกจ 'คาดหวัง' เพื่อใช้คำสั่งนี้
[root@tecmint ~]# yum install expect
OR
[root@tecmint ~]# apt-get install expect
59. คำสั่ง: วาง
รวมไฟล์ข้อความสองไฟล์ขึ้นไปในบรรทัดโดยใช้ ตัวอย่าง. หากเนื้อหาของ file1 คือ:
1
2
3
and file2 was:
a
b
c
d
the resulting file3 would be:
1 a
2 b
3 c
d
60.คำสั่ง: lsof
lsof ย่อมาจาก “รายการไฟล์ที่เปิดอยู่ ” และแสดงไฟล์ทั้งหมดที่ระบบของคุณเปิดอยู่ในปัจจุบัน มีประโยชน์มากในการพิจารณาว่ากระบวนการใดใช้ไฟล์บางไฟล์ หรือเพื่อแสดงไฟล์ทั้งหมดสำหรับกระบวนการเดียว ตัวอย่างคำสั่ง 10 lsof ที่มีประโยชน์ คุณอาจสนใจอ่าน
[avishek@tecmint ~]$ 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
init 1 root mem REG 8,1 47080 263023 /lib/i386-linux-gnu/libnss_files-2.17.so
init 1 root mem REG 8,1 42672 270178 /lib/i386-linux-gnu/libnss_nis-2.17.so
init 1 root mem REG 8,1 87940 270187 /lib/i386-linux-gnu/libnsl-2.17.so
init 1 root mem REG 8,1 30560 263021 /lib/i386-linux-gnu/libnss_compat-2.17.so
init 1 root mem REG 8,1 124637 270176 /lib/i386-linux-gnu/libpthread-2.17.so
init 1 root mem REG 8,1 1770984 266166 /lib/i386-linux-gnu/libc-2.17.so
init 1 root mem REG 8,1 30696 262824 /lib/i386-linux-gnu/librt-2.17.so
init 1 root mem REG 8,1 34392 262867 /lib/i386-linux-gnu/libjson.so.0.1.0
init 1 root mem REG 8,1 296792 262889 /lib/i386-linux-gnu/libdbus-1.so.3.7.2
init 1 root mem REG 8,1 34168 262840 /lib/i386-linux-gnu/libnih-dbus.so.1.0.0
init 1 root mem REG 8,1 95616 262848 /lib/i386-linux-gnu/libnih.so.1.0.0
init 1 root mem REG 8,1 134376 270186 /lib/i386-linux-gnu/ld-2.17.so
init 1 root 0u CHR 1,3 0t0 1035 /dev/null
init 1 root 1u CHR 1,3 0t0 1035 /dev/null
init 1 root 2u CHR 1,3 0t0 1035 /dev/null
init 1 root 3r FIFO 0,8 0t0 1714 pipe
init 1 root 4w FIFO 0,8 0t0 1714 pipe
init 1 root 5r 0000 0,9 0 6245 anon_inode
init 1 root 6r 0000 0,9 0 6245 anon_inode
init 1 root 7u unix 0xf5e91f80 0t0 8192 @/com/ubuntu/upstart
init 1 root 8w REG 8,1 3916 394 /var/log/upstart/teamviewerd.log.1 (deleted)
นี่ไม่ใช่จุดสิ้นสุด ผู้ดูแลระบบ ทำสิ่งต่างๆ มากมายเพื่อให้คุณมีอินเทอร์เฟซที่ดีเพื่อใช้ในการทำงาน จริงๆ แล้วการบริหารระบบเป็นศิลปะแห่งการเรียนรู้และการนำไปใช้อย่างสมบูรณ์แบบมาก เราจะพยายามนำเสนอสิ่งที่จำเป็นอื่นๆ ทั้งหมดที่มืออาชีพ Linux ต้องเรียนรู้ ลินุกซ์โดยพื้นฐานแล้วคือกระบวนการของการเรียนรู้และการเรียนรู้ คำพูดดีๆ ของคุณมักถูกค้นหาอยู่เสมอ ซึ่งสนับสนุนให้เราพยายามมากขึ้นในการจัดหาบทความที่ให้ความรู้แก่คุณ “กดไลค์และแชร์เรา เพื่อช่วยให้เราเผยแพร่ ”