ข้อความเทอร์มินัลบน Linux

14.1 Getty (ใช้ใน / etc / inittab)

ข้อมูลเบื้องต้นเกี่ยวกับ Getty

เพื่อให้กระบวนการล็อกอินทำงานบนพอร์ตอนุกรม (และเทอร์มินัลที่เชื่อมต่ออยู่) เมื่อคอมพิวเตอร์เริ่มทำงาน (หรือเปลี่ยนระดับการทำงาน) คำสั่ง getty ต้องถูกใส่ลงในไฟล์ / etc / inittab การเรียกใช้ getty จากบรรทัดคำสั่งอาจทำให้เกิดปัญหา (ดูว่า getty ทำงานจากบรรทัดคำสั่ง: โปรแกรมหยุดทำงานเพื่อดูว่าเหตุใด) Getty ได้รับ TTY (terminal) ไป แต่ละเทอร์มินัลต้องการคำสั่ง getty ของตัวเอง นอกจากนี้ยังมีคำสั่ง getty อย่างน้อยหนึ่งคำสำหรับคอนโซลในทุกไฟล์ / etc / inittab ค้นหาคำสั่งนี้และใส่คำสั่ง getty สำหรับขั้วต่อจริงข้างๆ ไฟล์นี้อาจมีตัวอย่างบรรทัด getty สำหรับเทอร์มินัลข้อความที่แสดงความคิดเห็นออกมาเพื่อให้สิ่งที่คุณต้องทำคือการยกเลิกการติดตั้ง (ลบผู้นำ #) และเปลี่ยนอาร์กิวเมนต์ไม่กี่ตัว

อาร์กิวเมนต์ที่ได้รับอนุญาตขึ้นอยู่กับ getty ที่คุณใช้:
สอง gettys ที่ดีที่สุดสำหรับขั้วต่อที่เชื่อมต่อโดยตรงคือ:

สอง gettys ที่ดีที่สุดสำหรับโมเด็ม dial-in (หลีกเลี่ยงสำหรับขั้วต่อที่เชื่อมต่อโดยตรง) คือ:

gettys ง่ายที่จะใช้ถ้าคุณไม่ได้ใช้ terminal ข้อความจริง ผู้ใช้ลินุกซ์ส่วนใหญ่ใช้ข้อมูลเหล่านี้ที่จอภาพ:

การกระจาย Linux ของคุณอาจมี ps_getty หรือ agetty สำหรับเทอร์มินัลข้อความ การแจกแจงบางส่วนไม่สามารถใช้ได้ แต่น่าเสียดายที่พวกเขามักจะเรียกว่า "getty" ดังนั้นคุณอาจจำเป็นต้องกำหนดที่คุณมีตั้งแต่อาร์กิวเมนต์ที่คุณใส่หลังจากที่ใน / etc / inittab แตกต่างกัน Debian ใช้ Agetty (ในแพคเกจ util-linux) RedHat และ Fedora ใช้ ps_getty ซึ่งอยู่ที่: ps_getty

เป็นวิธีสุดท้ายที่จะลองตรวจสอบ getty คุณมีอยู่คุณอาจตรวจสอบรหัสปฏิบัติการ (โดยปกติใน / sbin) ps_getty มี / etc / gettydefs ฝังอยู่ในโค้ดนี้ เมื่อต้องการค้นหาให้ไปที่ / sbin และพิมพ์:
สตริง getty | grep getty
ถ้า Getty เป็นจริง agetty ข้างต้นจะทำให้ไม่มีอะไร อย่างไรก็ตามถ้าคุณพิมพ์ agetty:
getty -h
ควรแสดงตัวเลือก [-hiLmw]

ถ้าคุณไม่มี getty คุณต้องการตรวจสอบการแจกจ่ายอื่น ๆ และโปรแกรม ต่างด้าวที่ จะแปลงระหว่าง RPM และ Debian packages รหัสแหล่งที่มาสามารถดาวน์โหลดได้จาก Getty Software

ถ้าคุณไม่ได้ใช้สายควบคุมของโมเด็ม (ตัวอย่างเช่นถ้าคุณใช้จำนวนตัวนำขั้นต่ำ 3 ตัวเท่านั้น: รับส่งและรับสัญญาณและพื้นสัญญาณทั่วไป) คุณควรแจ้งให้ getty ทราบโดยใช้ค่าสถานะ "local" รูปแบบนี้ขึ้นอยู่กับ getty ที่คุณใช้

เก็ตตี้ออกหลังจากเข้าสู่ระบบ (และสามารถ respawn)

หลังจากที่คุณเข้าสู่ระบบคุณจะสังเกตเห็น (โดยใช้ "top", "ps -ax" หรือ "ptree") ว่ากระบวนการ getty ไม่ทำงานอีกต่อไป เกิดอะไรขึ้นกับมัน? ทำไม Getty เริ่มใหม่อีกครั้งถ้าเปลือกของคุณถูกฆ่าตาย? นี่คือเหตุผล

หลังจากที่คุณพิมพ์ชื่อผู้ใช้ getty จะเรียกใช้และเรียกโปรแกรมเข้าสู่ระบบว่าชื่อผู้ใช้ของคุณ กระบวนการ getty จะถูกแทนที่ด้วยขั้นตอนการเข้าสู่ระบบ ขั้นตอนการเข้าสู่ระบบขอรหัสผ่านของคุณตรวจสอบและเริ่มกระบวนการใด ๆ ที่ระบุไว้ในไฟล์รหัสผ่านของคุณ กระบวนการนี้มักจะเป็นเปลือก bash ถ้าใช่ทุบตีเริ่มและแทนที่กระบวนการล็อกอิน โปรดสังเกตว่ากระบวนการหนึ่งแทนที่กระบวนการอื่นและกระบวนการ bash shell เริ่มต้นเป็นกระบวนการ getty ความหมายของข้อนี้จะอธิบายไว้ด้านล่างนี้

ตอนนี้ในแฟ้ม / etc / inittab, getty ควรจะ respawn (รีสตาร์ท) ถ้าฆ่า มันบอกว่าในบรรทัดที่เรียก getty แต่ถ้าเปลือก bash (หรือกระบวนการเข้าสู่ระบบ) ถูกฆ่าตาย getty respawns (restarts) ทำไม? ดีทั้งกระบวนการเข้าสู่ระบบและทุบตีเป็นแทนสำหรับ getty และสืบทอด

* Text Terminal วิธีการดัชนี

การเชื่อมต่อสัญญาณที่สร้างโดยรุ่นก่อน ๆ ในความเป็นจริงถ้าคุณสังเกตรายละเอียดคุณจะสังเกตเห็นว่าขั้นตอนการเปลี่ยนจะมีรหัสกระบวนการเดียวกันกับกระบวนการเดิม ดังนั้นทุบตีเป็นประเภท getty ปลอมตัวด้วยรหัสหมายเลขกระบวนการเดียวกัน ถ้าทุบตีถูกฆ่าก็เหมือนกับ getty ถูกฆ่า (แม้ว่า getty จะไม่ทำงานอีกต่อไป) นี้ส่งผลให้ getty respawning

เมื่อออกจากระบบกระบวนการทั้งหมดที่อยู่ในพอร์ตอนุกรมนั้นจะถูกฆ่ารวมทั้งเปลือก bash กรณีนี้อาจเกิดขึ้นหากมีการส่งสัญญาณแฮงเอาท์ไปยังพอร์ตอนุกรมโดยการลดแรงดันไฟฟ้า DCD ลงโดยใช้โมเด็ม การออกจากระบบหรือการวาง DCD จะส่งผลให้ getty respawning หนึ่งอาจบังคับ getty เพื่อ respawn ด้วยตนเองฆ่า bash (หรือเข้าสู่ระบบ) ทั้งโดยการกดปุ่ม k เป็นต้นในขณะที่ "top" หรือมีคำสั่ง "kill" คุณอาจต้องฆ่าด้วยสัญญาณ 9 (ซึ่งไม่สามารถละเลยได้)

ถ้า getty รันจากบรรทัดคำสั่ง: โปรแกรมหยุดทำงาน

คุณควรใช้ getty จากภายใน / etc / inittab ไม่ใช่จากบรรทัดคำสั่งหรือบางโปรแกรมที่รันบนเครื่องเทอร์มินัลอาจถูกระงับโดยไม่คาดคิด (หยุด) นี่เป็นเหตุผล (ข้ามไปยังส่วนถัดไปหากเหตุผลที่คุณไม่สำคัญ) ถ้าคุณเริ่ม getty เพื่อพูด ttyS1 จากบรรทัดคำสั่งของ terminal อื่นให้พูด tty1 แล้วมันจะมี tty1 เป็น "terminal ควบคุม" แม้ว่า terminal จริงมันทำงานเป็น ttyS1 ดังนั้นจึงมีสถานีควบคุมที่ไม่ถูกต้อง แต่ถ้ามันเริ่มต้นภายในไฟล์ inittab แล้วมันจะมี ttyS1 เป็นสถานีควบคุม (ถูกต้อง)

ถึงแม้ว่า terminal ควบคุมไม่ถูกต้องการเข้าสู่ระบบที่ ttyS1 ทำงานได้ดี (เนื่องจากคุณได้ให้ ttyS1 เป็นอาร์กิวเมนต์เพื่อ getty) อินพุตและเอาต์พุตมาตรฐานถูกตั้งค่าเป็น ttyS1 แม้ว่าเทอร์มินัลการควบคุมจะยังคงอยู่ tty11 โปรแกรมอื่นที่รันที่ ttyS1 อาจได้รับอินพุต / เอาท์พุตมาตรฐานนี้ (ซึ่งเชื่อมต่อกับ ttyS1) และทุกอย่างก็โอเค แต่บางโปรแกรมอาจทำผิดพลาดในการพยายามอ่านจาก terminal การควบคุม (tty1) ซึ่งผิดพลาด ตอนนี้ tty1 อาจคิดว่าโปรแกรมเหล่านี้กำลังทำงานอยู่ในแบ็กกราวน์โดย tty1 ดังนั้นความพยายามที่จะอ่านจาก tty1 (ควรเป็น ttyS1) ส่งผลในการหยุดกระบวนการที่พยายามจะอ่าน (กระบวนการพื้นหลังไม่ได้รับอนุญาตให้อ่านจากสถานีควบคุม) คุณอาจเห็นข้อความบางอย่างเช่น " [1] + หยุด " บนหน้าจอ ณ จุดนี้คุณติดอยู่เนื่องจากคุณไม่สามารถโต้ตอบกับกระบวนการที่กำลังพยายามสื่อสารกับคุณผ่าน terminal ผิด แน่นอนที่จะหลบหนีจากนี้คุณสามารถไปที่สถานีอื่นและฆ่ากระบวนการ ฯลฯ

agetty (อาจเป็นชื่อ getty)

ตัวอย่างบรรทัดใน / etc / inittab:

S1: 23: respawn: / sbin / getty -L 19200 ttyS1 vt102

S1 มาจาก ttyS1 23 หมายความว่า getty ทำงานเมื่อเข้าสู่ระดับ run 2 หรือ 3 respawn หมายความว่าถ้า getty (หรือกระบวนการที่ถูกแทนที่เช่น bash) ถูกฆ่า getty จะเริ่มทำงานใหม่ (respawn) อีกครั้ง / sbin / getty เป็นคำสั่ง getty -L หมายถึง Local (ละเว้นสัญญาณควบคุมของโมเด็ม) -h (ไม่แสดงในตัวอย่าง) ช่วยให้สามารถควบคุมฮาร์ดแวร์ได้ (เช่นเดียวกับ stty crtscts) 19200 เป็นอัตราการรับส่งข้อมูล ttyS1 หมายถึง / dev / ttyS1 (COM2 ใน MS-DOS) vt102 เป็นชนิดของเทอร์มินัลและ getty นี้จะตั้งตัวแปรสภาพแวดล้อม TERM ให้เป็นค่านี้ ไม่มีไฟล์การกำหนดค่า พิมพ์ "init q" ในบรรทัดคำสั่งหลังจากแก้ไข getty แล้วคุณจะเห็นข้อความเข้าสู่ระบบ

การตรวจหาปัญหาความเท่าเทียมกันของ Agetty โดยอัตโนมัติ

โปรแกรม Agetty จะพยายามตรวจจับชุดข้อมูลความเท่าเทียมกันภายในเทอร์มินัลโดยอัตโนมัติ (รวมทั้งไม่มีความเท่าเทียมกัน) ไม่สนับสนุนไบต์ข้อมูล 8 บิตพร้อมความเท่าเทียมกันแบบ 1 บิต ดูไบต์ข้อมูล 8 บิต (บวกพาริตี้) หากคุณใช้ stty เพื่อตั้งค่าความเท่าเทียมกัน agetty จะยกเลิกการตั้งค่าโดยอัตโนมัติเนื่องจากเริ่มต้นต้องการให้บิตพาริตีมาผ่านเหมือนว่าเป็นบิตข้อมูล นี่เป็นเพราะต้องใช้บิตสุดท้าย (อาจเป็นบิตพาริตี) ในขณะที่คุณพิมพ์ชื่อล็อกอินของคุณเพื่อให้สามารถตรวจจับความเท่าเทียมกันแบบอัตโนมัติได้ ดังนั้นหากคุณใช้ parity ให้เปิดใช้งานเฉพาะในเทอร์มินัลเทอร์มินัลและให้ตรวจหาอัตโนมัติโดยอัตโนมัติและตั้งค่าไว้ที่เครื่องคอมพิวเตอร์ ถ้าเทอร์มินัลสนับสนุนค่าพา ธ ที่ได้รับพรอมต์การเข้าสู่ระบบจะดูไม่ถูกอ่านจนกว่าคุณจะพิมพ์บางอย่างเพื่อให้ getty สามารถตรวจจับได้

ความเท่าเทียมกัน. พรอมต์ที่อ่านไม่ออกจะยับยั้งผู้เยี่ยมชม ฯลฯ จากการพยายามเข้าสู่ระบบ นั่นอาจเป็นแค่สิ่งที่คุณต้องการ

มีบางครั้งปัญหาเกี่ยวกับการตรวจสอบความเท่าเทียมกันแบบอัตโนมัติ เกิดขึ้นเนื่องจากหลังจากที่คุณพิมพ์ชื่อการเข้าสู่ระบบครั้งแรก agetty จะ เริ่มต้นโปรแกรม เข้าสู่ระบบ เพื่อเสร็จสิ้นการเข้าสู่ระบบคุณอย่างไรก็ตามโปรแกรม เข้าสู่ระบบ ไม่สามารถตรวจจับความเท่าเทียมกันได้ดังนั้นหากโปรแกรม getty ไม่สามารถตรวจสอบความเท่าเทียมกันการ เข้าสู่ระบบ จะไม่สามารถกำหนดได้ มันอย่างใดอย่างหนึ่ง หากการเข้าสู่ระบบครั้งแรกล้มเหลวการ เข้าสู่ระบบ จะช่วยให้คุณลองอีกครั้ง ฯลฯ (ทั้งหมดนี้มีการตั้งค่าความเท่าเทียมกัน) (หรือหลังจากหมดเวลา) agetty จะเริ่มขึ้นอีกครั้งและเริ่มลำดับการเข้าสู่ระบบอีกครั้ง เมื่อ Getty กำลังทำงานอีกครั้งอาจจะสามารถตรวจจับความเท่าเทียมกันในการลองครั้งที่สองได้ดังนั้นทุกอย่างอาจทำงานได้ดี

ด้วยความเท่าเทียมกันผิดพลาดโปรแกรม เข้าสู่ระบบ ไม่สามารถอ่านสิ่งที่คุณพิมพ์ได้อย่างถูกต้องและคุณไม่สามารถล็อกอินได้ถ้าเทอร์มินอลสนับสนุนความเท่าเทียมกันคุณจะยังคงเห็นหน้าจอที่อ่านไม่ออก หาก getty ไม่สามารถตรวจพบ parity ได้ไฟล์ / etc / issue มักถูกทิ้งไปที่หน้าจอก่อนที่ prompt จะทำให้คำที่อ่านไม่ออกอาจปรากฏขึ้นบนหน้าจอ

เหตุใดจึงไม่สามารถตรวจจับความเท่าเทียมกันของตัวอักษรตัวแรกได้? นี่คือตัวอย่าง: สมมติว่าจะตรวจพบไบต์ 8 บิตพร้อมด้วยบิตพาริตี้บิต 0 (บิตลำดับสูง) และมีเลขคี่ 1 บิต ความเท่าเทียมกันคืออะไร? ดีเลขคี่ 1 บิตแสดงว่าเป็นความเท่าเทียมกันแบบคี่ แต่ก็อาจเป็นเพียงแค่อักขระ 8 บิตที่ไม่มีความเท่าเทียมกัน ไม่มีทางใดที่จะทำให้ได้ แต่จนถึงขณะนี้เราได้กำจัดความเป็นไปได้ที่จะมีความเท่าเทียมกันได้ การตรวจสอบความเท่าเทียมกันจึงดำเนินการโดยกระบวนการกำจัด

ถ้าไบต์ถัดไปพิมพ์เหมือนกันกับคำแรกและยังช่วยลดความเป็นไปได้ในการเท่าเทียมกันแม้จะยังไม่สามารถกำหนดความเท่าเทียมกันได้ สถานการณ์นี้สามารถดำเนินต่อไปเรื่อย ๆ และในบางกรณีการเข้าสู่ระบบจะล้มเหลวจนกว่าคุณจะเปลี่ยนชื่อล็อกอินของคุณ หาก Agetty พบบิตความเท่าเทียมกันเป็น 1 จะถือว่าเป็นบิตพาริตีและไม่ใช่บิตลำดับสูงของอักขระ 8 บิต ดังนั้นสมมติว่าคุณไม่ได้ใช้เมตาดาต้า (ชุดบิตสูง) ในชื่อผู้ใช้ของคุณ (เช่นชื่อของคุณอยู่ใน ASCII)

หนึ่งอาจได้รับใน "ห่วงเข้าสู่ระบบ" ในรูปแบบต่างๆ สมมติว่าคุณพิมพ์เพียงหนึ่งหรือสองตัวอักษรสำหรับชื่อการเข้าสู่ระบบของคุณแล้วกด return ถ้าตัวอักษรเหล่านี้ไม่เพียงพอสำหรับการตรวจสอบความเท่าเทียมกันการเข้าสู่ระบบจะทำงานก่อนที่จะตรวจพบความเท่าเทียมกัน บางครั้งปัญหานี้เกิดขึ้นหากคุณไม่มีเครื่องเทอร์มินอลอยู่และ / หรือเชื่อมต่ออยู่เมื่อเริ่มทำงานใหม่

ถ้าคุณติดค้างอยู่ใน "ลูปล็อกอิน" นี้ทางออกก็คือการกดปุ่ม return หลาย ๆ ครั้งจนกว่าคุณจะได้รับคำสั่งให้เข้าสู่ระบบ getty อีกวิธีหนึ่งก็คือรอสักครู่หรือมากกว่านั้นสำหรับการหมดเวลา จากนั้นข้อความเข้าสู่ระบบ getty จะถูกวางลงบนหน้าจอโดยโปรแกรม getty และคุณอาจลองเข้าสู่ระบบอีกครั้ง

ไบต์ข้อมูล 8 บิต (บวกพาริตี้)

แต่น่าเสียดายที่ agetty ไม่สามารถตรวจจับความเท่าเทียมกันนี้ได้ เมื่อปลายปี 2542 ไม่มีตัวเลือกใดในการปิดใช้งานการตรวจสอบความเท่าเทียมกันแบบอัตโนมัติและจะตรวจจับความเท่าเทียมกันที่ไม่ถูกต้อง ผลลัพธ์คือขั้นตอนการเข้าสู่ระบบจะถูกบิดเบือนและจะกำหนดความเท่าเทียมกัน ดังนั้นจึงดูเหมือนจะไม่เป็นไปได้ที่จะพยายามใช้ไบต์ข้อมูล 8 บิตพร้อมพาริตี

getty (ส่วนหนึ่งของ getty_ps)

(ส่วนใหญ่มาจาก Old-Serial HOWTO โดย Greg Hankins)
สำหรับ getty นี้ต้องใส่ทั้งสองรายการในแฟ้มกำหนดค่าและเพิ่มรายการใน / etc / inittab นี่คือตัวอย่างรายการที่จะใช้สำหรับเทอร์มินัลที่คุณใส่เข้าไปในไฟล์ configuration / etc / gettydefs

# 38400 bps รายการขั้วใบพัด DT38400 # B38400 CS8 CLOCAL # B38400 ซานเทียคลิสตติค # # @ S @L เข้าสู่ระบบ: # DT38400 # 19200 bps รายการขั้วใบพัด DT19200 # B19200 CS8 CLOCAL # B19200 สติ - สตริงคริปท์ # @ S @L เข้าสู่ระบบ: # DT19200 # 9600 bps Dumb Terminal รายการ DT9600 # B9600 CS8 CLOCAL # B9600 รายการ SANE -ISTRIP # @ S @L เข้าสู่ระบบ: # DT9600

โปรดทราบว่า DT38400, DT19200 ฯลฯ เป็นเพียงป้ายกำกับและต้องเหมือนกับที่คุณใช้ใน / etc / inittab

ถ้าคุณต้องการคุณสามารถทำให้สิ่งที่น่าสนใจใน getty พิมพ์แบนเนอร์เข้าสู่ระบบ ในตัวอย่างของฉันฉันมีชื่อระบบและบรรทัดอนุกรมที่พิมพ์ คุณสามารถเพิ่มสิ่งอื่น ๆ ได้: [blockquote

เฉดสี = yes] @B กระแส (ประเมินในขณะที่ @B เห็น) อัตรา bps @D วันที่ปัจจุบันใน MM / DD / YY @ L บรรทัดอนุกรมที่ Getty ถูกแนบ @S ชื่อระบบ @T เวลาปัจจุบันใน HH: MM: SS (24 ชั่วโมง) @U จำนวนผู้ใช้ที่ลงนามในปัจจุบัน นี่เป็นจำนวนของรายการในไฟล์ / etc / utmp ที่มีฟิลด์ ut_name ที่ไม่ใช่ค่า null @ V ค่าของ VERSION ตามที่ระบุในไฟล์ค่าดีฟอลต์ หากต้องการแสดงอักขระ "@" แบบเดียวให้ใช้ "\ @" หรือ "@@"

เมื่อคุณเสร็จสิ้นการแก้ไข / etc / gettydefs คุณสามารถตรวจสอบว่าไวยากรณ์ถูกต้องโดยการทำ:

ลินุกซ์ # getty -c / etc / gettydefs

ตรวจสอบว่าไม่มีไฟล์ getty หรือ uugetty อื่นสำหรับพอร์ตอนุกรมที่เทอร์มินัลของคุณแนบอยู่เช่น ( /etc/default/{uu}getty.ttyS N หรือ /etc/conf{uu}getty.ttyS N ) เพราะอาจจะรบกวนการทำงานของ getty บน terminal ลบไฟล์ที่ขัดแย้งกันออกไปหากออก

แก้ไขไฟล์ / etc / inittab เพื่อเรียกใช้ getty บนพอร์ตอนุกรม (ใช้แทนข้อมูลที่ถูกต้องสำหรับสภาพแวดล้อมของคุณ - พอร์ตความเร็วและประเภทขั้วเริ่มต้น):

S1: 23: respawn: / sbin / getty ttyS1 DT9600 vt100 ในนั้น linux # init q

ณ จุดนี้คุณจะเห็นข้อความเข้าสู่ระบบบนเครื่องของคุณ คุณอาจต้องกดกลับเพื่อให้ได้ความสนใจของเทอร์มินัล

mgetty

"m" หมายถึงโมเด็ม โปรแกรมนี้เป็นหลักสำหรับโมเด็มและกลางปี ​​2000 จะต้องคอมไพล์ใหม่เพื่อใช้สำหรับเทอร์มินัลข้อความ (เว้นแต่คุณจะใช้การควบคุมการควบคุมฮาร์ดแวร์และมักต้องใช้สายทำด้วยมือ) สำหรับเอกสารสำหรับขั้วต่อที่เชื่อมต่อโดยตรงดูส่วน "Direct" ของคู่มือ: mgetty.texi

ดูบรรทัดสุดท้ายของ /etc/mgetty/mgetty.config สำหรับตัวอย่างของการกำหนดค่าสำหรับเทอร์มินัล หากคุณไม่พูดว่า "toggle-dtr no" จะมีโมเด็มและวาง (ลบล้าง) หมุด DTR ที่พีซีโดยไม่ตั้งใจในการรีเซ็ตโมเด็มที่ไม่มีอยู่จริง ในทางตรงกันข้ามกับ gettys อื่น mgetty จะไม่แนบตัวเองกับเทอร์มินอลจนกว่าจะมีผู้เข้าชมคีย์ของ terminal ใด ๆ ดังนั้นคุณจะเห็น? สำหรับเทอร์มินัล ด้านบน หรือ ps จนกว่าจะถึงเหตุการณ์เช่นนี้ บันทึกใน / var / log / mgetty / อาจแสดงข้อความแจ้งเตือนไม่กี่คำซึ่งใช้ได้เฉพาะกับโมเด็มที่คุณอาจละเว้น

นี่คือตัวอย่างของบรรทัดง่ายๆที่คุณใส่ใน / etc / inittab:

s1: 23: respawn: / sbin / mgetty -r ttyS1