Menu

Showing posts with label linux. Show all posts
Showing posts with label linux. Show all posts

Friday, January 15, 2021

[System - Linux] วิธีการ Monitor การใช้งาน CPU หน่วยความจำและพื้นที่ว่างของฮาร์ดดิสก์แบบ Real Time
[System - Linux] How to Monitor CPU, Memory and Disk Space in Real Time

การ Monitor CPU และ RAM

เราจะใช้ htop 

เมื่อเราติดตั้ง htop เรียบร้อยแล้ว เราสามารถ monitor CPU และ RAM โดยรันคำสั่งดังนี้

htop

การ Monitor พื้นที่ว่างของ Harddisk 

เราจะใช้คำสั่งดังนี้

watch --interval=60 df --human-readable /dev/sda1

โดยที่ /dev/sda1 เป็น partition ที่ต้องการ monitor


หมายเหตุ เราสามารถดูรายการ partition ทั้งหมดได้ โดยใช้คำสั่งดังนี้

sudo lsblk

โดยชื่อ partition จะต้องใส่ /dev/ นำหน้า เช่น /dev/xvda1 ตามชื่อในรูป

[System - Linux] วิธีการตรวจสอบพื้นที่ของดิสก์ ขนาดของแฟ้มข้อมูลและไฟล์
[System - Linux] How to Check Disk Space, Folder Size and File Size

วิธีการตรวจสอบพื้นที่ของดิสก์ เราจะใช้คำสั่งดังนี้
df -h

วิธีการตรวจสอบขนาดของแฟ้มข้อมูล เราจะใช้คำสั่งดังนี้
du -h

วิธีการตรวจสอบขนาดของไฟล์ เราจะใช้คำสั่งดังนี้
ls -la

[System - Linux] วิธีการตรวจสอบข้อมูล Log ของ Cron บน Linux Server แต่ละประเภท
[System - Linux] How to Find Cron Logs on Each Type of Linux Server

Ubuntu และ Debian

ข้อมูล log ของ cron จะถูกรวมอยู่ใน /var/log/syslog 

วิธีการตรวจสอบ log ให้ใช้คำสั่งดังนี้

grep CRON /var/log/syslog

CentOS and Redhat

ข้อมูล log ของ cron จะแยกไว้ที่ /var/log/cron 

วิธีการตรวจสอบ log ให้ใช้คำสั่งดังนี้

tail /var/log/cron

Monday, April 27, 2020

[Bash Script] ระวังการสร้าง ฺBash Script บน Windows แล้วอาจจะไม่สามารถนำมารันบน Unix ได้
[Bash Script] Warning: Create Bash Script on Windows then Cannot Run on Unix

ในกรณีนี้เราเขียน Bash script ขึ้นมาบน Windows แล้วค่อยอัพโหลดขึ้นไปรันบนเซิร์ฟเวอร์ที่เป็น Ubuntu ผลการรันได้ข้อผิดพลาดตามด้านล่างนี้
/bin/bash^M: bad interpreter: No such file or directory
สาเหตุเกิดจากอักขระที่แทนการขึ้นบรรทัดใหม่บน Windows และ Unix นั้นต่างกันดังนี้
  • Windows จะเป็น \r\n
  • Unix จะเป็น \n
ทำให้ \r เป็นอักขระที่ไม่เกี่ยวข้องกับการขึ้นบรรทัดใหม่ จึงถูกมองว่าเป็นอักขระอีกตัวที่ตามหลัง /bin/bash จึงเกิดข้อผิดพลาดข้างต้น

วิธีแก้ไข คือ รันคำสั่งดังนี้
sed -i -e 's/\r$//' scriptname.sh
หรือเขียน bash script ใหม่บน Unix แทน