Linux – 实用指南
此页面旨在作为紧凑但实用的Linux参考。
所有示例都是通用的,适用于大多数Linux发行版
(Debian/Ubuntu,RHEL/Fedora,Arch,Alpine),除非另有说明。
1. 文件结构和导航
Linux 使用一个中央树状结构 (/),而不是像 Windows 那样使用驱动器字母。
重要文件夹:
/– 系统的根目录/home– 个人用户文件夹/etc– 配置文件/var– 变量数据(日志,邮件,缓存)/usr– 程序和库/tmp– 临时文件/srv– 服务数据(网页,应用程序)
导航完全通过终端进行。您始终在“当前目录”中工作。
查看当前路径:
pwd
显示当前文件夹中的文件和文件夹:
ls
ls -lah
选项:
-l显示列表视图-a还显示隐藏文件-h使大小可读
在文件夹结构中移动:
cd /path/to/folder
cd ..
cd ~
2. 管理文件和文件夹
文件和文件夹完全通过命令创建、移动和删除。
创建一个文件夹:
mkdir folder
mkdir -p a/b/c
-p 会确保缺失的中间目录也会被创建。
创建一个空文件或更新时间戳:
touch file.txt
复制文件或文件夹:
cp source dest
cp -a source dest
-a (归档) 保留权限、所有权和符号链接,几乎总是推荐使用。
移动或重命名文件或文件夹:
mv old new
删除文件和文件夹:
rm file
rm -r folder
rm -rf folder
-r= 递归-f= 强制,无需确认
仅在你确定自己在做什么时使用 rm -rf。
创建符号链接:
ln -s target link
3. 查看和阅读文件
查看文件有多种工具可用,具体取决于大小和用途。
显示完整内容:
cat file
适合小文件。
互动查看(滚动和搜索):
less file
查看第一行或最后一行:
head -n 20 file
tail -n 20 file
实时跟踪文件(例如日志):
tail -f /var/log/syslog
4. 搜索和过滤文本
Linux 提供强大的工具来搜索和过滤文本,特别是在日志和配置文件中。
搜索文本:
grep "text" file
grep -R "text" folder
grep -Rni "tekst" folder
选项:
-R= 递归-n= 行号-i= 不区分大小写
按名称搜索文件:
find . -name "*.log"
按修改日期搜索文件:
find . -type f -mtime -7
从文本中提取列或字段:
awk '{print $1}' file
cut -d: -f1 file
5. 权利与所有权
Linux 通过用户、组和每个文件的权限来工作。
查看权限:
ls -l
调整权限:
chmod 644 file
chmod 755 script.sh
意义:
644= 业主可读写,其他人可读755= 对所有人可执行
调整所有者和组:
chown user:group file
查看当前用户和组:
id
groups
6. 过程和系统状态
Linux 提供了对活动进程和系统使用的深入洞察。
显示所有进程:
ps aux
实时CPU和内存概览:
top
htop
查看内存使用情况:
free -h
每个文件系统的磁盘空间:
df -h
文件夹大小:
du -sh folder
结束一个过程:
kill PID
kill -9 PID
-9 强制关闭,只应作为最后的手段使用。
7. 网络和连接性
网络状态和连接性对服务器和应用程序至关重要。
网络接口和路由:
ip a
ip r
监听端口和进程:
ss -tulpn
测试网络连接:
ping domain.tld
执行HTTP请求:
curl https://site.tld
curl -I https://site.tld
查询DNS信息:
dig domain.tld
检查端口是否可达:
nc -vz host 443
8. 服务和日志 (systemd)
大多数现代Linux系统使用systemd进行服务管理。
服务的状态和管理:
systemctl status service
systemctl start service
systemctl stop service
systemctl restart service
systemctl reload service
服务在启动时自动启动:
systemctl enable service
systemctl disable service
查看日志:
journalctl -u service
journalctl -u service -f
journalctl -p err
9. 包管理器
软件通过发行版的包管理器安装。
Debian / Ubuntu (apt)
apt update
apt install package
apt remove package
apt purge package
apt autoremove
RHEL / Fedora (dnf)
dnf install package
dnf remove package
dnf search package
弓形(pacman)
pacman -S package
pacman -Rns package
pacman -Syu
阿尔卑斯 (apk)
apk add package
apk del package
10. Git – 版本控制
Git用于代码和配置的版本控制。
基础指挥部:
git init
git clone url
git status
git add .
git commit -m "description"
与远程同步:
git pull --rebase
git push
对变更的洞察:
git log --oneline --graph
git diff
11. Docker – 容器
Docker 使得应用程序能够在隔离的环境中运行。
管理容器中的图像:
docker pull image
docker images
docker ps
docker ps -a
启动和管理容器:
docker run -d -p 8080:80 image
docker logs container
docker exec -it container sh
Docker Compose:
docker compose up -d
docker compose down
12. 基础安全
一个最低限度的安全基础是至关重要的,尤其是在服务器上。
防火墙(Ubuntu):
ufw status
ufw allow 22
ufw enable
Nftables(低级防火墙):
nft list ruleset
防止暴力破解攻击:
fail2ban-client status
自动安全更新:
apt install unattended-upgrades
13. 常用工具
curl,wget– HTTP 请求jq– 处理 JSONrsync– 高效的文件同步tmux– 多个 shell 在一个会话中ncdu– 分析磁盘空间lsof– 打开的文件和端口tcpdump– 检查网络流量
