RHCE笔记
第一章 Linux的基本使用
在虚拟控制台和图形环境间切换
典型的Liux系统运行4个虚拟控制台和2个图形控制台
按CTRL-ALT-F[1-2]键可进入图形控制台
使用CTRL-ALT-F[3-6]键可切换不同虚拟控制台
在虚拟控制台执行startx可以运行图形,前提是装了图形界面
登录的三个方式:
1.图形化(桌面软件)
2.字符界面(文本)
3.web控制台(网页)
启动web界面的控制台
[root@localhost ~]# systemctl enable --now cockpit.socket
在浏览器输入IP地址:9090访问
gnome-terminal桌面工具
Ctrl-Shift-t 创建标签页
Ctrl-PgUp/PgDn 在标签页之间切换
AIt+[123...] 在标签页之间切换
Ctrl-Shift-c 复制已选内容
Ctrl-Shift-v 粘贴复制的内容
Shift-PgUp/PgDn 在标签页上下滚动
ctrl+l 清屏
cls 在windows的cmd清屏
[root@localhost ~]#
初步了解root用户
-
系统管理员账号,又称超级用户
-
root用户几乎拥有完整控制系统的权限,但同时也拥有几乎完全破坏系统能力
-
非特殊情况不要用root用户登录
执行简单的命令
显示日期
#显示系统当前日期
[root@localhost ~]# date
Sun May 22 10:11:05 CST 2022
#显示“年-月-日 时:分:秒”
[root@localhost ~]# date "+%Y-%m-%d %H:%M:%S"
2022-05-22 12:02:17
#查看今天是当年的第几天
[root@localhost ~]# date "+%j"
142
#查看系统的BIOS时间
[root@localhost ~]# hwclock
2022-05-22 12:04:35.757988+08:00
显示日历
#显示当前月份日历
[root@localhost ~]# cal
May 2022
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
#显示指定月份的日历
[root@localhost ~]# cal 5 2022
May 2022
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
#显示2022年所有月份
[root@localhost ~]# cal -y 2022
2022
January February March
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 1 2 3 4 5 1 2 3 4 5
2 3 4 5 6 7 8 6 7 8 9 10 11 12 6 7 8 9 10 11 12
9 10 11 12 13 14 15 13 14 15 16 17 18 19 13 14 15 16 17 18 19
16 17 18 19 20 21 22 20 21 22 23 24 25 26 20 21 22 23 24 25 26
23 24 25 26 27 28 29 27 28 27 28 29 30 31
30 31
April May June
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 1 2 3 4 5 6 7 1 2 3 4
3 4 5 6 7 8 9 8 9 10 11 12 13 14 5 6 7 8 9 10 11
10 11 12 13 14 15 16 15 16 17 18 19 20 21 12 13 14 15 16 17 18
17 18 19 20 21 22 23 22 23 24 25 26 27 28 19 20 21 22 23 24 25
24 25 26 27 28 29 30 29 30 31 26 27 28 29 30
July August September
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 2 1 2 3 4 5 6 1 2 3
3 4 5 6 7 8 9 7 8 9 10 11 12 13 4 5 6 7 8 9 10
10 11 12 13 14 15 16 14 15 16 17 18 19 20 11 12 13 14 15 16 17
17 18 19 20 21 22 23 21 22 23 24 25 26 27 18 19 20 21 22 23 24
24 25 26 27 28 29 30 28 29 30 31 25 26 27 28 29 30
31
October November December
Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa
1 1 2 3 4 5 1 2 3
2 3 4 5 6 7 8 6 7 8 9 10 11 12 4 5 6 7 8 9 10
9 10 11 12 13 14 15 13 14 15 16 17 18 19 11 12 13 14 15 16 17
16 17 18 19 20 21 22 20 21 22 23 24 25 26 18 19 20 21 22 23 24
23 24 25 26 27 28 29 27 28 29 30 25 26 27 28 29 30 31
30 31
修改密码
[root@localhost ~]# passwd
Changing password for user root.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
管理密码规则的配置文件
[root@localhost ~]# vim /etc/security/pwquality.conf
# Configuration for systemwide password quality limits
# Defaults:
#
# Number of characters in the new password that must not be present in the
# old password.
# difok = 1
#
# Minimum acceptable size for the new password (plus one if
# credits are not disabled which is the default). (See pam_cracklib manual.)
# Cannot be set to lower value than 6.
# minlen = 8
注意事项:
root用户可以修改自己和普通用户的密码,且不受到密码规则限制
普通用户修改密码前需要验证身份,且严格受到密码规则的限制
密码规则:单词、数字、大小写、特殊符号长度
显示当前用户信息
[root@localhost ~]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@localhost ~]# id student
uid=1000(student) gid=1000(student) groups=1000(student)
创建用户
[root@localhost ~]# useradd lisi
[root@localhost ~]# id lisi
uid=1001(lisi) gid=1001(lisi) groups=1001(lisi)
切换用户
[root@localhost ~]# su - lisi
[lisi@localhost ~]$ su - student
Password: # 输入student用户的密码
[student@localhost ~]$
# 普通用户切换到任意用户都需要验证密码
# root用户切换到任意用户都不需要验证密码
Tab键的作用
-
补齐命令
-
补齐参数
-
例如:
- $ xte<Tab> - $ xterm - $ Is myf<Tab> - $ Is myfile.txt
历史记录
#查看所有历史记录
[root@localhost ~]# history
#列出最近的N条历史记录
[root@localhost ~]# history 3
30 history 3
31 history 5
32 history 3
#调用第N条历史记录
[root@localhost ~]# !22
date "+%Y-%m-%d %H:%M:%S"
2022-05-22 12:36:59
#调用最近一条以d开头的命令
[root@localhost ~]# !d
date "+%Y-%m-%d %H:%M:%S"
2022-05-22 12:39:10
#调用最后一条参数
[root@localhost ~]# !$
cd
#ctr+r 搜索历史记录
[root@localhost ~]#
(reverse-i-search)`ca': cal -y 2022
#调用上一条命令的最后一个参数(ctrl+.)
54 history
[root@localhost ~]# passwd history
第二章 运行命令和获取帮助
命令的语法
命令 选项 参数
命令:某个具体的功能
选项:是对命令的修饰 - 选项的短格式 -- 选项的长格式 选项的短格式一般是长格式的缩写 短格式可以缩写、长格式不可以缩写
参数:所有一切你想要操作的对象都是参数(目录、文件、用户名…)
命令和选项之间使用空格分隔
命令和参数之间使用空格分隔
选项和选项之间使用空格分隔
选项和参数之间使用空格分隔
参数和参数之间使用空格分隔
选项和参数是可以省略的
获取帮助
whatis 命令
#首先进行数据库更新
[root@localhost ~]# mandb
#显示命令的简短描述
[root@localhost ~]# whatis passwd
openssl-passwd (1ssl) - compute password hashes
passwd (1) - update user's authentication tokens
passwd (5) - password file
--help选项
#查询命令本身的帮助
[root@localhost ~]# ls --help
Usage: ls [OPTION]... [FILE]... #选项用[ ]表示可选项
[root@localhost ~]# useradd --help
Usage: useradd [options] LOGIN #参数或者选项大写字母表示必选项
[root@localhost ~]# passwd --help
Usage: passwd [OPTION...] <accountName> # <>代表变量表示必选项
[root@localhost ~]# ls --help
Usage: ls [OPTION]... [FILE]... #...表示列表(可以接多个参数)
#例子
[root@localhost ~]# ls /opt/ /var/ /media/
/media/:
/opt/:
/var/:
account cache db ftp gopher lib lock mail opt run tmp
adm crash empty games kerberos local log nis preserve spool yp
[root@localhost ~]# date --help
Usage: date [OPTION]... [+FORMAT] #[+FORMAT] 表示固定的格式
or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] # a|b|c 表示多选一
#使用--help查询帮助
[root@localhost ~]# date --help
-s, --set=STRING set time described by STRING
#使用man查询帮助
[root@localhost ~]# man date
DATE STRING
The --date=STRING is a mostly free format human readable date string such as "Sun, 29 Feb 2004
16:21:42 -0800" or "2004-02-29 16:21:42" or even "next Thursday". A date string may contain items
indicating calendar date, time of day, time zone, day of week, relative time, relative date, and num‐
bers. An empty string indicates the beginning of the day. The date string format is more complex
than is easily documented here but is fully described in the info documentation.
# 设置时间
[root@localhost ~]# date -s "2022-5-22 14:10:30"
Sun May 22 14:10:30 CST 2022
[root@localhost ~]# date --help
Usage: date [OPTION]... [+FORMAT]
or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
#设置这种格式的时间[MMDDhhmm[[CC]YY][.ss]]
[root@localhost ~]# date 010112122021.12
#解释
MM:月
DD:日
hh:时
mm:分
CC:年份的前两位
YY:年份的后两位
.ss:秒
#查看设置的时间
[root@localhost ~]# date "+%Y-%m-%d %H:%M:%S"
2021-01-01 12:13:16
man帮助手册
使用方法
#首先查询useradd有哪几章帮助文档
[root@localhost ~]# whatis useradd
useradd (8) - create a new user or update default new user information
#然后用man查看详细信息
[root@localhost ~]# man 8 useradd
#man是一本书,查看man存放的位置
[root@localhost ~]# cd /usr/share/man/
[root@localhost man]# ls
ca da es hu it ko man1 man1x man2x man3p man4 man5 man6 man7 man8 man9 mann overrides pt ru sv uk zh_TW
cs de fr id ja man0p man1p man2 man3 man3x man4x man5x man6x man7x man8x man9x nl pl pt_BR sk tr zh_CN
#查询所有帮助文档包含passwd关键字的章节
[root@localhost ~]# man -k passwd
chgpasswd (8) - update group passwords in batch mode
chpasswd (8) - update passwords in batch mode
fgetpwent_r (3) - get passwd file entry reentrantly
getpwent_r (3) - get passwd file entry reentrantly
gpasswd (1) - administer /etc/group and /etc/gshadow
grub2-mkpasswd-pbkdf2 (1) - Generate a PBKDF2 password hash.
lpasswd (1) - Change group or user password
openssl-passwd (1ssl) - compute password hashes
pam_localuser (8) - require users to be listed in /etc/passwd
passwd (1) - update user's authentication tokens
passwd (5) - password file
passwd2des (3) - RFS password encryption
pwhistory_helper (8) - Helper binary that transfers password hashes from passwd or shadow to opasswd
saslpasswd2 (8) - set a user's sasl password
smbpasswd (5) - The Samba encrypted password file
sslpasswd (1ssl) - compute password hashes
userpasswd (1) - A graphical tool to allow users to change their passwords.
vncpasswd (1) - change the VNC password
基本操作如下表
man手册结构说明
man help info 的区别
man 相当于吃快餐,很快查询到帮助信息
help 相当于你去餐馆,点菜要很多种需求后得到的,比help详细很多,会给你解释这个选项是干什么用的,甚至还有一些例子
info 相当于你自己买菜回家自己做,更详细,会给你例子,对man的补充,篇幅很长,一般要很长时间查询
第三章 文件系统组成和基本操作
文件系统的组成
在Linux文件系统的结构:单根倒数状
所有的文件起始位置都是根目录
根目录在Linux有且仅有一个
命名大小写敏感
路径以'/'为分隔
文件和目录名
名字不能多于255个字符
所有字符都要求是有效的,除斜线(/)之外
不要使用某些特殊的字符在文件或者目录名中
当文件名中有特殊字符时应用引号保护引起来
命名和大小写敏感
例如:MAlL,Mail,mail和mAiL
绝对路径和相对路径
绝对路径:
-
以根开头的路径
-
文件位置的全路径
-
在任何位置都可以引用
相对路径:
-
不以斜线开头
-
当前工作目录的相对位置
-
在特定的位置才可以引用
#改变到一个绝对或者相对路径
[root@localhost ~]# cd /home/student/
[root@localhost /]# cd opt/luna/
cd改变目录
#显示当前工作目录
[root@localhost ~]# pwd
/root
#改变到上一级目录
[root@localhost sysconfig]# pwd
/etc/sysconfig
[root@localhost sysconfig]# cd ..
[root@localhost etc]# pwd
/etc
#改变目录到上一次工作目录
[root@localhost ~]# cd /var/ftp/
[root@localhost ftp]# cd -
/root
#改变到当前用户的主目录
[root@localhost ~]# cd /etc/sysconfig/
[root@localhost sysconfig]# cd
[root@localhost ~]#
#改变到某个用户的主目录
[root@localhost ~]# cd ~student/
[root@localhost student]# pwd
/home/student
ls列出目录内容
#显示当前目录或者指定目录下的内容
[root@localhost ~]# ls
anaconda-ks.cfg Desktop Documents Downloads initial-setup-ks.cfg Music Pictures Public Templates Videos
#显示所有文件包括隐藏文件
[root@localhost ~]# ls -a
. .bash_history .bashrc .cshrc Documents .ICEauthority .local .pki Templates
.. .bash_logout .cache .dbus Downloads initial-setup-ks.cfg Music Public Videos
anaconda-ks.cfg .bash_profile .config Desktop .esd_auth .lesshst Pictures .tcshrc .viminfo
#显示扩展信息
[root@localhost ~]# ls -l
total 8
-rw-------. 1 root root 1451 May 21 2022 anaconda-ks.cfg
drwxr-xr-x. 2 root root 6 May 21 2022 Desktop
drwxr-xr-x. 2 root root 6 May 21 2022 Documents
drwxr-xr-x. 2 root root 6 May 21 2022 Downloads
-rw-r--r--. 1 root root 1795 May 21 2022 initial-setup-ks.cfg
drwxr-xr-x. 2 root root 6 May 21 2022 Music
drwxr-xr-x. 2 root root 6 May 21 2022 Pictures
drwxr-xr-x. 2 root root 6 May 21 2022 Public
drwxr-xr-x. 2 root root 6 May 21 2022 Templates
drwxr-xr-x. 2 root root 6 May 21 2022 Videos
#递归显示所有的目录
[root@localhost ~]# ls -R
.:
anaconda-ks.cfg Desktop Documents Downloads initial-setup-ks.cfg Music Pictures Public Templates Videos
./Desktop:
./Documents:
./Downloads:
./Music:
./Pictures:
./Public:
./Templates:
./Videos:
#显示目录和符号链接信息
[root@localhost ~]# ls -ld /var/ftp/
drwxr-xr-x. 2 root root 6 Apr 23 2020 /var/ftp/
cp拷贝文件和目录
#将a.txt拷贝到tmp下面去
[root@localhost opt]# cp a.txt /tmp/
#拷贝多个文件
[root@localhost opt]# cp a.txt b.txt /var/
#拷贝目录
[root@localhost ~]# cp -r Desktop/ /opt/
[root@localhost ~]# ls /opt/
a.txt b.txt Desktop luna
#拷贝时保留权限
[root@localhost ~]# cp -p /home/student/wenhan.txt /opt/
[root@localhost ~]# ls /opt/
a.txt b.txt Desktop luna wenhan.txt
destination说明:
如果目标是一个目录,该拷贝把文件放到该目录下
如果目标是一个文件,该拷贝覆盖目标文件
如果目标不存在,该拷贝被重命名
本文来自博客园,作者:Cloudservice,转载请注明原文链接:https://www.cnblogs.com/whwh/p/16299296.html,只要学不死,就往死里学!