Để khởi động vào chế độ văn bản
sudo vim / etc / default / grub
và thay đổi dòng sau:
GRUB_CMDLINE_LINUX_DEFAULT="text"
thoát và nhập:
sudo update-grub
Tự động đăng nhập ở chế độ văn bản mà không chỉ định userid hoặc mật khẩu
Phiên bản mới nhất của Ubuntu
Thêm -a <your-user-name>
vào dòng:
exec /sbin/getty -8 38400 tty1
trong tập tin /etc/init/tty1.conf
như vậy
exec /sbin/getty -8 38400 tty6 -a gruber
/etc/init/tty1.conf là công việc mới bắt đầu chạy vào thời điểm thích hợp để bắt đầu phiên cuối trên tty1. Thêm -a
tùy chọn yêu cầu getty gọi chương trình đăng nhập bằng tùy chọn -f để đăng nhập người dùng đó, bỏ qua lời nhắc người dùng từ getty và lời nhắc mật khẩu từ đăng nhập.
Upstart là hệ thống Ubuntu hoạt động như quá trình khởi tạo kernel (tiến trình 1).
Tôi đã thử nghiệm điều này trên tty6 của tôi và nó hoạt động rất tốt. Bởi vì dòng hồi sinh mới bắt đầu nếu bạn thoát khỏi vỏ, nó sẽ tự động khởi động lại.
Phiên bản hệ thống của Ubuntu
Các phiên bản mới hơn của Ubuntu sử dụng phần lớn systemd để quản lý các quy trình hệ thống. Do đó, có những cách làm mới.
Việc sử dụng systemd tty cũng có một chút khác biệt với các thiết bị đầu cuối đồ họa có thể chạy trên một vài thiết bị ảo đầu tiên. tty6 được dành riêng để trở thành một thiết bị đầu cuối ảo văn bản với systemd và có lẽ cũng sẽ có những cái khác.
Để có tty6 xuất hiện khi bạn nhập:
sudo systemctl edit getty@tty6
Một trình soạn thảo nano sẽ xuất hiện trong một tập tin tạm thời. Nhập thông tin sau vào trình soạn thảo đó:
[Service]
ExecStart=
ExecStart=-/sbin/agetty -o '-p -f gruber' -a gruber --noclear %I $TERM
Thoát khỏi trình soạn thảo.
Đặt thêm dòng ExecStart = không phải là một lỗi đánh máy. nó rất quan trọng vì nó bảo systemd hãy quên tham số ExecStart ban đầu mà nó đã biết (từ /lib/systemd/system/getty@.service) để bạn có thể thay thế ExecStart.
Bạn có thể kiểm tra kết quả bằng lệnh sau:
systemd-analyze verify getty@tty6.service
Tôi thấy một số cảnh báo ở đó khi tôi thử điều này, nhưng không phải về những gì chúng tôi đang làm ở đây.
Nếu đã có một quá trình tty đang diễn ra trên tty6, bạn sẽ phải khởi động lại nó để xem kết quả.
Để tìm hiểu điều này, tôi đã đề cập đến câu trả lời tuyệt vời tại https://askubfox.com/a/659268/63886 . Ở đó Muru tình cờ sử dụng cùng một mục tiêu như một ví dụ về cách điều chỉnh systemd. Dòng ExecStart của anh là:
ExecStart=-/sbin/agetty -a muru --noclear %I $TERM
Sự khác biệt dường như là một vài biến môi trường liên quan đến hệ thống hơn xuất hiện trong phiên bản của tôi.
Kết quả cuối cùng của chỉnh sửa ở trên là việc tạo một tệp có tên là override.conf trong /etc/systemd/system/getty@tty6.service.d/ chỉ chứa những gì bạn đã nhập ở trên. Nếu bạn tự tạo một tệp như vậy, bạn sẽ cần chạy systemctl daemon-reload
lệnh để có được systemd để nhận ra nó, và sau đó có thể khởi động lại bất kỳ quy trình agetty hiện có nào trên bảng điều khiển ảo đó. systemctl --edit chăm sóc daemon-tải lại cho bạn.