Category Archive Network

Byphunsanit

Linux: แก้ขนาด Swap!

โดยปกติตัว swap จะกั้นพื้นที่ไว้ 1 GB แต่ถ้าหากใช้จริง ๆ แล้วเจอว่าพื้นที่ที่จองเอาไว้มีไม่พอหรือจับจองไว้มากเกินไป ก็สามารถเปลี่ยนพื้นที่ได้เหมือน Virtual Memory ใน windows เรียกว่า

  1. ปิดการใช้ swap ก่อนโดยคำสั่ง
    sudo swapoff -a
  2. เปลี่ยนขนาดพื้นที่โดยคำสั่ง
    fallocate -l 5G /swapfile
    เปลี่ยน 5G เป็นขนาดที่ต้องการ
  3. ทำให้ไฟล์เป็น swap space โดยคำสั่ง
    sudo mkswap /swapfile
  4. ทำให้ไฟล์เป็น swap space โดยคำสั่ง
    sudo swapon /swapfile
  5. ตราจสอบ RAM และ swap ที่ว่างโดยคำสั่ง
    free -h
Byphunsanit

Linux: แรมน้อยก็ต้อง Swap!

เวลาเช่า Virtual Private Servers (VPS) ทำ hosting ไว้วางระบบที่ไม่มีใน host สำเร็จรูป ส่วนใหญ่ราคาที่ต่ำที่สุดที่มีจะให้แรม แค่ 1GB แต่แค่ใน Basic installation | Ubuntu ก็เขียนไว้ว่าต้องการ RAM: 1 gigabyte or more แล้ว แบบนี้จะไม่ทำให้ทำงานช้าได้ยังไง การที่ ram จะเต็มมีอีเมล์ DigitalOcean monitoring resolved: Memory Utilization is running high มาเยือนบ่อย ๆ แก้ได้ง่าย ๆ โดยการกันพื้นที่ hard disk มาแทนแรมเหมือนที่ windows เรียกว่า Virtual Memory นั่นเอง แค่ linux เรียก swap space

  1. เช็คดูก่อนว่าลินุกซ์ของเรามีการตั้ง swap โดยคำสั่ง
    sudo swapon –show
    ถ้าไม่เห็น output กลับมาแสดงว่าไม่ได้มีการใช้ swap ไว้
  2. การทำ swap จะเป็นต้องกันพื้นที่ไว้ใช้แทน ram เราจำเป็นต้องดูก่อนว่าที่ HHD / SSD เหลือให้ใช้อยู่เท่าไหร่ โดยคำสั่ง
    df -h
    จะมี output พื้นที่ให้ใช้งานได้ออกมา
  3. การที่จะต้องใช้พื้นที่เท่าไหร่ดีในการใช้มาเป็นแรมถึงจะพอ Ubuntu แนะนำไว้ใน SwapFaq ให้มีอย่างน้อยเท่ากับจำนวน RAM ไปจนถึง 2 เท่าของ RAM ส่วน Red Hat ได้ทำตารางไว้ ได้ทำตารางไว้ Chapter 15. Swap Space
    แรมที่มีพื้นที่ swapพื้นที่ swap และ Hibernation
    ⩽ 2 GB2 เท่าของแรม3 เท่าของแรม
    > 2 GB – 8 GBเท่ากับแรม2 เท่าของแรม
    > 8 GB – 64 GBอย่างน้อย 4GB1.5 เท่าของแรม
    > 64 GBอย่างน้อย 4GBไม่แนะนำให้ทำ Hibernation
    Recommended System Swap Space
  4. สร้าง swap file โดยคำสั่ง
    sudo fallocate -l 2G /swapfile
  5. ตรวจสอบพื้นที่โดย
    ls -lh /swapfile
    จะมีการตอบกลับมาเช่น
    -rw-r–r– 1 root root 1.0G Mar 9 07:00 /swapfile
  6. ให้ root สามารถใช้ swap file โดย
    sudo chmod 600 /swapfile
  7. ตรวจสอบ permissions โดยคำสั่ง
    ls -lh /swapfile
    จะมีการตอบกลับมาเช่น
    -rw——- 1 root root 2.0G Mar 9 07:03 /swapfile
  8. ทำให้ไฟล์เป็น swap space โดยคำสั่ง
    sudo mkswap /swapfile
  9. ตรวจสอบโดยคำสั่ง
    sudo swapon –show
    จะมีการตอบกลับมาเช่น
    /swapfile file 2G 271.2M -2
  10. ตราจสอบ RAM และ swap ที่ว่างโดยคำสั่ง
    free -h
  11. ทำให้ swap ถาวรหลังจาก shutdown, restart และ reboot
    • backup /etc/fstab โดยคำสั่ง
      sudo cp /etc/fstab /etc/fstab.bak
    • เพิ่มบรรทัดสุดท้ายในไฟล์ /etc/fstab โดยคำสั่ง
      echo ‘/swapfile none swap sw 0 0’ | sudo tee -a /etc/fstab

หลังจากนี้เมื่อ RAM ถูกใช้เกินที่มีจะถูกเขียนลงใน HHD / SSD แทนแรมที่มีไม่พอ พวก service ที่ขัดข้อง stop จะน้อยลง

Byphunsanit

PHP: 8.3 บน Ubuntu 23.10.1 แล้ว Error

