ค้นหาเว็บไซต์

30 คำสั่ง Linux ที่เป็นประโยชน์สำหรับผู้ดูแลระบบ


ในบทความนี้ เราจะทบทวนคำสั่ง Linux หรือ Unix ที่มีประโยชน์และใช้บ่อยสำหรับ ผู้ดูแลระบบ Linux ที่ใช้ในชีวิตประจำวัน

การดำเนินการนี้ไม่สมบูรณ์ แต่เป็นรายการคำสั่งสั้นๆ เพื่อใช้อ้างอิงเมื่อจำเป็น เรามาเริ่มกันทีละวิธีว่าเราจะใช้คำสั่งเหล่านั้นพร้อมตัวอย่างได้อย่างไร

1. คำสั่งสถานะการออนไลน์

ในคำสั่ง Linux uptime จะแสดงระยะเวลาที่ระบบของคุณทำงานและจำนวนผู้ใช้ที่เข้าสู่ระบบในปัจจุบัน และยังแสดงค่าเฉลี่ยการโหลดของระบบสำหรับ 1, 5, และ ช่วง 15 นาที

uptime

08:16:26 up 22 min,  1 user,  load average: 0.00, 0.03, 0.22

ตรวจสอบเวอร์ชันสถานะการออนไลน์

คำสั่ง เวลาทำงาน ไม่มีตัวเลือกอื่นนอกจาก เวลาทำงาน และ เวอร์ชัน โดยให้ข้อมูลเฉพาะใน ชั่วโมง:นาที:วินาที หากน้อยกว่า 1 วัน

uptime -V
procps version 3.2.8

2. คำสั่ง W

คำสั่ง w จะแสดงผู้ใช้ที่เข้าสู่ระบบในปัจจุบันและกระบวนการของพวกเขาพร้อมกับแสดง ค่าเฉลี่ยการโหลด, ชื่อเข้าสู่ระบบ, ชื่อ tty , โฮสต์ระยะไกล, เวลาเข้าสู่ระบบ, เวลาว่าง, JCPU, PCPU, คำสั่งและกระบวนการต่างๆ

w

08:27:44 up 34 min,  1 user,  load average: 0.00, 0.00, 0.08
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
tecmint  pts/0    192.168.50.1     07:59    0.00s  0.29s  0.09s w

ตัวเลือกที่มี

  • -h : ไม่แสดงรายการส่วนหัว
  • -s : ไม่มี JCPU และ PCPU
  • -f : ลบออกจากฟิลด์
  • -V : (ตัวอักษรบน) – แสดงเวอร์ชัน

3. คำสั่งผู้ใช้

คำสั่ง Users แสดงผู้ใช้ที่เข้าสู่ระบบอยู่ในปัจจุบัน คำสั่งนี้ไม่มีพารามิเตอร์อื่นนอกเหนือจากวิธีใช้และเวอร์ชัน

users

tecmint

4. ใครสั่ง

ผู้ออกคำสั่งเพียงส่งคืน ชื่อผู้ใช้, วันที่, เวลา และ ข้อมูลโฮสต์ who command คล้ายกับคำสั่ง w ต่างจากคำสั่ง w ใคร จะไม่พิมพ์สิ่งที่ผู้ใช้กำลังทำอยู่ มาอธิบายและดูความแตกต่างระหว่างคำสั่ง who และ w กัน

who

tecmint  pts/0        2012-09-18 07:59 (192.168.50.1)
w

08:43:58 up 50 min,  1 user,  load average: 0.64, 0.18, 0.06
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
tecmint  pts/0    192.168.50.1     07:59    0.00s  0.43s  0.10s w

ใครสั่งออปชั่น

  • -b: แสดงวันที่และเวลารีบูตระบบครั้งล่าสุด
  • -r: แสดง runlet ปัจจุบัน
  • -a, –all: แสดงข้อมูลทั้งหมดแบบสะสม

