คำสั่ง Linux ที่ต้องรู้สำหรับการจัดการ Cloud VPS — รวม Commands ใช้งานจริง

บทนำ: ทำไม Sysadmin ต้องรู้คำสั่ง Linux

การจัดการ Cloud VPS นั้นไม่อาจหนีไปจากการใช้คำสั่ง Linux ในสภาพแวดล้อม Terminal หากคุณต้องการเป็น System Administrator ที่มีประสิทธิภาพ การเรียนรู้ Linux commands ที่จำเป็นจึงเป็นสิ่งที่ต้องทำเสียก่อน ด้วยการรู้และใช้คำสั่ง Linux อย่างถูกต้อง คุณสามารถ:

  • ประหยัดเวลาในการจัดการระบบ
  • แก้ปัญหา Server ได้อย่างรวดเร็ว
  • ควบคุมทรัพยากร Server ได้อย่างมีประสิทธิภาพ
  • เพิ่มความปลอดภัย (Security) ของระบบ
  • ทำงานแบบ Automation ได้ง่ายขึ้น

บทความนี้จะสรุปคำสั่ง Linux ที่สำคัญและใช้งานได้จริงในการจัดการ Cloud VPS ให้คุณได้ใช้อ้างอิงอย่างสะดวก

1. การนำทางระบบไฟล์ (File Navigation)

หากต้องการทำงานกับ Linux ได้อย่างมีประสิทธิภาพ การเข้าใจการจัดการไฟล์และโฟลเดอร์จึงเป็นพื้นฐานที่สำคัญ

# ดูโฟลเดอร์ปัจจุบันที่คุณอยู่
pwd

# แสดงรายชื่อไฟล์และโฟลเดอร์ทั้งหมด (แบบ List)
ls -la

# เปลี่ยนเข้าไปในโฟลเดอร์
cd /var/www/html

# สร้างโฟลเดอร์ใหม่ (รวมถึง Parent directories)
mkdir -p /var/www/newproject/public

# ลบไฟล์หรือโฟลเดอร์ (Recursive, Force)
rm -rf /path/to/folder

# Copy ไฟล์หรือโฟลเดอร์ (Recursive)
cp -r /source/folder /destination/folder

# ย้าย หรือ Rename ไฟล์/โฟลเดอร์
mv /old/path /new/path

# ค้นหาไฟล์โดยชื่อ
find /var/www -name "*.php" -type f

# ค้นหาไฟล์อย่างรวดเร็ว (ต้องติดตั้ง locate)
locate nginx.conf

2. การดูและแก้ไขไฟล์

ความเชี่ยวชาญในการดูและแก้ไขไฟล์ใน Linux เป็นทักษะที่ยิ่งใหญ่สำหรับ Sysadmin ทุกคน

# ดูเนื้อหาไฟล์ (เหมาะสำหรับไฟล์ขนาดเล็ก)
cat /etc/nginx/nginx.conf

# ดูไฟล์แบบหน้า (Page by page)
less /var/log/syslog
more /var/log/syslog

# ดูเฉพาะ 10 บรรทัดแรก
head -10 /var/log/syslog

# ดูเฉพาะ 10 บรรทัดสุดท้าย (ติดตามไฟล์ Log แบบ Real-time)
tail -f /var/log/apache2/error.log

# แก้ไขไฟล์ด้วย Nano (ง่าย)
nano /etc/nginx/nginx.conf

# แก้ไขไฟล์ด้วย Vim (ขั้นสูง)
vim /etc/nginx/nginx.conf
# ใน Vim: i (Insert mode), :wq (Save & Quit), :q! (Quit without save)

# ค้นหาคำในไฟล์แบบ Recursive
grep -r "server_name" /etc/nginx/

# ค้นหาแบบ Case-insensitive
grep -i "error" /var/log/syslog

# ค้นหาและแสดงหมายเลขบรรทัด
grep -n "listen 80" /etc/nginx/nginx.conf

3. การจัดการ Process (กระบวนการ)

การดูแล Process ที่ทำงานบน Server เป็นเรื่องสำคัญ เพื่อให้แน่ใจว่า Service ทำงานอย่างปกติและไม่มีการใช้ resources มากเกินไป

# ดูรายชื่อ Process ทั้งหมด
ps aux

# ดูเฉพาะ Process ที่เกี่ยวข้อง (ค้นหาคำว่า nginx)
ps aux | grep nginx

# ดูการใช้ resources แบบ Real-time
top

# ติดตั้ง htop สำหรับ UI ที่ดีขึ้น
apt install htop

# ใช้ htop
htop

# ปิด Process โดยใช้ Process ID (PID)
kill PID

# บังคับปิด Process (Force kill)
kill -9 PID

