Tôi đang sử dụng Red Hat Linux 32 bit trong máy ảo của mình. Tôi muốn khởi động nó sang chế độ dòng lệnh, không phải chế độ GUI. Tôi biết rằng từ đó tôi có thể chuyển sang chế độ GUI bằng startx
lệnh. Làm cách nào để chuyển về chế độ dòng lệnh?
Tôi đang sử dụng Red Hat Linux 32 bit trong máy ảo của mình. Tôi muốn khởi động nó sang chế độ dòng lệnh, không phải chế độ GUI. Tôi biết rằng từ đó tôi có thể chuyển sang chế độ GUI bằng startx
lệnh. Làm cách nào để chuyển về chế độ dòng lệnh?
Câu trả lời:
Cập nhật: Câu trả lời dưới đây đã lỗi thời
Đối với nhiều distro bây giờ, mặc định là systemd chứ không phải sysvinit. Câu trả lời dưới đây được viết với sysvinit trong tâm trí. Câu trả lời cập nhật hơn (và câu trả lời bạn nên sử dụng nếu bạn có systemd làm hệ thống init của bạn) là câu trả lời của golem .
câu trả lời sysvinit (lỗi thời trên hầu hết các bản phát hành hiện tại):
Bạn muốn làm cho runlevel 3 runlevel mặc định của bạn. Từ một thiết bị đầu cuối, chuyển sang root và làm như sau:
[user@host]$ su
Password:
[root@host]# cp /etc/inittab /etc/inittab.bak #Make a backup copy of /etc/inittab
[root@host]# sed -i 's/id:5:initdefault:/id:3:initdefault:/' /etc/inittab #Make runlevel 3 your default runlevel
Bất cứ điều gì sau (và bao gồm) thứ hai #
trên mỗi dòng là một nhận xét cho bạn, bạn không cần phải nhập nó vào thiết bị đầu cuối.
Xem trang Wikipedia trên runlevels để biết thêm thông tin.
Giải thích về sed
mệnh lệnh
sed
lệnh là một trình soạn thảo dòng (vì vậy tên), bạn sử dụng nó để điều khiển dòng dữ liệu, thường là thông qua biểu thức thông thường .sed
thay thế mẫu id:5:initdefault:
bằng mẫu id:3:initdefault:
trong tệp /etc/inittab
, đây là tệp kiểm soát đường chạy của bạn. Cú pháp chung cho một sed
tìm kiếm và thay thế là s/pattern/replacement_pattern/
.-i
tùy chọn nói sed
để áp dụng các thay đổi tại chỗ. Nếu điều này không có mặt, sed
sẽ xuất ra tệp kết quả (sau khi thay thế) cho thiết bị đầu cuối (nói chung là đầu ra tiêu chuẩn).Cập nhật
Để chuyển về chế độ văn bản, chỉ cần nhấn CTRL+ ALT+ F1. Điều này sẽ không dừng phiên đồ họa của bạn, nó chỉ đơn giản sẽ chuyển bạn trở lại thiết bị đầu cuối mà bạn đã đăng nhập. Bạn có thể chuyển về phiên đồ họa với CTRL+ ALT+ F7.
sed
lệnh.
sed
trên các tệp cấu hình, trừ khi bạn biết chính xác những gì bạn đang làm. Dòng trong câu hỏi cũng có thể là một nhận xét và vẫn sẽ được thay đổi. Do đó biểu thức chính quy phải chính xác hơn, ít nhất là yêu cầu chuỗi id:...
phải ở đầu dòng. Vì trang người đàn ông không nói gì về cách xử lý khoảng trắng, nên bạn có thể muốn sử dụng s/^ *id:5:initdefault:
(nhân tiện không bao gồm Tab
ký tự).
Cập nhật cho RedHat / CentOS 7 đã chuyển từ sysvinit sang systemd.
Để chuyển từ GUI sang CLI: systemctl isolate multi-user.target
Để chuyển từ CLI sang GUI: systemctl isolate graphical.target
Để đặt CLI làm runlevel mặc định ( mục tiêu theo thuật ngữ systemd) : systemctl set-default multi-user.target
. Tương tự cho GUI:systemctl set-default graphical.target
* CLI = Giao diện dòng lệnh = chế độ dòng lệnh
Đầu tiên chuyển người dùng sang root.
su -
Password:
Nhập mật khẩu root.
Sử dụng trình chỉnh sửa yêu thích của bạn để sửa đổi dòng này trong /etc/inittab
:
id:5:initdefault:
Thay đổi 5 thành 3. Khi bạn (khởi động lại) máy tính, nó sẽ đưa bạn đến dòng lệnh thay vì vào GUI.
Ngoài việc thay đổi /etc/inittab
, bạn cũng có thể cho hạt nhân biết trên dòng lệnh của nó những gì runlevel đích sẽ được chuyển đến init
khi nó được bắt đầu. Điều này được thực hiện bằng cách đơn giản nối thêm runlevel mong muốn vào dòng lệnh (nó phải là đối số cuối cùng tôi tin).
Bạn có thể thực hiện việc này như một lần trong khi khởi động, với điều kiện bộ tải khởi động của bạn cho phép bạn thay đổi dòng lệnh kernel hoặc bạn có thể sao chép mục nhập trong cấu hình bộ nạp khởi động và chọn đúng khi khởi động (hữu ích khi bạn khởi động vào nhiều runlevels thường xuyên).
Đối với các hệ thống sử dụng systemd
quy trình là tương tự, nhưng có nghĩa là nhập nhiều hơn vì chuỗi ma thuật được nối với dòng lệnh kernel ở dạng systemd.unit=desired.target
.
Về phần startx
, nó cũng có thể bắt đầu các phiên bổ sung bằng cách cung cấp cho nó số hiển thị X chưa sử dụng (đánh số bắt đầu từ 0): startx -- :1
sẽ khởi động máy chủ X trên màn hình: 1, định vị nó tại VT không sử dụng đầu tiên (thường là VT8, vì 6 đầu tiên thường là Linux bảng điều khiển và 7 được sử dụng bởi phiên X đầu tiên đang chạy). Lưu ý rằng máy chủ X thường cần đặc quyền root, do đó bạn phải thực hiện điều này dưới dạng root
(đó không phải là ý tưởng hay) hoặc nhị phân phải là root setuid (nhu cầu này thường được loại bỏ bằng cách sử dụng trình quản lý hiển thị).
inittab
có ý nghĩa hơn nhiều, vì người ta thường muốn đưa hệ thống về cùng một trạng thái mọi lúc.
Mặt khác, nếu bạn đã khởi động vào chế độ đồ họa và muốn chuyển sang chế độ văn bản, bạn chỉ cần nhấn Ctrl+ Alt+ F1và quay lại chế độ đồ họa bằng Ctrl+ Alt+ F7.
Linux mặc định có 6 thiết bị đầu cuối văn bản và 1 thiết bị đầu cuối đồ họa. Bạn có thể chuyển đổi giữa các thiết bị đầu cuối bằng cách nhấn Ctrl+ Alt+ Fn. Thay thế n
bằng 1-7. F7sẽ đưa bạn đến chế độ đồ họa chỉ khi nó khởi động vào cấp 5 hoặc bạn đã bắt đầu sử dụng startx
lệnh X ; nếu không, nó sẽ chỉ hiển thị một màn hình trống trên F7.
Thậm chí là một chủ đề khá cũ, có thể hữu ích. Trên hệ thống sử dụng systemd
, / etc / inittab không còn được sử dụng. Phương pháp khá đơn giản:
Chế độ đầu cuối
ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
Chế độ đồ họa
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
Sau khi thay thế các runlevel mặc định id:3:initdefault:
trong /etc/inittab
sử dụng soạn thảo văn bản yêu thích của bạn (như đã nói trước đây), nó kiểm tra rất quan trọng nếu có một số plymouth (splash screen) được cài đặt trong hệ thống của bạn. Trong trường hợp này, sẽ cần phải xóa cài đặt của nó hoặc chỉ cần xóa từ khóa giật gân khỏi bạn /boot/grub/grub.cfg bằng trình soạn thảo văn bản ưa thích của bạn (vim, pico hoặc người khác). Để loại bỏ plymouth:
sudo apt-get remove --purge plymouth
Chỉnh sửa grub.cfg của bạn:
sudo vim /boot/grub/grub.cfg
Cuối cùng, nâng cấp cấu hình grub:
sudo update-initramfs -u
Trong lần khởi động tiếp theo, bạn sẽ chỉ có màn hình đăng nhập chế độ văn bản. Đó là nó.
Thưởng thức hộp Linux!
Cài đặt oracle-linux 7 theo mặc định có tùy chọn cài đặt tối thiểu. Bạn phải thay đổi nó thành cài đặt với chế độ GUI tại thời điểm cài đặt. Điều này đã giải quyết vấn đề của tôi về việc không thể sử dụng chế độ người dùng đồ họa.
Sử dụng
systemctl set-default multi-user.target
và khởi động lại VM. VM sẽ vào chế độ CLI.
startx
làm thế nào tôi có thể chuyển trở lại dòng lệnh?