เมื่อเร็วๆ นี้ ฉันจำเป็นต้องรีเซ็ตรหัสผ่านบน APC UPS เครื่องเก่า ซึ่งต้องเชื่อมต่อสายเคเบิลซีเรียลที่เป็นกรรมสิทธิ์ของตน กดปุ่มรีเซ็ต และเข้าสู่ระบบด้วยชื่อผู้ใช้และรหัสผ่านเริ่มต้นผ่านอินเทอร์เฟซซีเรียล ฉันเชื่อมต่อกับพอร์ตอนุกรมบน R720XD และส่งพอร์ตผ่านไปยัง Ubuntu VM
ฉันใช้ สติ
เพื่อกำหนดค่าพอร์ตอนุกรมตามเอกสารของ APC เปิดตัว หน้าจอ /dev/ttyS0 <ตัวเลือก>
และไปทำงาน ด้วยเหตุผลบางประการ ผลลัพธ์ที่ได้จึงยุ่งเหยิงไปหมด ดูเหมือนว่ามันจะรับอักขระ 3-4 ตัวแรกของการส่งทุกครั้ง จากนั้นจึงพลาดตัวที่เหลือ ฉันเหนื่อย มินิคอม
ด้วยผลลัพธ์เดียวกัน
ดังนั้นฉันจึงทำการทดสอบย้อนกลับ - เชื่อมต่อ RX และ TX เข้าด้วยกัน - เพื่อดูว่าสิ่งที่ฉันส่งไปจะกลับมาหรือไม่ ปัญหาเดียวกัน ฉันต่อออสซิลโลสโคปเข้ากับสายและพบว่าการกดแป้นทุกครั้งถูกส่งอย่างถูกต้อง ฉันเห็นมันวิ่งผ่านสายไฟ แต่ด้วยเหตุผลบางอย่าง ตัวละครส่วนใหญ่จะไม่ปรากฏตัว หน้าจอ
.
ฉันค้นพบว่าถ้าฉันทำ แมว /dev/ttyS0
ในเทอร์มินัลเดียว และ echo พร้อมสตริง > /dev/ttyS0
อีกอย่างหนึ่ง ฉันเห็นทุกอย่างเรียบร้อยดี!
ฉันลงเอยด้วยการออกจาก แมว
เปิดเพื่อดูไบต์ขาเข้าและเรียกใช้ หน้าจอ
ในเทอร์มินัลอื่นเพื่อส่งการกดแป้นซึ่งใช้งานได้ดีและง่ายกว่าการใช้มาก เสียงสะท้อน
ซ้ำแล้วซ้ำเล่า. รีเซ็ตรหัสผ่านสำเร็จโดยใช้สิ่งนี้
แต่ตอนนี้ฉันสงสัย ... ไม่มีใครมีความคิดใด ๆ ว่าทำไม หน้าจอ
และ มินิคอม
มีปัญหา? ฉันลองทุกตัวเลือกที่ฉันสามารถหาได้ ผู้ชาย
แต่ไม่มีโชค ดูเหมือนว่าอาจมีอย่างอื่นที่ดึงไบต์ออกจากบัฟเฟอร์ แต่ฉันไม่รู้ว่ามันคืออะไร