# ปิด Process โดยใช้ชื่อ
pkill nginx

# รัน Command แบบ Background ที่จะคงอยู่หลังจากปิด Terminal
nohup command &

# ดูรายชื่อ Background jobs
jobs

# ย้าย Job ไป Background
bg %1

# ย้าย Job ไป Foreground
fg %1

4. การจัดการ Disk และ Memory

การตรวจสอบพื้นที่ Disk และ Memory Usage เป็นส่วนสำคัญของการ Monitor Server

# ดูพื้นที่ Disk ที่ใช้งานแล้ว (Human readable)
df -h

# ดูขนาดของโฟลเดอร์โดยละเอียด
du -sh /var/log/*

# ดูการใช้ Memory (RAM)
free -h

# ดูข้อมูล Disk Partitions ทั้งหมด
lsblk

# ดูเฉพาะ Disk ที่ใช้งานจริง
df -hT

# หา Disk Space ที่ใช้มากสุด
du -sh /var/lib/* | sort -hr | head -10

5. การจัดการ Network

การจัดการและตรวจสอบ Network ช่วยให้คุณสามารถแก้ปัญหาการเชื่อมต่อได้อย่างรวดเร็ว

# ดูที่อยู่ IP ของ Server
ip addr show

# ใช้คำสั่งเก่า (Deprecated)
ifconfig

# ตรวจสอบการเชื่อมต่อไปยัง Host อื่น
ping -c 4 8.8.8.8

# ดูข้อมูล HTTP Header ของ Website
curl -I https://example.com

# Download ไฟล์จาก URL
wget https://example.com/file.zip

# ดูรายชื่อ Network Connections และ Services ที่ Listen
netstat -tulpn

# คำสั่งใหม่ (แทน netstat)
ss -tulpn

# ติดตามเส้นทาง Packet ไปยัง Host
traceroute google.com

# ค้นหา IP Address จากชื่อ Domain (Nameserver Lookup)
nslookup example.com

# ดูข้อมูล DNS โดยละเอียด
dig example.com

6. การจัดการ Package ด้วย APT

บนระบบ Debian/Ubuntu ที่ใช้ APT Package Manager การติดตั้งและอัปเดต Software ทำได้ง่ายดาย

# อัปเดต Repository Packages List
apt update

# อัปเดต System Packages ทั้งหมด
apt upgrade -y

# อัปเดตและล้างโปรแกรมเก่า
apt full-upgrade -y

# ติดตั้ง Package ใหม่
apt install nginx

# ติดตั้งหลาย Packages พร้อมกัน
apt install nginx php-fpm mysql-server -y

# ถอดถอน Package
apt remove nginx

# ถอดถอน Package และ Config files
apt purge nginx

# ดูรายชื่อ Packages ที่ติดตั้งแล้ว
apt list --installed

# ค้นหา Packages ที่เกี่ยวข้อง
apt search nginx

# ดูข้อมูล Package
apt show nginx

# ล้างโปรแกรมที่ไม่ใช้งานแล้ว
apt autoremove

# ดูเวอร์ชัน Packages ที่ติดตั้ง
dpkg -l | grep nginx

7. การจัดการ User และ Permission

ความปลอดภัย Server ขึ้นอยู่กับการจัดการ User และ File Permission อย่างถูกต้อง

# ดูชื่อ User ที่ Login อยู่
whoami

# ดูข้อมูล User ID และ Group ID
id

# ดูรายชื่อ User ที่ Login ในระบบ
who

# เปลี่ยน File Permission (Octal notation)
# 7 = rwx (Read, Write, Execute)
# 5 = r-x (Read, Execute)
# 4 = r-- (Read only)
chmod 755 /var/www/html

# เปลี่ยน Permission สำหรับไฟล์ทั้งหมดใน Directory
chmod -R 644 /var/www/html/*.php

# เปลี่ยน Owner ของไฟล์/โฟลเดอร์
chown www-data:www-data /var/www/html

# เปลี่ยน Owner แบบ Recursive
chown -R www-data:www-data /var/www/html/

# รัน Command โดยมี Privilege Sudo
sudo command

# เข้า Root Shell
sudo -i

# Switch ไป User อื่น
su - username

8. การดู Log Files

Log files เป็นแหล่งข้อมูลที่สำคัญในการ Debug และ Troubleshoot ปัญหา Server

# ดู System Journal แบบ Real-time
journalctl -f

# ดู Log ของ Service เฉพาะ (เช่น nginx)
journalctl -u nginx

# ดู Log ของ Service พร้อมข้อความ Error
journalctl -u nginx -p err

# ติดตาม Syslog แบบ Real-time
tail -f /var/log/syslog

# ดู Kernel Log ของ 20 บรรทัดสุดท้าย
dmesg | tail -20

# ค้นหา Error ใน Log
grep -i "error" /var/log/syslog

# ดู Apache Error Log แบบ Real-time
tail -f /var/log/apache2/error.log

# ดู Nginx Access Log
tail -f /var/log/nginx/access.log

9. คำสั่ง Compression และ Archive

บ่อยครั้งที่เราต้อง Backup หรือ Transfer ไฟล์จำนวนมาก การ Compress ไฟล์จึงเป็นสิ่งจำเป็น

# สร้าง TAR Archive พร้อม Gzip Compression
tar -czf backup.tar.gz /var/www/html/

# ดูเนื้อหาของ TAR File
tar -tzf backup.tar.gz

# แยก TAR File
tar -xzf backup.tar.gz

# แยก TAR File ไปยัง Directory ที่กำหนด
tar -xzf backup.tar.gz -C /destination/path/

# สร้าง ZIP Archive
zip -r archive.zip /var/www/html/

# แยก ZIP File
unzip archive.zip

# ดูเนื้อหาของ ZIP File
unzip -l archive.zip

# สร้าง TAR Archive แบบ Bzip2 (บีบอัดมากกว่า)
tar -cjf backup.tar.bz2 /folder/

# แยก TAR Bzip2
tar -xjf backup.tar.bz2

10. Keyboard Shortcuts ที่ทำให้ทำงานเร็วขึ้น

การใช้ Keyboard Shortcuts อย่างคล่องแคล่วจะช่วยให้คุณทำงานได้รวดเร็วขึ้นมาก

# ยกเลิก/หยุด Command ที่กำลังทำงาน
Ctrl + C

# Suspend Command (ใช้ bg/fg เพื่อทำงานต่อ)
Ctrl + Z

# ค้นหา Command จาก History
Ctrl + R

# รัน Command ก่อนหน้า
!!

# รัน Command ก่อนหน้าที่เริ่มด้วยคำว่า nginx
!nginx

# Auto-complete ชื่อไฟล์หรือ Command
Tab

# ค้นหาใน History
history | grep "apt install"

# ลบ Character ก่อนหน้า
Ctrl + H (หรือ Backspace)

# ลบ Word ก่อนหน้า
Ctrl + W

# ย้ายไปต้นบรรทัด
Ctrl + A

# ย้ายไปจุดสิ้นสุดบรรทัด
Ctrl + E

11. ตาราง Quick Reference – คำสั่ง Linux ที่สำคัญ

หมวดหมู่ คำสั่ง ความหมาย
นำทาง pwd แสดงโฟลเดอร์ปัจจุบัน
นำทาง ls -la แสดงรายชื่อไฟล์ (แบบ List)
นำทาง cd /path เปลี่ยนโฟลเดอร์
ไฟล์ cat file.txt ดูเนื้อหาไฟล์
ไฟล์ nano file.txt แก้ไขไฟล์
ไฟล์ tail -f file.txt ติดตามไฟล์ Log
Process ps aux ดูรายชื่อ Process
Process kill PID ปิด Process
Process top ดูการใช้ Resources
Disk df -h ดูพื้นที่ Disk
Disk du -sh /path ดูขนาดโฟลเดอร์
Network ip addr show ดู IP Address
Network ping host ตรวจสอบการเชื่อมต่อ
Network ss -tulpn ดู Network Connections
Package apt update อัปเดต Repository
Package apt install pkg ติดตั้ง Package
Permission chmod 755 file เปลี่ยน Permission
Permission chown user file เปลี่ยน Owner
Log journalctl -f ดู System Log
Backup tar -czf backup.tar.gz /path สร้าง Backup

สรุป

การเรียนรู้และเชี่ยวชาญ Linux commands เหล่านี้จะช่วยให้คุณสามารถจัดการ Cloud VPS ได้อย่างมีประสิทธิภาพและรวดเร็ว ข้อสำคัญคือต้องฝึกปฏิบัติบ่อยๆ เพื่อให้คำสั่งเหล่านี้เป็นส่วนหนึ่งของการทำงานประจำวัน

หากคุณต้องการ Server ที่มีประสิทธิภาพสูงและ Support ที่ดี บริการ Cloud VPS ของ Dot Enterprise (DE) จะเป็นตัวเลือกที่ดีเยี่ยม ทีม Technical Support ของเราพร้อมช่วยเหลือคุณในการจัดการ Server ได้ทุกเวลา

เรียนรู้เพิ่มเติมเกี่ยวกับบริการ Cloud VPS ของเรา และค้นหาแพ็คเกจที่เหมาะสมกับความต้องการของคุณ