用户管理
用户信息存储
用户信息文件:
/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- 执行流程:
- 输入sudo密码
- 创建用户"tmpuser"
- 创建新组"tmpuser" (ID 1001)
- 添加用户到组
- 创建主目录
/home/tmpuser - 从
/etc/skel复制配置文件 - 设置密码(需满足长度≥8字符)
- 填写用户信息(全名/房间号/电话等)
- 确认信息
[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调整进程优先级 d或s设置刷新间隔(秒) 1切换显示CPU核心详情 m切换内存显示模式 z切换彩色/单色显示 u按用户过滤进程
- 退出:按
结束进程
- kill:发送信号终止进程
- 终止指定PID:
kill -9 进程ID号-9:强制终止信号
- 终止同名进程:
killall -9 进程名
- 终止指定PID:
链接
软链接(符号链接)
- 特性:
- 文件A(链接)的inode与文件B(目标)不同
- 文件A内容存储文件B的路径
- 访问文件A自动重定向到文件B
- 删除A不影响B,删除B导致A失效
- 创建语法:
ln -s 源文件 软链接文件名
硬链接
- 特性:
- 多个文件名指向同一inode节点
- 修改内容影响所有链接文件
- 删除任意链接不影响其他访问
- 创建语法:
ln 源文件 硬链接文件名
注意:避免在共享目录(如
/mnt/hgfs)使用链接
作业
动手熟悉所有指令操作
