指定运行级别
查看当前默认的级别:
systemctl get-default
设置默认级别:
systemctl set-default TARGET.target
其中TARGET.target可以是multi-user.target或者graphical.target
找回root密码
面试题:如何找回root密码
以centos7.6以后为例:
- 启动系统,进入开机页面,在界面按"e"进入编辑界面
- 进入编辑界面,使用键盘上的上下键把光标往下移动,找到以“Linux16”开头内容所在的行数,在行后面输入:init=/bin/sh
- 接着,输入完成后,直接按快捷键:ctrl+x 进入单用户模式
- 接着,在光标闪烁的位置输入:mount -o remount,rw / (注意:每个单词间有空格),完成后按回车键
- 在新的一行最后输入:passwd,完成后按回车键,输入密码。然后再次确认密码,密码修改成功后,会显示passwd…的样式,表明修改成功
- 接着,在鼠标闪烁的位置中(最后一行中)输入:touch /.autorelabel(注意:touch有一个空格),完成后按回车键
- 继续在光标闪烁的位置中,输入:exec /sbin/init(注意exec后面有一个空格)完成后按回车键,等待系统自动修改密码(时间有点长),完成后系统就会自动重启,新的密码生效
帮助指令
内建命令和外部命令
有一些查看帮助的工具在内建命令与外建命令上是有区别对待的。
内建命令实际上是shell 程序的一部分,其中包含的是一些比较简单的 Linux 系统命令,这些命令是写在bash源码的builtins里面的,由 shell 程序识别并在 shell 程序内部完成运行,通常在 Linux 系统加载运行时 shell 就被加载并驻留在系统内存中。而且解析内部命令 shell 不需要创建子进程,因此其执行速度比外部命令快。比如:history、cd、exit 等等。
外部命令是 Linux 系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调入内存。虽然其不包含在 shell 中,但是其命令执行过程是由 shell 程序控制的。外部命令是在 Bash 之外额外安装的,通常放在/bin,/usr/bin,/sbin,/usr/sbin等等。比如:ls、vi等。
我们可以使用 type 命令来区分命令是内建的还是外部的。例如这两个得出的结果是不同的
#得到这样的结果说明是内建命令,正如上文所说内建命令都是在 bash 源码中的 builtins 的.def中
xxx is a shell builtin
#得到这样的结果说明是外部命令,正如上文所说,外部命令在/usr/bin or /usr/sbin等等中
xxx is /usr/bin/xxx
#若是得到alias的结果,说明该指令为命令别名所设定的名称;
xxx is an alias for xx --xxx
man和help
help
# help xxx 只能用于内部命令,不能用于外部命令
$help cd
dhsafkdsjfakjsdgjkasdbkjdsb
fasdfdsfdsagsdgsdgsdgasdg
asdgdsagdsagdsgdagsdgdsg(一堆帮助文档)
$help ls
没有与“ls”匹配的XXXX
# xxx --help 用于外部命令
$ls --help
dhsafkdsjfakjsdgjkasdbkjdsb
fasdfdsfdsagsdgsdgsdgasdg
asdgdsagdsagdsgdagsdgdsg(一堆帮助文档)
man
得到的内容比用 help 更多更详细,而且 man 没有内建与外部命令的区分,因为 man 工具是显示系统手册页中的内容,也就是一本电子版的字典,这些内容大多数都是对命令的解释信息,还有一些相关的描述。通过查看系统文档中的 man 也可以得到程序的更多相关信息和 Linux 的更多特性。
man page是在线帮助,有什么问题都可以求助他,只要man XX 即可;
man page显示的内容文件放在 /usr/share/man中;
向下翻页: Page Down;
向上翻页: Page Up;
向下查找关键字:/keyword;
向上查找关键字:?keyword;
翻到最后一页:End;
翻到第一页:Home;
man中需要知道的一个概念就是man的“编号”,编号用于归类,比如man date后:
上图中的(1)是什么意思?
其实上面的编号范围从1~9,
(1) - 一般的命令;比如 man date
(4) - 设备文件,一般在/dev/目录下;比如 man zero
(5) - 配置文件,一般在/etc/目录下; 比如 man inittab
(8) - 管理员才能执行的命令;比如 man fdisk
man -f xxx : 查找xxx命令;
man -k xxx:查找man page中有xxx关键字的文件;
文件目录类
pwd、ls指令
cd指令
mkdir指令
rmdir指令
touch指令
cp指令
rm指令
mv指令
cat指令
more指令
less指令
echo
head指令
tail指令
>指令和>>指令
解释:>指令是覆盖,>>指令是追加
ln指令
history指令
时间日期类
date指令
cal指令
搜索查找类
find指令
locate指令
which指令
可查看某个指令在哪个目录下,
比如ls指令在哪个目录:which ls
grep指令和管道符号|
压缩和解压类
gzip/gunzip指令
zip/unzip指令
tar指令
最后一个指令中:-C 表示指定解压目录