5. คำสั่ง Whoami

ใน Linux คำสั่ง whoami ใช้เพื่อพิมพ์ชื่อผู้ใช้ที่เข้าสู่ระบบในปัจจุบันลงในระบบ Linux ของคุณ หากคุณเข้าสู่ระบบในฐานะรูทโดยใช้คำสั่ง sudo คำสั่ง “whoami” จะส่งกลับ root ในฐานะผู้ใช้ปัจจุบัน

whoami

tecmint

6. คำสั่ง ls

คำสั่ง ls แสดงรายการไฟล์ในรูปแบบที่มนุษย์สามารถอ่านได้

ls -l

total 114
dr-xr-xr-x.   2 root root  4096 Sep 18 08:46 bin
dr-xr-xr-x.   5 root root  1024 Sep  8 15:49 boot

จัดเรียงไฟล์ตามเวลาที่แก้ไขครั้งล่าสุด

ls -ltr

total 40
-rw-r--r--. 1 root root  6546 Sep 17 18:42 install.log.syslog
-rw-r--r--. 1 root root 22435 Sep 17 18:45 install.log
-rw-------. 1 root root  1003 Sep 17 18:45 anaconda-ks.cfg

สำหรับตัวอย่างเพิ่มเติมของ คำสั่ง ls โปรดดูบทความของเรา:

  • ตัวอย่างคำสั่ง 10 lsof ใน Linux
  • 7 เทคนิคคำสั่ง 'ls' ที่แปลกประหลาดที่ผู้ใช้ Linux ทุกคนควรรู้
  • วิธีจัดเรียงเอาต์พุตของคำสั่ง 'ls' ตามวันที่และเวลาที่แก้ไขล่าสุด

7. คำสั่ง Crontab

แสดงรายการงานกำหนดเวลาสำหรับผู้ใช้ปัจจุบันด้วยคำสั่ง crontab และตัวเลือก -l

crontab -l

00 10 * * * /bin/ls >/ls.txt

แก้ไข crontab ของคุณด้วยตัวเลือก -e ในตัวอย่างด้านล่างนี้จะเปิดงานตามกำหนดเวลาใน ตัวแก้ไข VI ทำการเปลี่ยนแปลงที่จำเป็นและออกจากการกดปุ่ม :wq ซึ่งจะบันทึกการตั้งค่าโดยอัตโนมัติ

crontab -e

สำหรับตัวอย่างเพิ่มเติมของ คำสั่ง Linux Cron โปรดอ่านบทความก่อนหน้านี้ของเรา:

  • 11 ตัวอย่างงาน Cron Scheduling ใน Linux
  • วิธีสร้างและจัดการงาน Cron บน Linux

8. คำสั่งน้อยลง

คำสั่ง less ช่วยให้ดูไฟล์ได้อย่างรวดเร็ว คุณสามารถเลื่อนหน้าขึ้นและลงได้ กด 'q' เพื่อออกจากหน้าต่างที่น้อยลง

less install.log

Installing setup-2.8.14-10.el6.noarch
warning: setup-2.8.14-10.el6.noarch: Header V3 RSA/SHA256 Signature, key ID c105b9de: NOKEY
Installing filesystem-2.4.30-2.1.el6.i686
Installing ca-certificates-2010.63-3.el6.noarch
Installing xml-common-0.6.3-32.el6.noarch
Installing tzdata-2010l-1.el6.noarch
Installing iso-codes-3.16-2.el6.noarch

9. คำสั่งเพิ่มเติม

คำสั่ง เพิ่มเติม ช่วยให้ดูไฟล์ได้อย่างรวดเร็วและแสดงรายละเอียดเป็นเปอร์เซ็นต์ คุณสามารถเลื่อนหน้าขึ้นและลงได้ กด 'q' เพื่อออกจากหน้าต่างเพิ่มเติม

more install.log

