เพื่อบูตเข้าสู่โหมดข้อความ
sudo vim / etc / default / grub
และเปลี่ยนบรรทัดต่อไปนี้:
GRUB_CMDLINE_LINUX_DEFAULT="text"
ออกและป้อน:
sudo update-grub
ล็อกอินโดยอัตโนมัติในโหมดข้อความโดยไม่ต้องระบุหมายเลขผู้ใช้หรือรหัสผ่าน
พุ่งพรวดเวอร์ชั่นของ Ubuntu
เพิ่ม-a <your-user-name>
ในบรรทัด:
exec /sbin/getty -8 38400 tty1
ในไฟล์ /etc/init/tty1.conf
ชอบมาก:
exec /sbin/getty -8 38400 tty6 -a gruber
/etc/init/tty1.conf เป็นงานพุ่งพรวดที่ทำงานในเวลาที่เหมาะสมเพื่อเริ่มต้นเทอร์มินัลเซสชันบน tty1 การเพิ่ม-a
ตัวเลือกจะบอก getty ให้เรียกโปรแกรมเข้าสู่ระบบด้วยตัวเลือก -f เพื่อลงชื่อผู้ใช้นั้นโดยข้ามการแจ้งจากผู้ใช้จาก getty และการขอรหัสผ่านจากการเข้าสู่ระบบ
พุ่งพรวดเป็นระบบ Ubuntu ที่ทำงานเป็นกระบวนการเริ่มต้นเคอร์เนล (กระบวนการ 1)
ฉันทดสอบสิ่งนี้ใน tty6 ของฉันและใช้งานได้ดี เนื่องจากบรรทัดการเกิดใหม่เริ่มต้นถ้าคุณออกจากเชลล์มันจะเริ่มการสำรองข้อมูลอีกครั้งโดยอัตโนมัติ
อูบุนตูเวอร์ชัน Systemd
Ubuntu รุ่นใหม่กว่าส่วนใหญ่ใช้ systemd เพื่อจัดการกระบวนการของระบบ ดังนั้นจึงมีวิธีการใหม่ในการทำสิ่งต่าง ๆ
การใช้ systemd tty นั้นแตกต่างกันเล็กน้อยกับกราฟิกเทอร์มินัลที่อาจทำงานบนเทอร์มินัลเสมือนสองสามตัวแรก tty6 ถูกสงวนไว้ให้เป็นเทอร์มินัลเสมือนข้อความที่มี systemd และอาจจะมีคนอื่นเช่นกัน
หากต้องการให้ลงชื่อเข้าใช้ tty6 เมื่อคุณป้อน:
sudo systemctl edit getty@tty6
เครื่องมือแก้ไขนาโนจะปรากฏขึ้นในไฟล์ชั่วคราว ป้อนสิ่งต่อไปนี้ในโปรแกรมแก้ไขนั้น:
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -f gruber' -a gruber --noclear %I $TERM
ออกจากตัวแก้ไข
การใส่ในบรรทัด ExecStart = พิเศษไม่ใช่การพิมพ์ผิด มันสำคัญมากที่จะบอกให้ systemd ลืมพารามิเตอร์ ExecStart ดั้งเดิมที่ทราบแล้ว (จาก /lib/systemd/system/getty@.service) เพื่อให้คุณสามารถแทนที่ ExecStart ได้
คุณสามารถตรวจสอบผลลัพธ์ด้วยคำสั่งต่อไปนี้:
systemd-analyze verify getty@tty6.service
ฉันเห็นคำเตือนบางอย่างที่นั่นเมื่อฉันลองทำสิ่งนี้ แต่ไม่เกี่ยวกับสิ่งที่เรากำลังทำอยู่ที่นี่
หากมีกระบวนการ tty เกิดขึ้นแล้ว tty6 คุณจะต้องรีสตาร์ทเพื่อดูผลลัพธ์
ที่จะคิดออกนี้ผมเรียกว่าเป็นคำตอบที่ดีเยี่ยมใน/ubuntu//a/659268/63886 มี Muru เกิดขึ้นเพื่อใช้เป้าหมายเดียวกันเป็นตัวอย่างในการปรับแต่ง systemd สาย ExecStart ของเขาคือ:
ExecStart=-/sbin/agetty -a muru --noclear %I $TERM
ความแตกต่างนั้นดูเหมือนจะเป็นตัวแปรทางสิ่งแวดล้อมที่เกี่ยวข้องกับ systemd อีกสองสามอย่างที่ปรากฏในเวอร์ชั่นของฉัน
ผลลัพธ์สุดท้ายของการแก้ไขข้างต้นคือการสร้างไฟล์ชื่อ override.conf ใน /etc/systemd/system/getty@tty6.service.d/ ซึ่งบรรจุสิ่งที่คุณพิมพ์ด้านบน หากคุณต้องการสร้างไฟล์ดังกล่าวด้วยตัวเองคุณจะต้องเรียกใช้systemctl daemon-reload
คำสั่งเพื่อให้ systemd จดจำและอีกครั้งจากนั้นอาจเริ่มกระบวนการ agetty ที่มีอยู่บนคอนโซลเสมือนนั้นอีกครั้ง systemctl --edit ดูแล daemon-reload ให้คุณ