1.更改主机名称
hostnamectl set-hostname 更改名
2.切换用户
su 用户名
3.发行版本
cat /etc/redhat-release
4.内核版本
uname -r
5.当前所在目录
pwd
6.切换目录
cd 目录路径
7.修改登录密码
passwd 用户名
8.显示当前时间
date
date -s "20220709 10:00:00"
9.设置系统时区
timedatectl set-timezone 时区名
timedatectl list-timezones 查看所有时区
10.查看目录文件
ls
ll
ls -R 以递归方式指出所有内容
11.文件类型
l 链接文件
d 目录文件
- 普通文件
p 管道文件
c 字符文件
b 块设备文件
s 套接字文件
12.软硬链接的区别
1.inode节点号不一样
2.软链接存储的内容是源文件的路径
3.源文件误删后,软链接损坏,硬链接依然可以正常查看
4.误删后,重新创建同命文件,硬链接查看源文件a的内容,软连接查看的是新文件的内容
13.创建软连接
ln -s 源文件 目标文件
14.创建硬链接
ln 源文件 目标文件
15.文件操作
mkdir 创建目录
touch 创建文件
rm -rf 删除文件
vim/vi 文件输入
i 编辑
:wq 保存退出
:q 不保存退出
16.vim的三种模式
1.命令模式
gg 跳到首行
G 跳到末行
yy 进行复制
p 粘贴
dd 删除
2.插入模式
i:在光标所在字符前开始插入
a:在光标所在字符后开始插入
o:在光标所在行的下面另起一新行插入
s:删除光标所在的字符并开始插入
I:在光标所在行的行首开始插入 如果行首有空格则在空格之后插入
A:在光标所在你行的行尾开始插入
O:在光标所在行的上面另起一行开始插入
S:删除光标所在行并开始插入
另外 u 撤销上一步的操作 Ctrl+r 恢复上一步被撤销的操作
ESC 切换到命令模式
3.末行模式
:r /text/a 打开文件
/匹配字符 查找内容
:set nu 显示行号
:s /同一行内容/要替换内容
:%s /旧内容/新内容/g 全局替换
:起始行号,结束行号 s //
17.查看文档命令
cat
tail
head
less 可以回翻
more 翻到结尾自动退出
18.过滤文件内容 ---- grep
grep -c 显示行数
grep -i 忽略大小写
grep -n 显示行号
grep -v 反选
grep ^[a] 以a开头
grep ^[admin] 以里面所有字符开头都可
grep q$ 以q结束的
grep ^$ 过滤空白行
19.cut 命令
-d 以什么为间隔符
-f 选取我们需要的列
20.sort命令
-f 忽略大小写
-r 反向排序
-u 去重
-t 指定间隔符
21.wc命令
-l 只显示行数
-w 只显示单词数
-c 只显示字节数
22.查找文件路径
whereis
which
locate
find
-type 查找文件类型
-size +, - 按字节大小查询
-mtime/atime/ctime +,- 按时间查找
-name
23.压缩命令
tar t/cvf 只打包 .tar
c/x z/j/J f 打包压缩 .tar.gz/.tar.bz2/.tar.xz
zip
zip -q -r xx.zip 目录
unzip
24.设置变量
1.普通变量
2.环境变量
~/.bashrc
3.命令别名
alias 别名='原命令 + 参数'
alias cdt='cd /root/test'
对于当前用户,永久有效: ~/.bashrc
对于每个用户都生效: /etc/bashrc
25.命令历史
history
use:
!编号 执行历史里面某一条命令
26.快捷键
ctrl+l 清屏
tab 补命令
ctrl+c 终止现在进程
ctrl+a 光标移到最开始
ctrl+e 光标移到最后
ctrl+w 按单词删除
ctrl+u 删除光标之前的内容
ctrl+k 删除光标之后的内容
alt +back 删除
27.特殊符号
^ 匹配首
$ 匹配尾
* 通配符,
? 代替单个字符
[] 方括号中任意一个字符 [^]取反 [a..f]
; 同时执行多条命令用;号隔开
{..} 匹配任意一个字符串
\ 转义符
`` 可以加命令
'' 里面都是字符串 强引用
"" 可以使用变量 弱引用
28.用户和组管理
1.用户
普通用户
root用户
系统用户
2.组
基本组
附加组
3.用户配置文件
用户账号文件 /etc/passwd
x表示有密码(经过shadow保护)
用户密码文件 /etc/shadow
用户组账号文件 /etc/group
29.useradd, usermod
-c comment:用户全名或描述。
-d home-dir:指定用户主目录。
-e date:禁用账户的日期,格式为:YYYY-MM-DD。
-f days:口令过期后,账户禁用前的天数。
-g group-name:用户所属主组群的组群名称或GID。
-G group-list:用户所属的附属组群列表,多个项目用逗号分隔。
-m:若主目录不存在则创建它。
-M:不创建用户主目录。
-n:不要为用户创建用户私人组群。
-r:创建UID小于500的不带主目录的系统账户。
-p:加密的口令。
-s:指定用户登录 Shell,默认为 /bin/bash。
-u UID:指定用户的 UID,它必须是唯一的,且大于499。
30.删除用户
userdel -r 用户名
31.组
1.添加组
groupadd -g
2.修改组
groupmod -g
3.删除组
groupdel 组名
31.提权
/etc/sudoers
32.查看用户信息
whoami
lastlog
last
who
33.权限
ll 查看权限
r 4
w 2
x 1
-
普通文件 rwx,r--,r-x,---,rw-
目录文件 ---,r-x, rwx
所属用户 u
所属组 g
其他用户 o
所有 a [all]
chmod u=rwx 给用户加权限
chmod u+r 给用户加个读权限
34.所属组
chown 新所属组:新数组 文件名 改变文件拥有者
chgrp 新数组 文件名 改变文件所属用户组
35.SUID
SUID: u+s: 短暂使用所属者的身份去操作
36.SGID
g+s
既可以作用于目录,也可以作用于可执行文件
只要父目录有SGID权限,所有的子目录都会递归继承
执行者对于该可执行文件需要具有x权限
在执行过程中,调用者会暂时获得该文件的所属组权限
37.Sticky Bit权限
o+t
目前只针对目录有效,对于目录的作用是:当用户在该目录下建立文件或目录时,仅有自己与 root才有权力删除。
最具有代表的就是/tmp目录,任何人都可以在/tmp内增加、修改文件(因为权限全是rwx),但仅有该文件/目录建立者与 root能够删除自己的目录或文件。
38.ACL权限
setfacl -m u:xixi:rwx dir
39.软件安装
1.挂载光盘
mount /dev/sr0 /mnt/cdrom
2.显示所有设备
lsblk
3.软件 rpm
zziplib-utils-0.13.68-8.el8.x8 6_64.rpm
软件名 主版本号 bug修改次数 发布次数 企业linux版本
rpm -ivh 包名 下载
rpm -evh 包名 卸载
rpm -pqi 查看详细信息
rpm -qa 查看所有安装的软件包
-ql 已安装文件列表 释放了那些文件
-qf 文件的绝对路径 文件是那个提供的
-va 校验软件是否完整
4.yum
自动解决依赖关系,安装软件包可以自动识别软件所需要的依赖包
并且自动匹配位置对依赖包进行下载一次性安装
/etc/yum.repos.d/base.repo
[BaseOS] 源标识名
name=BaseOS 源标识描述信息
baseurl=file:///mnt/cdrom/BaseOS 统一资源定位
gpgcheck=0 关闭软件公私钥验证
enabled=1 开启启用
[APPStream] 源标识名
name=APPStream 源标识描述信息
baseurl=file:///mnt/cdrom/APPStream 统一资源定位
gpgcheck=0 关闭软件公私钥验证
enabled=1 开启启用
yum install or dnf install 安装
remove 卸载
list
repolist
groupinstall
grouplist
groupremove
sreach
provides
40.磁盘分区
1.分区条件(查看主机的磁盘设备)
lsblk fdisk -l
2.创建分区
fdisk 磁盘设备名
3.格式化(指定文件系统类型)
mkfs.格式类型 分区
mkswap 分区名 swap分区
4.使用挂载
mount 文件系统名称 挂载点目录
swapon 文件系统名称 激活swap分区
vim /etc/fstab
5.lvm逻辑卷
将多块硬盘在逻辑层动态集合,可以将多块硬盘当作一块硬盘实现,避免造成空间浪费
磁盘动态管理,能够在分区正常挂载使用时随时扩大分区
lvm --逻辑层 (pv物理卷 vg卷组 lv逻辑卷)
PE物理卷的基本单位默认4MB
LE逻辑卷的基本单位默认和PE大小一样
1.lvm磁盘动态整合
(1)添加多块硬盘整合
(2)创建分区
(3)pv物理卷
pvcreate 分区
pvs
pvdisplay
pvremove
(4) vg卷组
vgcreate 名 要加到卷组的卷
vgcreate -s 大小 名 要加到卷组的卷
vgs
vgremove
(5) 逻辑卷
lvcreate -L 大小 dev/vg1/lv1 vg1 卷组
lvs
lvextend -L +5G /dev/vg1/lv1 扩大逻辑卷
lvremove
(6) 格式化
mkfs.xfs /dev/vg1/lv1