Skip to content

用户管理

用户信息存储

  • 用户信息文件/etc/passwd

    • 格式:用户名:密码(口令):用户ID号:组用户ID号:用户家目录:用户的Shell目录
    • 示例:root:x:0:0:root:/root:/bin/bash
  • 用户组信息文件/etc/group

    • 格式:用户组名:密码:组ID号:成员列表
    • 示例:root:x:0:

增加用户

  • adduser:新增用户
    • 用法:sudo adduser 用户名称
    • 示例:sudo adduser tmpuser
      • 执行流程:
        1. 输入sudo密码
        2. 创建用户"tmpuser"
        3. 创建新组"tmpuser" (ID 1001)
        4. 添加用户到组
        5. 创建主目录/home/tmpuser
        6. /etc/skel复制配置文件
        7. 设置密码(需满足长度≥8字符)
        8. 填写用户信息(全名/房间号/电话等)
        9. 确认信息[Y/n]

删除用户

  • userdel:删除用户
    • 用法:sudo userdel 登录名
    • 示例:sudo userdel tmpuser

注意:删除用户不会清除用户目录

用户组操作

用户组作用

隔离权限,实现权限分组管理

增加用户组

  • groupadd:新增用户组
    • 用法:sudo groupadd 组名称
    • 示例:sudo groupadd vrpclass

删除用户组

  • groupdel:删除用户组
    • 用法:sudo groupdel 组名称
    • 示例:sudo groupdel vrpclass

管理组内用户

  • 添加用户到组
    adduser 用户名 组名
  • 从组移除用户
    deluser 用户名 组名

APT软件包管理工具

工作原理

  • 源服务器配置:/etc/apt/sources.list
  • 修改源地址:sudo gedit /etc/apt/sources.list
  • 更新软件源:sudo apt-get update

常用操作

命令功能描述
sudo apt-get update更新可用软件包列表
sudo apt-cache search 关键字搜索软件包
sudo apt-get install 包名安装软件包
sudo apt-get remove 包名移除软件包
sudo apt-get reinstall 包名重新安装软件包
sudo apt-get autoremove卸载自动安装且不再使用的软件包
sudo apt-get upgrade通过安装/升级更新系统
sudo apt-get full-upgrade通过卸载/安装/升级更新系统
sudo apt edit-sources编辑软件源信息文件
sudo apt satisfy 依赖关系使系统满足依赖关系字符串

g++编译工具套件

编译文件

  • 基础编译
    g++ 源代码.cpp
    • 生成默认程序a.out
  • 指定输出名
    g++ 源代码.cpp -o 程序名
    • 示例:g++ untitled-1.cpp -o myapp

运行程序

  • 语法:./程序名
  • 示例:./a.out./myapp

注意:命令与参数间必须有空格

进程管理

进程定义

正在运行的程序

显示进程信息

  • ps:process status
    命令功能描述
    ps显示当前终端进程
    ps -a显示当前终端所有进程
    ps -e显示系统所有进程
    ps -e | grep 进程名组合查询特定进程

动态进程监控

  • top:动态显示进程信息(按CPU占用率排序)
    • 退出:按 q
    • 交互命令
      快捷键功能描述
      k杀死进程(需输入PID)
      r调整进程优先级
      ds设置刷新间隔(秒)
      1切换显示CPU核心详情
      m切换内存显示模式
      z切换彩色/单色显示
      u按用户过滤进程

结束进程

  • kill:发送信号终止进程
    • 终止指定PID:kill -9 进程ID号
      • -9:强制终止信号
    • 终止同名进程:killall -9 进程名

链接

软链接(符号链接)

  • 特性
    • 文件A(链接)的inode与文件B(目标)不同
    • 文件A内容存储文件B的路径
    • 访问文件A自动重定向到文件B
    • 删除A不影响B,删除B导致A失效
  • 创建语法
    ln -s 源文件 软链接文件名

硬链接

  • 特性
    • 多个文件名指向同一inode节点
    • 修改内容影响所有链接文件
    • 删除任意链接不影响其他访问
  • 创建语法
    ln 源文件 硬链接文件名

注意:避免在共享目录(如/mnt/hgfs)使用链接

作业

动手熟悉所有指令操作

知识如风,常伴吾身