Linux 操作系统基础入门教程
第一章:Linux 文件系统
核心目录结构
/ 根目录
├── /bin 基本命令(ls, cp, mv)
├── /boot 内核和引导文件
├── /dev 设备文件(一切皆文件!)
├── /etc 系统配置
├── /home 用户家目录
├── /lib 共享库
├── /proc 进程和内核信息(虚拟文件系统)
├── /tmp 临时文件
├── /usr 用户软件(bin, lib, share)
└── /var 可变数据(log, spool, cache)
一切皆文件
ls -l /dev/sda
ls -l /dev/tty
ls /proc/1
ls /proc/self/fd
第二章:文件权限
-rwxr-xr-- 1 alice developers 4096 Jan 15 main.py
│├─┤├─┤├─┤
│ │ │ └── other: r--(其他人只读)
│ │ └───── group: r-x(组可读可执行)
│ └──────── owner: rwx(所有者全部权限)
└────────── 类型: -文件 d目录 l链接
chmod 755 script.sh
chown user:group file
第三章:管道与重定向
管道是 Unix 哲学的体现——每个程序做好一件事,通过管道组合:
cat access.log | grep 404 | awk '{print $1}' | sort | uniq -c | sort -rn
cmd >
cmd >
cmd 2>
cmd &
cmd <
第四章:常用命令速查
| 类别 |
命令 |
| 文件 |
ls, cp, mv, rm, find, locate, stat |
| 文本 |
cat, less, head, tail, grep, awk, sed |
| 进程 |
ps, top/htop, kill, nice, nohup |
| 网络 |
curl, wget, ss, nc, tcpdump, iptables |
| 磁盘 |
df, du, mount, fdisk, lsblk |
| 权限 |
chmod, chown, sudo, su |
| 压缩 |
tar, gzip, zip, unzip |
第五章:进程与信号
long_running_task &
nohup long_running_task &
disown
kill -9 PID
kill -15 PID
kill -STOP PID
kill -CONT PID
思考题
- 「一切皆文件」的设计哲学有什么好处?Windows 为什么没采用这种设计?
- hard link 和 symbolic link 的区别?删除原文件后两者各是什么状态?
&&、||、; 在命令连接中有什么区别?
- 如何找出占用 8080 端口的进程并杀掉它?