คำสั่งใน Ubuntu Server ที่ผมใช้งานบ่อยมาก

วันนี้ผมอยากจะมาจดบันทึก และแชร์คำสั่งที่ผมใช้บ๊อยบ่อยใน Ubuntu Server ครับ

โปรแกรมเมอร์อย่างพวกเรา คงหนีไม่พ้น การติดตั้งโปรแกรมบนเครื่องใช้งานจริง แต่ ระบบปฏิบัติการส่วนใหญ่อาจไม่ใช่ Windows *ยิ่งเป็นสายฟรีแล้วแล้วก็ทุกคนคงถึง Ubuntu กันใช่ไหมครับ จะมีคำสั่งอะไรบ้างตามอ่านกันเลยครับ

คำสั่งพื้นฐาน

คำสั่ง “sudo su” ใน server นั้นจะเป็นการเปลี่ยนสิทธิ์การใช้งานจาก user เป็น admin ตัวอย่าง

sudo su

คำสั่ง chmod จะเป็นการให้สิทธิ์การเข้าถึง File หรือ Directory เราจะเรียกมันว่า Permission โดยโครงสร้างตัวอย่างด้านล่างจะมีทั้งหมด 4 ส่วน คือ

ส่วนที่ 1. sudo คือการใช้สิทธิ์ admin ในการสั่งงาน

ส่วนที่ 2. chmod คือคำสั่งแก้ไข สิทธิ์ Permission

ส่วนที่ 3. -R ย่อมาจาก recursive อธิบายจากตัวอย่าง คือคำสั่งจะมีผลกับ file และ directory ย่อยๆ ที่อยู่ภายใน www ด้วย

775 ชุดตัวเลข 3 หลัก แบ่งเป็นตัวเลขมีหลายรูปแบบเช่น 755, 777 เป็นต้น ในความหมายของเลขแต่ละหลักทั้ง 3 หลักจะประกอบไปด้วย Owner (7), Group (7), Other (5)

  • จากตัวอย่าง เลขหลักแรก คือเลข 7 จะมีความหมาย = Execute(3) + Write(2) + Read(1) เป็นค่าตัวเลขที่เอามารวมกัน
  • จากตัวอย่าง เลขหลักที่อยู่ท้าย คือเลข 5 จะมีความหมาย = Execute(3) + Write(2)

* ดังนั้นความหมายของ 775 คือ

7 คือ Owner สามารถ (Execute, Write, Read)

7 คือ Group สามารถ (Execute, Write, Read)

5 คือ Other สามารถ (Execute, Write)

ส่วนที่ 4. /var/www คือ file หรือ directory ก็ได้

sudo chmod -R 775 /var/www

คำสั่ง chown คือการเปลี่ยนเจ้าของ file หรือ directory รวมทั้ง file owner และ group owner โดยที่คุณสามารถแก้ไขตรง [USER NAME] ได้ คุณสามารถเปลี่ยนเป็น www-data:www-data สำหรับให้สิทธิ์การเข้าถึงเว็บไซต์ ที่ทำงานด้วยภาษา php ได้เลย

sudo chown -R [USER NAME]:[USER NAME] /var/www

บทความนี้ผมจะเน้นจดบันทึกซะเป็นส่วนใหญ่ หากใครสงสัย หรือมีข้อแนะนำสามารถ Comment กันเข้ามาได้เลยนะครับ ผมจะเข้ามาอัพเดทคำสั่งบ่อยๆ สำหรับวันนี้สวัสดีคร้าบ

ต่อจากบรรทัดนี้ผมจะบันทึก Command ใน Tools อื่นๆ ที่ผมชอบลืม

หากใครอยากได้คำอธิบายเพิ่มเติม สามารถ Comment มาถามได้เลยครับ

Nginx

sudo service nginx restart
sudo ln -s /etc/nginx/sites-available/example.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo nginx -s reload

Ubuntu

du -hs /path/to/directory
zip -r compressed_filename.zip foldername

// หากยังไม่ติดตั้งใช้ script ด้านล่างนี้ก่อนนะครับ

sudo apt-get install zip
du -hs /path/to/directory
sudo kill -9 $(sudo lsof -t -i:3000)

Pm2

pm2 start app.js --name "my-api"
pm2 start web.js --name "web-interface"

pm2 stop web-interface

pm2 delete
pm2 start npm -- start

pm2 start npm --name "app name" -- start

ขอบคุณสำหรับการ Comment ครับ

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *