isd เป็นเครื่องมือที่มอบวิธีที่ดีกว่าในการจัดการยูนิต systemd โดยมีเทอร์มินัลยูสเซอร์อินเทอร์เฟซ (TUI) สำหรับค้นหายูนิต อัปเดตพรีวิวอัตโนมัติ จัดการ sudo อย่างชาญฉลาด และมีอินเทอร์เฟซที่ปรับแต่งได้
แรงจูงใจสั้นๆ
isd ช่วยทำให้กระบวนการที่ซับซ้อนในการโต้ตอบกับยูนิต systemd ง่ายขึ้น และแสดงข้อมูลที่เป็นประโยชน์ให้ผู้ใช้
- ลดความยุ่งยากจากการต้องพิมพ์คำสั่ง
systemctl ซ้ำๆ และรีเฟรชผลลัพธ์ที่แสดงให้อัตโนมัติ
การติดตั้ง
- สามารถติดตั้ง
isd ได้ผ่าน AppImage, nix และ uv
- AppImage เป็นไฟล์รันเดี่ยวที่ใช้งานได้บนทุก Linux distribution และยังใช้ได้บนรีโมตเซิร์ฟเวอร์ที่มีข้อจำกัดด้านสิทธิ์
- หากต้องการติดตั้ง
isd ในสภาพแวดล้อม nix สามารถติดตั้งผ่านแพ็กเกจ nix ได้
- uv เป็นตัวจัดการแพ็กเกจ Python ซึ่งสามารถใช้ติดตั้งและจัดการ
isd ได้
วิธีใช้ isd
isd สามารถค้นหายูนิต systemd ตรวจสอบสถานะ และแสดงพรีวิวข้อมูลรายละเอียดของหลายยูนิตได้
- ส่งคำสั่ง
systemctl ไปยังยูนิตที่เลือก และอัปเดตผลลัพธ์สถานะโดยอัตโนมัติ
- สามารถเปิด
pager ภายใน isd เพื่อดูผลลัพธ์สถานะแบบเต็มได้
- สามารถเปิด
pager แยกสำหรับผลลัพธ์ Journal และตั้งค่าธีมกับคีย์ไบน์ดิงที่ปรับแต่งเองได้
โหมดผู้ใช้/ระบบ
isd ทำงานได้ในโหมด user หรือ system และประเภทของยูนิตที่แสดงจะแตกต่างกันไปตามโหมด
การค้นหาแบบฟัซซี
- ผ่านแถบค้นหาแบบฟัซซี สามารถโหลดทุกยูนิตและไฟล์ยูนิตที่ตรงกับข้อความที่ป้อน และไฮไลต์ตามสถานะปัจจุบันได้
การเลือกหลายยูนิต
- สามารถเลือกหลายยูนิตได้ในวิดเจ็ตผลการค้นหา และมีพรีวิวของยูนิตที่เลือกให้
Command palette
- สามารถเปิด command palette เพื่อดูคำสั่งทั้งหมดที่ใช้งานได้และคีย์ไบน์ดิง
คำสั่ง
- ตัวอย่างเช่น กด
Ctrl+O เพื่อหยุดยูนิตที่เลือกได้
การรองรับเพจเจอร์
- ระหว่างที่ใช้งาน
isd สามารถเปิด pager เพื่อดูผลลัพธ์พรีวิวแบบเต็มได้
การปรับแต่ง
isd รองรับการปรับแต่งและการตั้งค่าที่หลากหลาย โดยมีธีมและคีย์ไบน์ดิงหลายแบบเพื่อช่วยให้ผู้ใช้ทำงานได้อย่างมีประสิทธิภาพสูงสุด
สรุป
- แนะนำให้ลองใช้งาน
isd ด้วยตัวเองเพื่อดูว่ามีประโยชน์กับคุณหรือไม่
ขั้นตอนถัดไป
- ดูส่วนการปรับแต่งและความปลอดภัย
1 ความคิดเห็น
ความคิดเห็นบน Hacker News
มีผู้ใช้จำนวนมากรู้สึกว่า คำสั่งของ systemd ไม่เป็นธรรมชาติและใช้งานลำบาก โดยเฉพาะการตอบสนองจากคำสั่งที่มีน้อย และโครงสร้างไดเรกทอรีที่ซับซ้อนจนทำให้สับสน
วิธีที่ systemd จัดการกับ ExecStop ทำให้สับสน
รู้สึกว่าการใช้คำสั่ง CLI นั้นยาก และเริ่มมองเห็นสถานะของระบบได้ดีขึ้นเมื่อใช้เครื่องมืออย่าง lazygit/lazydocker
มีการกล่าวว่า TUI ของ systemd-client จำเป็นแม้กระทั่งบน macOS, FreeBSD และ Windows ที่ไม่ใช่ Linux
การติดตั้งเครื่องมือด้วย uv ทำได้ง่ายขึ้น แต่ต้องการขั้นตอนการติดตั้งที่ข้าม dependency ของ Python ไปได้
-p 3.13แม้งานกับ systemd/dbus API จะยาก แต่ก็คาดหวังว่าจะได้ลองโปรเจ็กต์ใหม่และมีเรื่องให้เรียนรู้
แม้ว่าการโต้ตอบกับ systemd ส่วนใหญ่จะเป็นงานเล็กน้อย แต่ก็ยังรู้สึกว่าด้าน usability ยังไม่ดีพอ และมองว่า TUI ช่วยได้มาก
รู้สึกเสียดายที่ไม่สามารถติดตั้งบนเซิร์ฟเวอร์ระยะไกลและ Docker image ได้
docker execชอบ systemd แต่ก่อนติดตั้งก็สงสัยว่าสามารถเชื่อมต่อโฮสต์ระยะไกลได้หรือไม่
systemctl --host <hostname>บ่อยต้องการรันบริการหนึ่งก่อนอีกบริการหนึ่ง แต่สงสัยว่าจะทำได้หรือไม่โดยไม่ต้องแก้ไข unit file ของอีกบริการ