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 命令
命令搜索顺序
相关推荐
lqlj223325 分钟前
Linux常用命令
linux·运维·服务器
前端熊猫42 分钟前
排序算法学习笔记
笔记·学习·排序算法
itachi-uchiha1 小时前
深入理解 Linux 中的 last 和 lastb 命令
java·linux·服务器
auspark1 小时前
macos下cocoapods的学习
学习·macos·cocoapods
朔北之忘 Clancy1 小时前
2022 年 12 月青少年软编等考 C 语言五级真题解析
c语言·开发语言·c++·学习·算法·青少年编程·题解
还有几根头发呀2 小时前
Ubuntu中dpkg命令和apt命令的关系与区别
linux·运维·ubuntu
是懒羊羊吖~2 小时前
IP-----动态路由OSPF
网络·笔记·ospf
applebomb2 小时前
ubuntu下r8125网卡重启丢失修复案例一则
linux·ubuntu·驱动·r8125
AF012 小时前
Ubuntu系统上部署Node.js项目的完整流程
linux·ubuntu·node.js
宋隽颢3 小时前
STM32学习【4】ARM汇编(够用)
arm开发·stm32·学习