Installing setup-2.8.14-10.el6.noarch
warning: setup-2.8.14-10.el6.noarch: Header V3 RSA/SHA256 Signature, key ID c105b9de: NOKEY
Installing filesystem-2.4.30-2.1.el6.i686
Installing ca-certificates-2010.63-3.el6.noarch
Installing xml-common-0.6.3-32.el6.noarch
Installing tzdata-2010l-1.el6.noarch
Installing iso-codes-3.16-2.el6.noarch
--More--(10%)

10. คำสั่งซีพี

คำสั่ง cp คัดลอกไฟล์จากต้นทางไปยังปลายทางโดยคงโหมดเดิมไว้

cp -p fileA fileB

คุณจะได้รับแจ้งก่อนที่จะเขียนทับไฟล์

cp -i fileA fileB

11. คำสั่งเอ็มวี

คำสั่ง mv เปลี่ยนชื่อ fileA เป็น fileB โดยใช้ตัวเลือก -i ซึ่งจะแจ้งการยืนยันก่อนที่จะเขียนทับ ขอคำยืนยันว่ามีอยู่แล้ว

mv -i fileA fileB

12. คำสั่งแมว

คำสั่ง cat ใช้เพื่อดูไฟล์หลายไฟล์พร้อมกัน

cat fileA fileB

คุณรวมคำสั่ง เพิ่มเติม และ น้อยลง เข้ากับคำสั่ง cat เพื่อดูไฟล์ที่มีหากไม่พอดีกับหน้าจอ/หน้าเดียว

cat install.log | less

# cat install.log | more

สำหรับตัวอย่างเพิ่มเติมของ Linux คำสั่ง cat อ่านบทความของเราเกี่ยวกับตัวอย่างคำสั่ง Cat พื้นฐาน 13 ตัวอย่างใน Linux

13. คำสั่ง cd (เปลี่ยนไดเร็กทอรี)

ด้วยคำสั่ง cd (เปลี่ยนไดเร็กทอรีหรือสวิตช์ไดเร็กทอรี) มันจะไปที่ไดเร็กทอรี fileA

cd /fileA

14. คำสั่ง pwd (ไดเร็กทอรีการทำงานการพิมพ์)

คำสั่ง pwd ส่งคืนพร้อมกับไดเร็กทอรีการทำงานปัจจุบัน

pwd

/root

15. คำสั่งเรียงลำดับ

คำสั่ง sort ใช้เพื่อเรียงลำดับบรรทัดของไฟล์ข้อความจากน้อยไปหามาก ด้วยตัวเลือก -r จะเรียงลำดับจากมากไปน้อย

sort fileA.txt

# sort -r fileA.txt

16. คำสั่งที่หก

Vi คือโปรแกรมแก้ไขข้อความที่ได้รับความนิยมมากที่สุดในระบบปฏิบัติการที่คล้ายกับ UNIX ส่วนใหญ่ ตัวอย่างด้านล่างเปิดไฟล์ในรูปแบบอ่านอย่างเดียวด้วยตัวเลือก -R กด ':q' เพื่อออกจากหน้าต่าง vi

vi -R /etc/shadows

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ เครื่องมือแก้ไข vi โปรดอ่านบทความของเรา:

  • เรียนรู้เคล็ดลับและเทคนิคตัวแก้ไข 'Vi/Vim' ที่เป็นประโยชน์
  • 8 เคล็ดลับและเทคนิคการแก้ไข 'Vi/Vim' ที่น่าสนใจสำหรับผู้ดูแลระบบ Linux ทุกคน
  • วิธีการติดตั้ง Vim Editor ล่าสุดในระบบ Linux

17. คำสั่ง SSH (Secure Shell)

คำสั่ง SSH ใช้เพื่อเข้าสู่ระบบโฮสต์ระยะไกล ตัวอย่างเช่น คำสั่ง ssh ด้านล่างจะเชื่อมต่อกับโฮสต์ระยะไกล (192.168.50.2) โดยใช้ผู้ใช้เป็น Narad

