控制对文件的访问
1。什么是文件系统权限?它是如何工作的?如何查看文件的权限?
答:文件系统权限就是规定谁能对文件 / 文件夹做什么(比如看、改、删)的规则。简单说,就是分 "所有者、所属组、其他人" 三类,给每类分配 "读、写、执行" 三种权限。操作时系统先看你属于哪类,再查有没有对应权限,有就允许,没有就拦着。
查看方式:
Linux/mac:终端输ls -l 文件名,看开头的rwxr--r--这类字符(3 个一组,对应三类用户的权限)
Windows:右键文件→属性→安全,就能看到谁有啥权限
2.解释‘-rw-r--r--’这个字符串。
答:这串字符代表文件权限:
第一个-表示这是个文件(文件夹是d)
接下来rw-:文件主人能读、能改,不能执行
再r--:同组用户只能读,不能改和执行
最后r--:其他人也只能读,没别的权限
3.使用什么命令可以更改文件和目录的权限?写出分别使用符号法和数值法将权限从 754 修改为 775 的命令。
答:改权限用 chmod 命令。
符号法(假设文件 / 目录叫 file):
chmod g+w,o+x file
数值法:chmod 775 file
4.如何修改文件的所有者和所属组?
答:改所有者用 chown 命令,格式:chown 新所有者 文件名
也可以一步改两者:chown 新所有者:新组名 文件名
5.suid、sgid、sticky 这三个特殊权限对文件和目录有什么影响?
答:suid(u+s):文件执行时,临时获得文件所有者的权限(比如普通用户执行 passwd 能改密码,因为它有 suid)
sgid(g+s):对文件,执行时获所属组权限;对目录,里面新建的文件 / 目录自动继承该目录的所属组
sticky(o+t):只对目录有效,里面的文件只有自己或目录 owner 能删(比如 /tmp 目录,防止别人删你文件)
6. umask 在文件权限管理中有什么作用?解释 umask 0022 命令的作用。
答:umask 是设置新建文件 / 目录默认权限的 "掩码",用来减去不需要的权限。
umask 0022 表示:新建文件默认权限是 644(666-022),新建目录默认权限是 755(777-022)。
监控和管理 Linux 进程
- 如何理解 systemd 进程?
答:systemd 是 Linux 系统里管启动的 “大管家”,系统一开机它就跑起来,负责启动其他所有程序(比如服务、进程),还管着这些程序的运行、重启、停止啥的。现在大部分 Linux 发行版都用它来替代以前的 init 系统,启动更快,功能也更全。
- ps 和 top 有什么区别?
答:ps 是 “拍快照”,静态查看系统进程一瞬间的状态。一次性显示执行命令时的进程状态,看完就不动了。
top 是 “实时监控”,会持续刷新显示进程状态 ,还能看到 CPU、内存占用变化,适合盯着看动态。
- 解释 ps aux 和 ps -ef 这两个命令和参数的作用。
答:ps aux
作用:查看所有用户的进程(包括后台进程)。
重点参数:
a:显示所有用户的进程。
u:按用户友好格式显示(如用户名、CPU / 内存占用)。
x:显示无终端关联的进程(如后台服务)。
适合场景:快速查看进程资源占用(CPU/Memory)。
ps -ef
作用:显示完整的进程信息,包括父进程关系。
重点参数:
-e:显示所有进程(等价于 a)。
-f:显示完整格式(如 PPID 父进程 ID、完整命令行)。
4.进程状态有哪些?
答:进程状态常见有:
R:运行中或等待运行
S:睡眠中(等待事件)
D:不可中断睡眠(等硬件响应)
T:暂停(被信号暂停,如 Ctrl+Z)
Z:僵尸进程(已终止但父进程未回收)
X:已死亡(极少见,系统很快回收)
额外符号:
<:高优先级进程
N:低优先级进程
+:前台进程组
通过 ps aux 或 ps -ef 的 STAT 列查看。
5.怎么理解作业 (Job) 和作业控制?
答:作业 (Job)
就是 shell 里启动的一个或多个进程(比如用管道连起来的命令算一个作业)。
作业控制
让你在不关掉程序的情况下,暂停、恢复或切换作业。
常用操作:
Ctrl+Z:暂停当前作业(比如暂停 vim)。
jobs:查看所有作业(显示 [1]、[2] 这样的编号)。
fg %1:把作业 1 调回前台继续执行。
bg %1:让作业 1 在后台继续跑。
核心区别
作业是用户视角的 “任务”,进程是系统视角的程序实例。
- 说明 kill 命令中使用 9 和 15 信号量的区别
答:kill 命令中常用的信号量区别:
-9(如 kill -9 PID)
暴力终止:直接强制进程退出,不清理资源。
适用于卡死的进程,但可能导致数据丢失或文件损坏。
-15(默认,如 kill PID)
温柔终止:通知进程自行清理资源后退出。
进程可忽略此信号,导致终止失败。