Linux字符界面,即命令行界面(CLI),是Linux系统管理的重要入口,相比图形界面(GUI)具有资源占用低、操作效率高、适合远程管理等优势,进入Linux字符界面的方法因系统启动状态、发行版配置不同而有所差异,以下是详细说明,涵盖不同场景下的操作步骤及注意事项。
启动时直接进入字符界面
对于服务器或需要默认使用字符界面的场景,可通过修改系统引导参数,让系统启动时直接进入字符模式,无需加载图形界面。
临时修改(单次生效)
开机时,在GRUB引导菜单出现时(通常按Esc
或Shift
键呼出),使用方向键选择要启动的内核选项,按e
进入编辑模式,在以linux
或linux16
开头的行末尾,添加以下参数之一:
systemd.unit=multi-user.target
:基于systemd的系统(如Ubuntu 16.04+、CentOS 7+)会直接进入多用户字符模式(对应传统runlevel 3)。init=/bin/bash
:直接以root用户进入单用户字符模式(适用于紧急修复,但需注意权限风险)。
编辑完成后,按Ctrl+X
或F10
启动系统,此时将直接进入字符界面。
永久修改(默认生效)
通过修改GRUB配置文件,让系统每次启动都默认进入字符界面。
- 步骤:
- 编辑
/etc/default/grub
文件:sudo nano /etc/default/grub
。 - 找到
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
这一行,将其修改为:GRUB_CMDLINE_LINUX_DEFAULT="systemd.unit=multi-user.target"
(若使用传统SysVinit系统,可改为
GRUB_CMDLINE_LINUX_DEFAULT="3"
)。 - 保存文件后,更新GRUB配置:
sudo update-grub
(Ubuntu/Debian)或sudo grub2-mkconfig -o /boot/grub2/grub.cfg
(CentOS/RHEL)。
- 编辑
- 效果:下次开机将直接进入字符界面,不再加载图形桌面。
在图形界面下切换到字符界面
若系统已启动图形界面,可通过虚拟控制台(TTY)或关闭图形服务的方式临时进入字符界面。
使用虚拟控制台(TTY切换)
Linux系统默认支持多个虚拟控制台,其中TTY1-TTY6为字符界面,TTY7通常为图形界面(不同发行版可能略有差异)。
- 操作:在图形界面下,按
Ctrl+Alt+F1
~Ctrl+Alt+F6
中的任意组合,即可切换到对应的字符TTY界面。 - 返回图形界面:按
Ctrl+Alt+F7
(或F8
,取决于发行版)可返回图形桌面。 - 注意事项:
- 若使用Wayland显示服务器(如Ubuntu 22.04默认启用),TTY切换可能无效,需在登录界面选择“TTY”选项或临时切换到X11模式(
sudo systemctl set-default multi-user.target
后重启)。 - 部分发行版(如Fedora)可能将TTY7分配给图形界面,其他TTY为字符界面,可通过
Ctrl+Alt+F?
尝试切换。
- 若使用Wayland显示服务器(如Ubuntu 22.04默认启用),TTY切换可能无效,需在登录界面选择“TTY”选项或临时切换到X11模式(
关闭图形服务
若需要彻底退出图形界面并进入字符界面,可停止当前图形服务。
- 步骤:
- 查看图形服务名称:
- Ubuntu/Debian:
systemctl status gdm3
或lightdm
。 - CentOS/RHEL:
systemctl status gdm
或sssd
。
- Ubuntu/Debian:
- 停止图形服务:
sudo systemctl stop gdm3
(根据实际服务名称调整)。
- 查看图形服务名称:
- 效果:图形界面将关闭,系统自动切换到字符TTY界面(通常为TTY1)。
- 恢复图形界面:执行
sudo systemctl start gdm3
重新启动图形服务,再按Ctrl+Alt+F7
返回。
通过系统运行级别/目标管理
Linux系统通过“运行级别”(SysVinit)或“目标”(systemd)定义系统启动模式,可通过切换级别/目标进入字符界面。
SysVinit系统(如CentOS 6、Debian 7等)
- 查看当前运行级别:
runlevel
,输出格式为“N previous”,previous”为前一级别。 - 切换运行级别:
- 进入字符界面(runlevel 3):
sudo init 3
。 - 进入图形界面(runlevel 5):
sudo init 5
。
- 进入字符界面(runlevel 3):
- 永久修改默认级别:编辑
/etc/inittab
文件,将id:5:initdefault:
改为id:3:initdefault:
,保存后重启。
systemd系统(如Ubuntu 18.04+、CentOS 7+)
systemd使用“目标”(target)替代运行级别,核心目标包括:
multi-user.target
:多用户字符模式(对应runlevel 3)。graphical.target
:图形模式(对应runlevel 5)。emergency.target
:紧急模式(仅启动最小服务,用于修复)。- 操作:
- 查看当前目标:
systemctl get-default
。 - 临时切换到字符界面:
sudo systemctl isolate multi-user.target
。 - 永久设置默认字符界面:
sudo systemctl set-default multi-user.target
。 - 永久设置默认图形界面:
sudo systemctl set-default graphical.target
。
- 查看当前目标:
不同方法适用场景总结
方法类型 | 适用场景 | 操作步骤简述 | 适用发行版 |
---|---|---|---|
临时GRUB修改 | 单次需要字符界面,不想修改配置 | GRUB菜单编辑,添加systemd.unit=multi-user.target |
所有支持GRUB的Linux系统 |
永久GRUB修改 | 默认开机进入字符界面 | 修改/etc/default/grub ,更新GRUB配置 |
Ubuntu/Debian/CentOS/RHEL等 |
TTY切换 | 图形界面下临时进入字符界面 | 按Ctrl+Alt+F1 ~F6 ,返回按Ctrl+Alt+F7 |
传统X11系统,Wayland可能无效 |
关闭图形服务 | 彻底退出图形界面,保持字符模式 | sudo systemctl stop gdm3 (根据服务名调整) |
Ubuntu/CentOS/RHEL等 |
systemd目标管理 | 动态切换系统模式,支持临时/永久 | systemctl isolate multi-user.target (临时)或set-default (永久) |
Ubuntu 18.04+/CentOS 7+等 |
SysVinit运行级别 | 旧版Linux系统(systemd前) | init 3 (临时)或修改/etc/inittab (永久) |
CentOS 6/Debian 7等 |
相关问答FAQs
Q1:按Ctrl+Alt+F1
无法进入字符界面,一直停留在图形界面怎么办?
A:可能原因有两个:① 系统使用Wayland显示服务器,TTY切换功能受限;② 图形服务未正确启动,解决方法:
- 检查是否使用Wayland:在终端执行
echo $XDG_SESSION_TYPE
,若输出为wayland
,需在登录界面选择“Ubuntu on Xorg”或“TTY”选项(部分发行版支持)。 - 若为X11系统,可尝试
Ctrl+Alt+F2
~F6
,或检查图形服务状态(systemctl status gdm3
),确保服务未崩溃。
Q2:如何从字符界面返回图形界面?
A:返回方式取决于当前状态:
- 若图形服务仍在运行(如仅通过TTY切换),直接按
Ctrl+Alt+F7
(或F8
,取决于发行版)即可返回。 - 若图形服务已停止(如执行过
systemctl stop gdm3
),需先启动图形服务:sudo systemctl start gdm3
,等待几秒后再按Ctrl+Alt+F7
返回。 - 若系统默认为字符界面(通过
set-default
设置),临时进入图形界面可执行:sudo systemctl isolate graphical.target
(重启后会恢复默认字符模式)。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/19527.html