ssh [email 

หากต้องการตรวจสอบเวอร์ชันของ ssh ให้ใช้ตัวเลือก -V (ตัวพิมพ์ใหญ่) เพื่อแสดงเวอร์ชันของ ssh

ssh -V

OpenSSH_8.2p1 Ubuntu-4ubuntu0.3, OpenSSL 1.1.1f  31 Mar 2020

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับ SSH โปรดอ่านบทความของเรา:

  • วิธีรักษาความปลอดภัยและทำให้เซิร์ฟเวอร์ OpenSSH แข็งแกร่งขึ้น
  • วิธีการตั้งค่าแบนเนอร์คำเตือน SSH แบบกำหนดเองและ MOTD ใน Linux
  • วิธีตั้งค่าการเข้าสู่ระบบแบบไม่ใช้รหัสผ่าน SSH ใน Linux [3 ขั้นตอนง่ายๆ]

18. คำสั่ง Ftp หรือ sftp

คำสั่ง ftp หรือ sftp ใช้เพื่อเชื่อมต่อกับโฮสต์ ftp ระยะไกล ftp คือ (โปรโตคอลการถ่ายโอนไฟล์) และ sftp คือ (โปรโตคอลการถ่ายโอนไฟล์ที่ปลอดภัย) ตัวอย่างเช่น คำสั่งด้านล่างจะเชื่อมต่อกับโฮสต์ ftp (192.168.50.2)

ftp 192.168.50.2

# sftp 192.168.50.2

การวางหลายไฟล์ไว้ในโฮสต์ระยะไกลด้วย mput ในทำนองเดียวกัน เราสามารถ mget เพื่อดาวน์โหลดไฟล์หลายไฟล์จากโฮสต์ระยะไกลได้

ftp > mput *.txt

# ftp > mget *.txt

19. คำสั่ง Systemctl

คำสั่ง Systemctl เป็นเครื่องมือการจัดการ systemd ที่ใช้ในการจัดการบริการ ตรวจสอบสถานะการทำงาน เริ่มต้นและเปิดใช้งานบริการ และทำงานกับไฟล์การกำหนดค่า

systemctl start httpd.service
systemctl enable httpd.service
systemctl status httpd.service

20. คำสั่งฟรี

คำสั่ง free จะแสดงข้อมูล ว่าง, ทั้งหมด และ หน่วยความจำสลับ เป็นไบต์

free
             total       used       free     shared    buffers     cached
Mem:       1030800     735944     294856          0      51648     547696
-/+ buffers/cache:     136600     894200
Swap:      2064376          0    2064376

ฟรีด้วยตัวเลือก -t จะแสดง หน่วยความจำทั้งหมด ที่ใช้และพร้อมใช้งานในหน่วยไบต์

free -t
             total       used       free     shared    buffers     cached
Mem:       1030800     736096     294704          0      51720     547704
-/+ buffers/cache:     136672     894128
Swap:      2064376          0    2064376
Total:     3095176     736096    2359080

21. คำสั่งสูงสุด

คำสั่งด้านบนแสดงกิจกรรมตัวประมวลผลของระบบของคุณและยังแสดงงานที่จัดการโดยเคอร์เนลแบบเรียลไทม์ จะแสดงโปรเซสเซอร์และหน่วยความจำกำลังใช้งานอยู่

การใช้คำสั่งบนสุดด้วย u ตัวเลือกจะแสดงรายละเอียดกระบวนการของผู้ใช้เฉพาะดังที่แสดงด้านล่าง กด 'O' (ตัวพิมพ์ใหญ่) เพื่อจัดเรียงตามที่คุณต้องการ กด 'q' เพื่อออกจากหน้าจอด้านบน

top -u tecmint

top - 11:13:11 up  3:19,  2 users,  load average: 0.00, 0.00, 0.00
Tasks: 116 total,   1 running, 115 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.3%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   1030800k total,   736188k used,   294612k free,    51760k buffers
Swap:  2064376k total,        0k used,  2064376k free,   547704k cached

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
1889 tecmint   20   0 11468 1648  920 S  0.0  0.2   0:00.59 sshd
1890 tecmint   20   0  5124 1668 1416 S  0.0  0.2   0:00.44 bash
6698 tecmint   20   0 11600 1668  924 S  0.0  0.2   0:01.19 sshd
6699 tecmint   20   0  5124 1596 1352 S  0.0  0.2   0:00.11 bash

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ top command เราได้รวบรวมรายการตัวอย่างคำสั่ง TOP 12 รายการใน Linux ไว้แล้ว

22. คำสั่งทาร์

คำสั่ง tar ใช้เพื่อบีบอัดไฟล์และโฟลเดอร์ใน Linux ตัวอย่างเช่น คำสั่งด้านล่างจะสร้างไฟล์เก็บถาวรสำหรับไดเรกทอรี /home ด้วยชื่อไฟล์ archive-name.tar

tar -cvf archive-name.tar /home

หากต้องการแตกไฟล์เก็บถาวร tar ให้ใช้ตัวเลือกดังต่อไปนี้

tar -xvf archive-name.tar

เพื่อทำความเข้าใจเพิ่มเติมเกี่ยวกับ คำสั่ง tar เราได้สร้างคำแนะนำวิธีใช้เกี่ยวกับคำสั่ง tar ฉบับสมบูรณ์ที่ 18 ตัวอย่างคำสั่ง Tar ใน Linux

23. คำสั่ง Grep

คำสั่ง grep ค้นหาสตริงที่กำหนดในไฟล์ เฉพาะผู้ใช้ tecmint เท่านั้นที่แสดงจากไฟล์ /etc/passwd เราสามารถใช้ตัวเลือก -i เพื่อละเว้นความละเอียดอ่อนของตัวพิมพ์

grep tecmint /etc/passwd

tecmint:x:500:500::/home/tecmint:/bin/bash

24. ค้นหาคำสั่ง

ค้นหาคำสั่งที่ใช้ค้นหา ไฟล์, สตริง และ ไดเร็กทอรี ตัวอย่างด้านล่างของคำสั่ง find ค้นหาคำ tecmint ในพาร์ติชัน '/' และส่งคืนเอาต์พุต

find / -name tecmint

/var/spool/mail/tecmint
/home/tecmint
/root/home/tecmint

หากต้องการคำแนะนำฉบับสมบูรณ์เกี่ยวกับตัวอย่าง Linux find command โปรดดูที่ 35 ตัวอย่างการใช้งานจริงของ Linux Find Command

25. คำสั่ง lsof

lsof หมายถึงรายการไฟล์ที่เปิดอยู่ทั้งหมด ด้านล่างของรายการคำสั่งของไฟล์ที่เปิดอยู่ทั้งหมดโดยผู้ใช้ tecmint

lsof -u tecmint

COMMAND  PID    USER   FD   TYPE     DEVICE SIZE/OFF   NODE NAME
sshd    1889 tecmint  cwd    DIR      253,0     4096      2 /
sshd    1889 tecmint  txt    REG      253,0   532336 298069 /usr/sbin/sshd
sshd    1889 tecmint  DEL    REG      253,0          412940 /lib/libcom_err.so.2.1
sshd    1889 tecmint  DEL    REG      253,0          393156 /lib/ld-2.12.so
sshd    1889 tecmint  DEL    REG      253,0          298643 /usr/lib/libcrypto.so.1.0.0
sshd    1889 tecmint  DEL    REG      253,0          393173 /lib/libnsl-2.12.so
sshd    1889 tecmint  DEL    REG      253,0          412937 /lib/libkrb5support.so.0.1
sshd    1889 tecmint  DEL    REG      253,0          412961 /lib/libplc4.so

หากต้องการดูตัวอย่างคำสั่ง lsof เพิ่มเติม โปรดไปที่ตัวอย่างคำสั่ง 10 lsof ใน Linux

26.คำสั่งสุดท้าย

ด้วยคำสั่งสุดท้ายเราสามารถดูกิจกรรมของผู้ใช้ในระบบได้ คำสั่งนี้สามารถดำเนินการกับผู้ใช้ปกติได้เช่นกัน มันจะแสดงข้อมูลผู้ใช้ที่สมบูรณ์ เช่น เทอร์มินัล, เวลา, วันที่, การรีบูตระบบ หรือ การบูต,< และ เวอร์ชันเคอร์เนล คำสั่งที่เป็นประโยชน์ในการแก้ไขปัญหา

last

tecmint  pts/1        192.168.50.1     Tue Sep 18 08:50   still logged in
tecmint  pts/0        192.168.50.1     Tue Sep 18 07:59   still logged in
reboot   system boot  2.6.32-279.el6.i Tue Sep 18 07:54 - 11:38  (03:43)
root     pts/1        192.168.50.1     Sun Sep 16 10:40 - down   (03:53)
root     pts/0        :0.0             Sun Sep 16 10:36 - 13:09  (02:32)
root     tty1         :0               Sun Sep 16 10:07 - down   (04:26)
reboot   system boot  2.6.32-279.el6.i Sun Sep 16 09:57 - 14:33  (04:35)
narad    pts/2        192.168.50.1     Thu Sep 13 08:07 - down   (01:15)

คุณสามารถใช้ สุดท้าย กับ ชื่อผู้ใช้ เพื่อทราบกิจกรรมของผู้ใช้รายใดรายหนึ่งดังที่แสดงด้านล่าง

last tecmint

tecmint  pts/1        192.168.50.1     Tue Sep 18 08:50   still logged in
tecmint  pts/0        192.168.50.1     Tue Sep 18 07:59   still logged in
tecmint  pts/1        192.168.50.1     Thu Sep 13 08:07 - down   (01:15)
tecmint  pts/4        192.168.50.1     Wed Sep 12 10:12 - 12:29  (02:17)

27.คำสั่ง PS

คำสั่ง ps แสดงกระบวนการที่ทำงานอยู่ในระบบ ตัวอย่างด้านล่างแสดง init เพื่อประมวลผลเท่านั้น

ps -ef | grep init

root         1     0  0 07:53 ?        00:00:04 /sbin/init
root      7508  6825  0 11:48 pts/1    00:00:00 grep init

28. คำสั่งฆ่า

ใช้คำสั่ง kill เพื่อยุติกระบวนการ ขั้นแรก ค้นหากระบวนการ id ด้วยคำสั่ง ps ดังที่แสดงด้านล่าง และฆ่ากระบวนการด้วยคำสั่ง kill -9

ps -ef | grep init
root         1     0  0 07:53 ?        00:00:04 /sbin/init
root      7508  6825  0 11:48 pts/1    00:00:00 grep init

# kill- 9 7508

29.คำสั่ง rm

คำสั่ง rm ใช้เพื่อลบหรือลบไฟล์โดยไม่แจ้งให้ยืนยัน

rm filename

ใช้ตัวเลือก -i เพื่อได้รับการยืนยันก่อนที่จะลบออก การใช้ตัวเลือก '-r' และ '-f' จะลบไฟล์ออกโดยไม่ได้รับการยืนยัน

rm -i test.txt

rm: remove regular file `test.txt'?

30. ตัวอย่างคำสั่ง mkdir

คำสั่ง mkdir ใช้เพื่อสร้างไดเร็กทอรีบน Linux

mkdir directoryname

นี่เป็นคำสั่งพื้นฐานที่มีประโยชน์ในแต่ละวันในระบบปฏิบัติการ Linux/Unix กรุณาแบ่งปันผ่านช่องแสดงความคิดเห็นของเราหากเราพลาด