ลง PHP 8.3 ตัวใหม่น่าสุด ลงบนอูบุนตู 23.10 ตัวใหม่เหมือนกันแต่กลับเจอเอ้อเร้อ php8.3-intl : Depends: libicu70 (>= 70.1-1~) but it is not installable

  1. เข้าไปที่ terminal
  2. ไปแก้ sources.list โดยใช้คำสั่ง
    sudo nano /etc/apt/sources.list
    แล้วเพิ่มไปอีก 1 บรรทัด
    deb http://archive.ubuntu.com/ubuntu/ jammy-proposed main
    แล้ว save โดน CTRL+X และ Y
  3. update package index โดย
    sudo apt-get update
  4. ติดตั้ง libicu70 โดย
    sudo apt-get install libicu70
  5. ทดสอบลง PHP 8.3 โดยใช้ extension ตามที่ WordPress แนะนำ เช่น
    sudo apt-get install php8.3-{bcmath,cgi,cli,common,curl,fpm,gd,gettext,imagick,intl,mbstring,mysql,opcache,soap,xml,xmlrpc,xsl,zip}
  6. enable ให้ใช้บน Apache ได้โดยคำสั่ง
    sudo a2enmod php8.3

อ่านเพิ่มเติม

Byphunsanit

Winget: update program เร็ว ๆ

เราสามารถ upgrade โปรแกรมที่ติดตั้งได้ง่าย ๆ เร็ว ๆ โดย winget

  1. เปิด Windows Terminal / PowerShell / Command Prompt (CMD) โดยใช้สิทธิ์ administrator
  2. ใช้คำสั่ง winget upgrade จะเห็นตารางออกมา เช่น
    winget upgrade
    NameIdVersionMatchSource
    —————————————————————————————————–
    Microsoft Visual C++ 2015-2022 Redistributable (x86) – 14.38.…Microsoft.VCRedist.2015+.x6414.38.33130.014.38.33135.0winget
  3. อัพเดตโดยใช้คำสั่ง winget install id เช่น winget install Microsoft.VCRedist.2015+.x64
  4. ทำขั้นตอนที่ 2 / 3 อีกครั้งจนติดตั้งครบทุก program ที่ต้องการ

ลอง update program เช่น
winget upgrade geeksoftwareGmbH.PDF24Creator
winget upgrade Microsoft.Edge
winget upgrade Microsoft.SQLServerManagementStudio
winget upgrade Microsoft.VisualStudio.2022.Community
winget upgrade Microsoft.WindowsTerminal
winget upgrade Notepad++.Notepad++
winget upgrade WinMerge.WinMerge
winget upgrade XnSoft.XnViewMP

Byphunsanit

Winget: ติดตั้งดูแล programs ให้ง่าย ๆ แต่ปลอดภัย

การติดตั้งโปรแกรมให้ปลอดภัยจะต้องเริ่มจากเปิดเว็บไซต์ให้ถูกต้อง เป็นเว็บผู้ผลิตจริง ๆ ไม่ใช่เว็บปลอม แล้วยังต้องมีการไป download update upgrade เป็นระยะ ๆ เพื่อที่จะแก้ปัญหาที่พบ (BUG) และเอาช่องโหวที่ hacker ใช้เข้ามาในเครื่องเรา

winget เป็นเครื่องมือติดตั้งและอัพเกรดที่เด่นเพราะพัฒนาโดย Microsoft ที่ทำ windows เองจึงเชื่อได้ในความน่าเชื่อถือด้านความปลอดภัยและที่สำคัญคือ ติดตั้งมาแล้วในวินโดวส์ 11 และวินโดวส์ 10 1709 (build 16299) ขึ้นไปอยู่แล้ว

  1. เปิด Windows Terminal / PowerShell / Command Prompt (CMD) โดยใช้สิทธิ์ administrator
  2. ค้นหาโปรแกรมที่ต้องการ เช่น chrome จะใช้คำสั่ง winget search chrome แล้วเอ็นเทอร์ จะเห็นตารางออกมา เช่น
    winget search chrome
    NameIdVersionMatchSource
    —————————————————————————————————–
    DC Browser – Chrome and IE k…XP8BV7F2CT4LDKUnknownmsstore
    Google ChromeGoogle.Chrome121.0.6167.161Moniker: chromewinget
    Google Chrome DevGoogle.Chrome.Dev122.0.6226.2Command: chromewinget
    Google Chrome BetaGoogle.Chrome.Beta120.0.6099.5Command: chromewinget
    DichromateDichromate.Browser110.0.5481.178Command: chromewinget
    Chrome Remote DesktopHostGoogle.ChromeRemoteDesktop122.0.6261.0Tag: chromewinget
    Ginger ChromeSaxo_Broko.GingerChrome93.0.4529.0winget
    ChromeCacheViewNirSoft.ChromeCacheView2.45winget
    ICBCChromeExtensionICBC.ICBCChromeExtension1.2.0.0winget
    Google Chrome CanaryGoogle.Chrome.Canary121.0.6128.2winget
    ChromeDriver for Chrome 111Chromium.ChromeDriver114.0.5735.90winget
    360 极速浏览器X360.360Chrome.X22.1.1090.64winget
    360极速浏览器360.360Chrome13.5.2044.0winget
    115浏览器115.115Chrome26.0.2.5winget
    xpchromeweolar.xpchrome115.0.5790.136winget
    Vision Teacher for Chromeboo…Netop.VisionTeacher1.7.6.0winget
    InssistSlashedIo.Inssist16.1.0Tag: chrome-extensionwinget
  3. ติดตั้งโปรแกรมโดยพิมพ์ winget install Google.Chrome แล้วเอ็นเทอร์
  4. ทำขั้นตอนที่ 2 อีกครั้งจนติดตั้งครบทุก program ที่ต้องการ

เพิ่มเติม