Linux 学习笔记(二):深入理解用户管理、运行级别与命令行操作

Linux 学习笔记(二):深入理解用户管理、运行级别与命令行操作

前置学习内容:Linux学习(一)

1. 用户管理

1.1 用户密码管理

创建用户密码
  • 使用 passwd 命令可以为指定用户设置密码:
shell 复制代码
sudo passwd `userName`
密码找回

当忘记密码时,可以采取以下步骤找回:

  1. 在登录界面按 e 键进入编辑模式。
  2. 在 utf-8 后面添加 init=/bin/sh。
  3. 按 Ctrl + x 退出编辑模式。
  4. 输入 mount -o remount,rw /,使根文件系统可写。
  5. 输入两次密码。
  6. 输入 touch /.autorelabel,标记系统需要重新标记安全上下文。
  7. 输入 exec/sbin/init,重启系统。

1.2 切换用户

使用 su 命令可以切换到其他用户,其中 - 选项可以保持当前用户的当前环境变量:

shell 复制代码
su - 切换用户名

高级别用户切换为低级别用户时,通常不需要输入密码。

1.3 查看用户信息

  • who am i:查看当前登录用户的信息。
  • last:查看用户的历史登录记录。

1.4 查看密码文件

  • /etc/passwd:存储用户账户信息的文件,包括用户名、用户ID、主目录和登录Shell等。
  • /etc/shadow:存储用户密码哈希值,安全性更高。
  • /etc/group:存储用户组信息。
shell 复制代码
cat /etc/passwd
cat /etc/shadow
cat /etc/group

2. 运行级别

运行级别切换:Linux 系统可以通过不同的运行级别来控制其功能。

2.1 切换运行级别

  • 使用 init 命令可以切换到不同的运行级别:
shell 复制代码
init [0-5]

2.2 查看默认运行级别

  • systemctl get-default:查看当前系统的默认运行级别。
  • runlevel:查看当前系统的运行级别。

2.3 设置默认运行级别

使用 systemctl set-default 命令可以设置默认的运行级别:

shell 复制代码
systemctl set-default ...

2.4 切换到图形界面

本操作前提是你在安装的时候安装了图形界面

  • 使用 startx 命令可以切换到图形界面,而不会改变当前的运行级别
shell 复制代码
startx

3. 命令行操作

3.1 帮助

man
shell 复制代码
man 命令
info
shell 复制代码
info 命令
help

3.2 快捷键

3.3 语法用法

查看目录列表:
  • ls -a:显示所有目录,包括以 . 开头的隐藏目录。
  • ls -al /目录:以详细列表形式显示指定目录的内容。
查看当前目录
shell 复制代码
pwd
返回用户根目录
shell 复制代码
cd ~
返回上一级目录
shell 复制代码
cd ..
清屏
shell 复制代码
clear

3.4 别名

创建别名
  • 方法一

  • 方法二

shell 复制代码
#在 .bashrc 或 .bash_profile 文件中添加如下内容:
vi .bashrc 或 vi .bash_profile
#按 `i` 进入插入模式
#添加
alias ll='ls -l'
#按 `ESC` 后 再按 :wq保存退出
然后使用 source .bashrc 或 source .bash_profile 使别名生效。

3.5 常用选项



3.6 历史命令

  • Ctrl + p:向上翻历史命令
  • Ctrl + n:向下翻历史命令

3.7 录制命令


3.8 外部命令与内部命令

判断命令类型

使用 type 命令 可以判断命令是外部命令还是内部命令。

shell 复制代码
type 命令
查看外部命令路径

使用 which 命令 可以查看外部命令的路径。

shell 复制代码
which 命令
命令搜索顺序
相关推荐
烟锁迷城25 分钟前
软考中级 软件设计师 第一章 第十节 可靠性
笔记
胡楚昊26 分钟前
B站pwn教程笔记-1
笔记
敲上瘾26 分钟前
动静态库的制作与使用(Linux操作系统)
linux·运维·服务器·c++·系统架构·库文件·动静态库
bohu834 小时前
亚博microros小车-原生ubuntu支持系列:8-脸部检测与人脸特效
linux·opencv·ubuntu·dlib·microros·亚博
Bunny02125 小时前
SpringMVC笔记
java·redis·笔记
架构文摘JGWZ6 小时前
FastJson很快,有什么用?
后端·学习
小池先生8 小时前
grafana+prometheus监控linux指标
linux·grafana·prometheus
浮梦终焉8 小时前
【嵌入式】总结——Linux驱动开发(三)
linux·驱动开发·qt·嵌入式
量子-Alex8 小时前
【多视图学习】显式视图-标签问题:多视图聚类的多方面互补性研究
学习
远方 hi8 小时前
linux如何修改密码,要在CentOS 7系统中修改密码
linux·运维·服务器