Linux是一个多用户的操作系统,它存在多个用户信息,多个用户可以同时在系统上登陆工作。Linux的用户权限管理相对比较严格,每个文件对不同的用户提供不同的权限。
一、用户管理命令
1、存储用户信息
在Linux中,用户分为两大类,超级用户(rooty用户)和普通用户(多个);其中,在超级用户的模式下,输入不同的命令可以存储用户的信息。
(1)/etc/passwd 存储用户的属组
(2)/etc/group 存储用户的附加组。一个用户可以属于多个组,可以通过group查看各组中都有哪些用户。
(3)/etc/shadow 存储用户的密钥和密文(登录密码)。
2、用户管理
为了方便用户的管理,超级用户拥有 添加用户、删除用户、修改用户密码、修改用户属性的权限。
(1)添加用户 useradd username
-g group 指定用户的属组
-G group1、group2、group3........ 指定用户的附加组
-d path 指定用户默认登陆目录
-s +程序 指定用户使用shell
可以输入命令 “vi /etc/passed” 查看是否添加成功
(2)删除用户 userdel username
可以输入命令 “vi /etc/passed” 查看是否删除成功
(3)修改用户密码 passwd username
注意;再修改密码的时候,输入新密码时密码不同显,所以注意输入的字符,避免再次输入时出错。
(4)修改用户属性 username -s 修改用户的shell
username -g 修改用户的属组
username -G 修改用户的附加组
username -d 修改用户默认登陆目录
注:1、可使用 /etc/passwd /etc/group /etc/shadow 查看上述执行效果
2、root用户和普通用户之间的切换 命令:su username
二、进程管理命令
在冯.诺伊曼体系中,计算机被分为五个部分:计算器、控制器、存储器、输入设备、输出设备;
其中,计算器和控制器为 CPU的组成部分,内存为存储器,输入/输出设备就是我们所说的 I/O
I/O 为VFS(虚拟文件系统)外界的统一的接口。
进程是一组有序的指令、数据、资源的集合,它是动态的、虚拟的,是一个程序的执行过程。在程序运行过程中,进程将保存在磁盘上的二进制可执行文件加载到内存上,使程序执行。
操作系统通过管理PCB(进程控制块)管理进程。一个PCB对应一个进程实体,PCB之间是一个双向的循环链表,操作系统通过访问循环链表来查找需要的PCB。
1、进程的属性
pid(进程号) 优先级 程序计数器 程序上下文 资源
2、进程状态的转换关系
CPU在运行时只会在就绪的进程中选择提取进程
3、进程的创建和释放
创建进程: 先 创建PCB, 后 加载程序;
释放进程: 先 释放进程实体,后 释放PCB;
如果进程实体被释放,PCB依然存在,则该进程存在,则会出现僵尸进程,因为操作系统只访问PCB,通过PCB访问进程实体。
4、进程管理
(1)查看进程 ps Linux中查看进程命令(显示的是在ps执行的那一刻,系统里的所有进程)
top 显示实时进程(空间)信息
(2)执行进程 路径+可执行文件名称 例: ./main 在前台执行,所以不显示进程
路径+可执行文件名称 & 例: ./main & 在后台执行,显示部分进程
(3)结束进程 kill pid 结束进程(同一个进程中,kill不一定能关闭所有,权限不足)
kill 9 pid 强制关闭进程
(4)挂起进程 kill -stop pid 例:kill -stop 7104 (7104为进程编号)
(5)唤醒进程 ps -ef | grep bash
其中,| 为管道,grep 表示过滤。
三、系统运行级别简介 (0——6 级)
0级:关闭
1级:单用户模式,仅root用户使用
2级:不带网络的多用户级别
3级:完全的多用户模式,优先进入字符界面
4级:系统未使用
5级:X11图形化界面
6级:重启
关机命令: init 0 shut down halt
重启命令: init 6 reboot