一、登录系统
1.控制台登录和概念:
无论是图形化登录还是文本登录,都是基于 Linux 控制台(Console)进行登录,控制台是系统的主要输入输出设备接口、是用户空间与内核交互的“物理/逻辑通道”。
物理层面:可以映射到多种物理接口上,通过虚拟终端(TTY1-TTY6)呈现。
逻辑层面:内核通过
/dev/console这个设备文件来管理它。虚拟控制台:Linux 内核把这个唯一的物理控制台,“虚拟”成了多个虚拟终端(Virtual TTY, 简称 VT)。无论是看到黑底白字,还是看到精美的 GNOME 登录框,它们本质上都是运行在某个特定的虚拟终端(VT)上的进程。
按
Ctrl+Alt+F1切换到的是 VT1 (/dev/tty1)。按
Ctrl+Alt+F2切换到的是 VT2 (/dev/tty2)。...以此类推,一共有6个控制台F1 - F6 。在现代发行版本中,字符文本控制台一般是F2 - F6,图形化控制台默认是F1。
目前openEuler没有自带的图形化桌面,可以安装第三方图形化桌面:
ukui 麒麟的桌面
yum install ukui -y 安装ukui
dde 统信的桌面
yum install dde -y 安装ukui
gnome RHEL所采用的桌面
install gnome-desktop -y
systemctl set-default graphical.target 设置系统通过图形化启动
reboot 重启验证
或 startx :在不修改系统启动目标(systemd target)的情况下,手动从命令行启动图形界面。
2.WEB登录(Cockpit)

Cockpit 不需要任何图形化桌面环境即可运行,最初由红帽推出并自带,开源,可被其他发行版本使用。
安装cockpit( 舵手)
yum install cockpit -y
systemctl enable --now cockpit.socket
查询IP地址
ip addr
关闭防火墙或者放行端口
systemctl stop firewalld
sudo firewall-cmd --permanent --add-service=cockpit
sudo firewall-cmd --reload
通过浏览器登录 https://ip地址:9090 来进行访问
3.RHEL的订阅
只有 RHEL(及其衍生商业版)有“订阅”机制,CentOS Stream / Rocky Linux 等没有订阅机制。
RHEL 的官方软件源(cdn.redhat.com)是需要 HTTPS 证书验证的,这个证书由 subscription-manager 管理。如果你没有订阅,就没有证书,dnf 就会报错。而其他版本软件源(Repositories)是公开、免费、匿名的。
订阅的四种方式
1.图形界面的Red Hat Subscription Manager程序
2.图形界面的设置-Subscription
3.命令行subscription-manager
4.Web页面
二、修改语言
1.临时生效:
LANG=en_US.UTF-8 设置为英文的语言
LANG=zh_CN.UTF-8 设置为中文的语言
(LANG 不是命令,而是 Linux 的环境变量)
2.永久有效:
vi /etc/locale.conf
LANG=en_US.UTF-8 设置为英文的语言
LANG=zh_CN.UTF-8 设置为中文的语言
source /etc/locale.conf 当前立即生效
三、基本命令和语法
一条完整的Linux命令的组成:命令 选项 参数,空格作为分隔符
命令:执行具体行为的指令
选项:对命令的修饰、功能的补充
长格式:--选项,无法连用必须用空格分隔
短格式:-选项,可以连用(不分先后),但不是每个长格式都有对应的短格式
参数:要操作的对象
1.多个命令执行
命令分隔符
命令1 ; 命令2
顺序执行,不管前一条成功还是失败,都会执行下一条。
与列表操作符
&&:如果左边的命令列表返回状态码 0 (成功),才执行右边。
||:如果左边的命令列表返回状态码非 0 (失败),才执行右边。
2.命令提示符
[root@rhel9 ~]#
[用户名@主机名 当前所在的工作目录] 特权提示符
~ 表示处在用户的家目录,默认情况默认家目录路径是
/root和/home/<普通用户>@ 仅作为用户和主机名之间的分隔符号
特权提示符:#表示当前的用户是root用户,$表示普通用户
FQDN/主机名
命令提示符显示的主机名是短主机名,在同一局域网内,通常可以通过/etc/hosts直接解析为ip。
FQDN (Fully Qualified Domain Name,完全限定域名)的格式为主机名 + . + 域名
如web01.example.com、db-master.prod.internal 。用来跨网段通信,或在互联网或大型网络中作为全球唯一的标识。
修改主机名的方式
hostname 主机名,重启后失效hostnamectl hostname 主机名;bash修改
/etc/hostname文件nmtui图形网络配置界面修改
四、快捷操作
TAB 补全
补全的对象正常情况下应该是命令、文件、目录、选项、参数
如果补全的对象不具有唯一性,则需要双击来全部列出
Clear 命令 / Ctrl + L 清屏
Home / End 跳转到行首/行尾
Ctrl + d 正常结束输入,程序认为“数据读完了”,通常会正常执行完剩余逻辑后退出
Ctrl + C 中断/终止 程序被强行杀死,立即停止运行,通常不会保存未处理的数据
以下仅限图形化界面
Ctrl + Shift + t 快速打开一个新的同窗口标签页
Alt + 数字 多窗口时,跳转到指定标签页
Ctrl + Shift + 加号 扩大终端字体 / Ctrl + 减号 缩小终端字
Ctrl+Shift+C/V 复制/黏贴
五.认识基础命令
查看登录信息
1.who
列出现在在线的用户
2.w
列出现在在线的用户、在做什么、占用
3.last
历史记录,看过去谁登录过、登录了多久、是否异常关机
lastb 登录失败记录
lastlog 所有用户最近一次成功登录时间
4.uptime
当前时间、系统运行时长 (Uptime)、当前登录用户数、平均负载 (Load Average: 1分钟、5分钟、15分钟)
date
查看系统的时间和日期
[root@node ~]# date
Sat Jul 27 04:04:49 PM CST 2024
星期 月份 日 当前的时间 CST 中央标准时间 年份
UTC 世界协调时间,所有其他时区都是通过相对于 UTC 的偏移量来定义的(例如:UTC+8, UTC-5)。
如果是中国服务器,CST是China Standard Time = UTC+8 (北京时间)
如果是美国服务器,CST是Central Standard Time = UTC-6date -s 按格式修改系统时间
# 格式:'YYYY-MM-DD HH:MM:SS'
date -s "2026-01-01"
date -s "2026-03-20 15:30:00"date -d 以特定格式输出描述的时间,而非当前时间
date -d "时间描述字符串" [+"输出格式"]
# 获取昨天的日期,并以特定格式输出
date -d "yesterday" +"%Y%m%d"
# 输出示例: 20260319
# 计算:2026年1月1日 之后的 100 天
date -d "2026-01-01 +100 days"
# 输出示例: 2026年 04月 11日 星期六 00:00:00 CST
# 计算:从 1970-01-01 开始往后数 19918 天的日期,此处+F%是只输出年月日的格式化参数
date +%F -d '1970-01-01 19918days'
# 如果不加输出格式,默认显示完整的时间字符串。
date -d '2024-12-12 12:12:12'
2024年 12月 12日 星期四 12:12:12 CSTcal
查看日历
id [用户名]
查看当前或其他用户的属组和SELinux上下文信息
passwd [用户名]
修改自己或其他用户的密码,只有root用户才可以给其他用户修改密码,且既不需要密码验证,又无视密码强度策略。而普通用户既要验证自己的密码,也需要符合密码强度策略。
su - 用户名
root用户无需验证,而普通用户切换需要验证密码,且无法切换到没有密码的用户
exit:从当前用户退出到上一个用户
su与su -的区别、login与bash的区别等详细内容在后续章节
pwd
打印出当前所在的工作目录
ls [路径]
列出当前或者指定目录下的内容,具体用法在后续章节
history
查看历史命令条目,具体用法在后续章节
六、查询帮助
1.man手册
man 命令
打开这个命令的完整说明文档
man -f 命令
返回命令的简介(man手册的开头),快速确认命令是做什么用的
man -k 关键字
列出含有关键词的手册条目的简介(等同于apropos命令)
# 搜索network interface
man -k network interface
ifconfig (8) - configure a network interface
ip (8) - show / manipulate routing, network devices......
netstat (8) - Print network connections, routing tables......
# (8) 表示该命令属于手册第8章,同一个名字可能同时存在于命令、函数等不同章节中man手册的章节
1. 用户命令,普通用户在 Shell 中使用的可执行程序或指令
2. 系统内核提供的函数接口
3. 系统的C标准库函数,主要针对程序员
4. 特殊设备文件
5. 文件的格式,各种配置文件的格式说明
6. 游戏,屏幕保护程序、简单游戏或好玩的命令
7. 软件包和其他的帮助杂项
8. 仅供 root/管理员使用的系统维护指令
9. Linux 内核内部的函数接口,是内核模块内部互相调用的函数
在openEuler中往往软件包和帮助内容是分开的,需要手动安装
软件包-help或者软件包-doc才能在man手册中查询到,如dnf install vsftpd-doc -yman 数字 命令
指定在手册的哪个章节检索命令
man手册的操作按键
man 并不直接显示内容,而是将格式化后的文本传递给less,键位是一致的1
查看按键说明:h
向下翻页:空格/pagedown/f ;向上翻页:pageup/b
向下或向上翻半页:d/u
向下或向上移动一行:j/k
回到开头/末尾:g/G
搜索关键词:/关键词
在关键词之间向下和向上查找 n/N
退出man手册:q
2.whatis
whatis 和 man -f 是等价的
whatis 命令并不是直接去扫描硬盘上的每一个文件,而是去查询一个预先生成的数据库。精简的 Linux 发行版中,默认没有生成这个数据库,需要手动执行 mandb 扫描系统中所有的 man 手册页。
3.info和pinfo
info 是由 GNU 计划推行的文档格式,旨在取代 man 提供更详尽的说明。pinfo 是为了解决 info 命令“难用”而诞生的,它读取的依然是和info相同的内容,带有高亮显示。
因为开发者往往不会写两次文档,所以很多时候man和info得到的内容是一样的,info 版本可能保留了更多的超链接结构,而 man 版本是纯线性文本。
info: 操作逻辑对新手极不友好,因为它模仿了 Emacs 编辑器。
b (Beginning):跳转页首
e (End):跳转页尾
s (Search):搜索内容
n (Next):跳到本章的下一个节点。
p (Prev):跳到本章的上一个节点。
u (Up):回到上一级父节点(目录)。
d(Directory):跳到总目录节点
l (Last):回到你刚才看过的那个节点。
m (Menu):后接菜单项名称,可以跳转。
[ / ]:在全局文档的所有节点间顺序切换。
pinfo (浏览器风格):改成了网页浏览逻辑。
支持类似 less 的 / 全文搜索
方向键 ↑ ↓:上下移动光标。
Enter:当光标在带星号 * 的链接上时,进入该链接。
← (左方向键):就像浏览器的“后退”,回到上级或上个页面。
→ (右方向键):进入选中的链接。
4.help
查询命令的格式、支持的选项、语法
Usage: ls [OPTION]... [FILE]...
[] 表示是可选项,可以省去
... 表示列表,可以接多个参数或选项
大写字母 表示是必选项,不可省去
+FORMAT 表示有特定的格式,会在说明中列出
a|b|c 表示多选一
<> 表示有默认的值
[MMDDhhmm[[CC]YY][.ss]] 特殊的固定格式写法5.其他
官方的文档
红帽的知识库 access.redhat.com
欧拉的知识库 https://docs.openeuler.org
查询产品的文档
/usr/share/doc/软件包名称
第三方软件
curl cheat.sh/命令名、tldr等