Answers:
更新:下面的答案现在已过时
对于许多发行版而言,默认值为systemd而不是sysvinit。下面的答案是在考虑sysvinit的情况下编写的。最新的答案(如果已将systemd用作init系统,则应使用该答案)是golem的答案。
sysvinit答案(在大多数当前发行版中已过时):
您希望将运行级别3设置为默认运行级别。在终端上,切换到root并执行以下操作:
[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
#
每行第二行之后(包括第二行)的内容对您来说都是注释,您无需在终端中键入它。
有关更多信息,请参见Wikipedia页面。
sed
命令说明
sed
命令是一个流编辑器(因此而得名),您通常使用它通过正则表达式使用它来操纵数据流。sed
您将模式替换为file中id:5:initdefault:
的模式id:3:initdefault:
,该文件/etc/inittab
是控制您的运行路径的文件。sed
搜索和替换的一般语法为s/pattern/replacement_pattern/
。-i
选项告诉sed
您应用修改。如果不存在,sed
则将结果文件(替换后)输出到终端(通常输出到标准输出)。更新资料
要切换回文本模式,只需按CTRL+ ALT+即可F1。这不会停止您的图形会话,只会将您切换回您登录的终端。您可以使用CTRL+ ALT+ 切换回图形会话F7。
sed
命令的说明。
sed
在配置文件上使用,除非您确切地知道自己在做什么。有问题的行也可能是注释,但仍会更改。因此,正则表达式应该更精确,至少要求字符串id:...
在行的开头。由于手册页没有说明如何处理空格,因此您可能要使用s/^ *id:5:initdefault:
(Tab
顺便说一下,其中不包括字符)。
RedHat / CentOS 7的更新已从sysvinit切换到systemd。
从GUI切换到CLI: systemctl isolate multi-user.target
要从CLI切换到GUI: systemctl isolate graphical.target
要设置CLI为默认运行级别(目标在systemd术语): systemctl set-default multi-user.target
。类似于GUI:systemctl set-default graphical.target
* CLI =命令行界面=命令行模式
首先将用户切换为root。
su -
Password:
输入root密码。
使用您喜欢的编辑器在以下位置修改此行/etc/inittab
:
id:5:initdefault:
将5更改为3。(重新)引导计算机时,它将带您进入命令行而不是GUI。
除了change之外/etc/inittab
,您还可以在内核的命令行上告诉内核init
一旦启动目标运行级别应将其传递给它。只需将所需的运行级别附加到命令行即可完成此操作(我相信它必须是最后一个参数)。
您可以在引导过程中一次性完成此操作,前提是您的引导加载程序允许您更改内核命令行,或者您可以复制引导加载程序配置中的条目并在引导时选择正确的条目(在您引导至各种引导程序时很有用)运行级别)。
对于使用systemd
该过程的系统而言,该过程类似,但是由于键入附加到内核命令行的魔术字符串为形式,因此意味着键入更多systemd.unit=desired.target
。
至于startx
,它还可以通过给它一个未使用的X显示号(编号从0开始)来启动其他会话:startx -- :1
将在显示:1上启动X服务器,将其定位在第一个未使用的VT(通常是VT8,因为前6个通常是Linux)控制台,第一个运行的X会话使用7)。请注意,X服务器通常需要root特权,因此您要么必须这样做root
(这不是一个好主意),要么二进制必须是setuid root(通常通过使用显示管理器来消除对此的需要)。
inittab
更有意义,因为人们通常希望一直将系统恢复为相同状态。
附带说明一下,如果您已经启动到图形模式并想切换到文本模式,则只需按Ctrl+ Alt+ F1并通过Ctrl+ Alt+ 重新回到图形模式F7。
Linux默认具有6个文本终端和1个图形终端。您可以通过按Ctrl+ Alt+ 在这些端子之间切换Fn。替换n
为1-7。F7仅当它引导进入运行级别5或使用startx
命令启动X时,才会带您进入图形模式;否则,它只会在上显示一个空白屏幕F7。
id:3:initdefault:
在/etc/inittab
使用您喜欢的文本编辑器替换默认运行级别(如前所述)之后,检查系统中是否安装了一些普利茅斯(启动屏幕)非常重要。在这种情况下,将需要删除其安装,或者仅使用首选的文本编辑器(vim,pico或其他)从/boot/grub/grub.cfg中删除splash关键字。去除普利茅斯:
sudo apt-get remove --purge plymouth
编辑您的grub.cfg:
sudo vim /boot/grub/grub.cfg
最后,升级grub配置:
sudo update-initramfs -u
在下次启动时,您将只有文本模式登录屏幕。而已。
享受Linux盒子!
缺省情况下,oracle-linux 7安装采用的安装选项最少。您必须在安装时将其更改为使用GUI模式进行安装。这解决了我无法使用图形用户模式的问题。
使用
systemctl set-default multi-user.target
并重新启动VM。VM将进入CLI模式。
startx
如何切换回命令行?