TUE.操作系统及 Shell 命令
操作系统相关
在 GRUB 界面按 e 进入内核
rw init=/sysroot/bin/sh
ctrl + x
chroot /sysroot
passwd (root)
密码
密码
touch /.autorelabel
grub2-setpassword
Enter password:
Cofurm password:
reboot
1. 调整启动顺序,使用光盘启动
2. Troubleshooting
3. Rescue a CentOS Linux System
4. 1)continue: 救援模式程序会自动查找系统中已有的文件系统,并可读写挂载到 /mnt/sysimage 目录下
2)Read-Only:会以只读的方式挂载已有的文件系统。
3)Skip to shell: 手动挂载
# 选择 1
5. chroot /mnt/sysimage/
# sh切换bash模式
6. passwd root
# 修改密码
vi /etc/sysconfig/selinux
将 SELINUX=enforcing 修改为 SELINUX=disabled
# SELINUX 是美国 NASA 研发用来增强 Linux 安全性能的文件
基本命令
Shell 介绍
- POSIX
- 可移植操作系统接口,是操作系统为提供的接口标准
- 不同操作系统内核为同一功能提供的系统调用(函数)是不同的,因为我们可以通过定义 POSIX 标准,Linux 和 Windows 实现基于 POSIX 标准,提供同样的接口
Shell 交互式环境
[root@xxx ~]# #号代表超级管理员用户对应的命令行
[root@xxx ~]$ $号代表普通用户对应的命令行
root --> 当前登录的用户
@ --> 分隔符
xxx --> 主机名
~ --> 当前所在的路径
# 添加用户
useradd 用户名
# 切换文件
cd 文件路径
# 显示当前所在文件夹
pwd
# 交互式修改密码
passwd 用户名
# 非交互式修改密码
echo "123" | passwd egon --stdin
Shell 语法及命令
1. 命令 + 选项 + 参数
ls -l /boot
# ls 浏览文件
# -l 表示浏览模式
2. 命令 + 选项/参数
ls -l or /boot
3. 命令
ls
时间
# 1. 获取时间
date # 完整格式
date "+%F" # 年月日
date "+%Y-%m-%d" # 年-月-日
date "+%H:%M:%S" # 时:分:秒
# 2. 设置时间
date -s "2022-06-22 18:18:18"
# 3. 硬件时间
hwclock
# 4. 同步时钟
hwclock -w # 将系统时间同步给硬件时间
hwclock -s # 将硬件时钟同步到系统时钟
# 5. ntp 时间服务器安装
yum install ntpdate -y
# 6. 从时间服务器同步时间
ntpdate ntp1.aliyun.com
# 7. 自动校准时间
timedatectl set-ntp true
# 8. 列出时区
timedatectl list-timezones
# 9. 设置时区
timedatectl set-timezone "Asia/Shanghai"
查看文件内容
cat
# 1. 查看文件参数
cat /etc/sysconfig/network-scripts/ifcfg-eth0
# 2. 查看操作系统版本
cat /etc/readhat-release
uname
# 3. 查看计算机整体信息
uname -a
# 4. 查看当前内核版本
uname -r
# 5. 查看当前 CPU 架构
uname -m
重启
# 1.立即重启
shutdown -r 0
shutdown -r now
init 6
reboot
# 2.设定时间重启
shutdown -r 10 # 十分钟后重启
shutdown -r 12:30 # 12:30 重启
# 3.关机
shutdown -h 0
shutdown -h now
init 0
poweroff
# 取消 shutdown 命令
shutdown -c
退出
exit
logout
ctrl + d
Bash 解释器交互式环境的特性
- 命令和文件自动补全: Tab 只能补全命令和文件
- 快捷键
Ctrl + c 终止前台运行程序
Ctrl + d 退出 == exit
Ctrl + l 清屏
Ctrl + a 光标移动命令行的最前端
Ctrl + e 光标移到命令行的最后端
Ctrl + r 搜索历史命令,利用关键词
Alt + . 引用上一个命令的最后一个参数,等价与!$
- 历史命令
# 历史命令文件夹
/root/.bash_history
# 1. 查看历史命令
history
# 2. 清空历史命令
history -c
# 3. 重复系统命令
! + 历史命令编号
! + 字符串 # 重复含有该字符串最近的命令
# 4. 设置命令别名
1) alias xxx="cat /etc/sysconfig/network-scripts/ifcig-eth0" # 临时文件,保存在内存中,退出即失效
# alias -- 制作别名
2) vim /etc/profile(系统文件)
3) 写入 alias xxx="cat /etc/sysconfig/network-scripts/ifcig-eth0" 并保存 # 写入系统文件后即保存在硬盘中,可以反复使用
PS: 直接使用命令的原始路径可以规避命令别名
# 5. 查找命令原始路径
which 命令名
# 6. 取消别名
# 1) which 方法
"""
which rm
alias rm='rm -i' # 经过修饰的系统 rm,带有提醒功能
/user/bin/rm
/user/bin/rm 文件名 # 即原始 rm,只删除,不再带提醒功能
"""
# 2) 加反斜杠
\rm
# 3)取消制作别名
unalias rm