คำสั่ง Linux และทักษะเชลล์
tmux กับหน้าจอ: เปรียบเทียบผู้จัดการเซสชัน
tmux และ screen แก้ปัญหาเดิมได้เหมือนกัน นั่นคือ งานของคุณไม่ควรตายเมื่อเครือข่ายของคุณเสียหาย เซสชันใช้งานจริงบนเซิร์ฟเวอร์ รอดจากการขาดการเชื่อมต่อ และสามารถแบ่งพาร์ติชันเป็นบานหน้าต่างได้ screen เป็นบรรพบุรุษที่มีความเสถียรซึ่งจัดส่งไปทุกที่ tmux ตัวตายตัวแทนด้วยค่าเริ่มต้นของ saner บานหน้าต่างสคริปต์ได้ และระบบนิเวศที่ดำเนินต่อไป ในทางปฏิบัติพวกมันซ้อนทับกันสิบต่อหนึ่ง และตัวเลือกที่ตรงไปตรงมาคือเครื่องมือที่เซิร์ฟเวอร์ของคุณมีอยู่แล้ว บวกกับลักษณะการกำหนดค่าที่ทีมของคุณจะเก็บไว้จริงๆ
ประเด็นสำคัญ
- สุขอนามัยของเซสชันคือค่านิยมหลัก: tmux new -s ปรับใช้ / screen -S ปรับใช้เพื่อเริ่มต้น tmux ls / screen -ls เพื่อดูฟาร์ม และแนบตามชื่อที่แน่นอน ดังนั้นการแนบงานข้ามคืนของเพื่อนร่วมงานอีกครั้งจึงเป็นการค้นหา ไม่ใช่การคาดเดา
- แยกออกอย่างสง่างาม (คำนำหน้า -d) ออกโดยเจตนา: การปิดเซสชันทั้งหมดโดยให้ออกภายในบานหน้าต่างจะทำให้งานยาวที่เสร็จไปแล้วครึ่งหนึ่งหายไป 'แยกออกเว้นแต่คุณจะหมายความอย่างนั้นจริงๆ' เป็นนิสัย ไม่ใช่ความชอบ
- การแยกจะทำงานได้ดีขึ้นใน tmux: % และ " แบ่งบานหน้าต่าง บวกกับการปรับขนาดลูกศรใต้คำนำหน้า และโหมดเมาส์เสริม การนับหน้าจอ | และ S ไปสู่จุดสิ้นสุดเดียวกันด้วยการปรับขนาดที่ยุ่งยากกว่า
- การเลื่อนกลับนั้นเด็ดขาดอย่างเงียบๆ: โหมดการคัดลอก tmux ค้นหาประวัติ ([ จากนั้น /), ^a [ การนำทางของหน้าจอใช้งานได้ แต่หยาบ และในการค้นหาส่วนท้ายของบันทึกหลาย GB จะเต้นการเลื่อน
- ความสามารถในการเขียนสคริปต์เอียงไปที่ tmux: ปุ่มส่งและบานหน้าต่างจับภาพปล่อยให้ระบบอัตโนมัติขับเคลื่อนและอ่านเซสชัน ซึ่งเป็นสาเหตุที่ CI และกาวเครื่องมือชอบ หน้าจอสามารถไปที่นั่นได้เช่นกัน แต่มีสำนวนที่เก่ากว่า
- เซสชันที่ใช้ร่วมกันทำงานได้ทั้งสองแบบ: สองเซสชันต่อหนึ่งเซสชันจะสะท้อนทุกอย่างแบบสด ซึ่งเป็นการดีบักคู่หรือการตรวจสอบคำสั่งที่มีความเสี่ยงแบบเรียลไทม์ มีวินัยในการพิมพ์ต่อไป ไม่เช่นนั้นกระจกจะแสดงการพิมพ์ผิดของคุณด้วย
- วัฒนธรรมการกำหนดค่าแตกต่าง: tmux ขยายระบบนิเวศการกำหนดค่าแบบแยก (ธีม, ปลั๊กอิน, ค่าเริ่มต้นที่มีสติต่อทีม), หน้าจอทำงานบน ~/.screenrc; ในทางปฏิบัติ tmux จะปรับขนาดทั่วทั้งทีมและหน้าจอจะคงความเป็นส่วนตัว
- การรีบูตจะสิ้นสุดทุกสิ่ง: เซสชันอยู่ในหน่วยความจำเซิร์ฟเวอร์ งานที่ยาวนานจึงต้องมีงานจริง (บันทึก จุดตรวจสอบ สคริปต์ที่รีสตาร์ทได้) พร้อมด้วยตัวจัดการเซสชันที่ด้านบน tmux คือการประกัน ไม่ใช่ความทนทาน
บันทึกจากหน้างาน
เซสชันที่เสียไปคือการย้ายข้อมูลเป็นเวลาหกชั่วโมงที่ถูกขัดขวางโดย VPN ขัดข้อง และไม่มีอะไรในดิสก์ที่รู้ว่าเราอยู่ในขั้นตอนใด อะไรที่ยาวกว่าช่วงพักดื่มกาแฟตอนนี้จะมีชื่ออยู่ใน tmux และกลับมาดำเนินการต่อในเช้าวันรุ่งขึ้นด้วย tmux ls แทนการยักไหล่
คำถามที่พบบ่อย
ถ้าฉันเรียนเพียงอันเดียวอันไหน?
tmux เว้นแต่ว่าฟลีทของคุณใช้งานหน้าจอทุกที่อยู่แล้ว ค่าเริ่มต้น สคริปต์ hooks และโมเมนตัมของชุมชนเป็นจุดที่ทศวรรษที่ผ่านมา และนิสัยสามารถถ่ายโอนได้ดีพอที่จะครอบคลุมเหตุฉุกเฉินบนหน้าจอ
จะปลอดภัยไหมที่คนสองคนจะแชร์เซสชันเดียว?
ใช่ และนี่คือการย้ายการดีบักคู่แบบมาตรฐาน ทั้งสองเห็นการกดแป้นพิมพ์ที่เหมือนกัน ดังนั้นตกลงว่าใครเป็นเจ้าของแป้นพิมพ์ และปฏิบัติต่อคำสั่งทำลายล้างใดๆ เช่น คำขอเปลี่ยนแปลงโดยมีตาคู่ที่สองติดอยู่
เหตุใดสีจึงดูผิดปกติในเซสชันของฉัน
TERM ไม่ตรงกัน: เทอร์มินัลด้านในต้องประกาศ tmux-256color หรือ screen-256color โฮสต์ระยะไกลต้องมีรายการ (infocmp บอกคุณ) และความชัดเจนก่อน ธีมภูมิใจเป็นอันดับสอง
เซสชันจะรอดจากการรีบูตเซิร์ฟเวอร์หรือไม่
ไม่: เซสชันอยู่ในหน่วยความจำ และการรีบูตจะล้างข้อมูลเหล่านั้นในขณะที่ดิสก์ยังคงอยู่ สคริปต์และบันทึกที่รีสตาร์ทได้บนดิสก์คือเลเยอร์ความทนทาน tmux คือเลเยอร์การขัดจังหวะ และทำให้ทั้งสองอย่างสับสนคือการหยุดทำงานแบบคลาสสิก
Kinetikatech ช่วยเรื่อง คำสั่ง linux และทักษะเชลล์ ได้อย่างไร
นี่คือสิ่งที่เราทำทุกวัน: คำสั่งและพฤติกรรมการเขียนสคริปต์ที่ตัดสินใจว่าผู้ดูแลระบบจะใช้งานเซิร์ฟเวอร์หรือต่อสู้กับเซิร์ฟเวอร์: ค้นหา แปลง ถ่ายโอน และดูแลข้อความและกระบวนการด้วยเครื่องมือที่อยู่ในทุกการติดตั้งฐาน บริการ ความปลอดภัยเซิร์ฟเวอร์ Linuxและการจัดการเซิร์ฟเวอร์ ของเราดูแลครบวงจร ตั้งแต่ประเมิน ลงมือทำ ติดตาม 24 ชั่วโมง ไปจนถึงรับเรื่องฉุกเฉินภายใน 30 นาที