Linux管理笔记,从基础到高级的系统管理技巧?Linux系统管理,这些技巧你掌握了吗?Linux系统管理,这些技巧你都会吗?
Linux基础管理
用户和权限管理
Linux作为多用户、多任务操作系统,其用户和权限管理机制是系统安全的核心基础,合理配置用户权限不仅能有效保障系统安全,还能实现精细化的资源访问控制,满足企业级环境的安全合规要求。
(1)用户管理
- 创建用户:
useradd -m username
(-m
选项自动创建用户主目录,推荐同时使用-s
指定默认shell) - 设置密码:
passwd username
(建议使用12位以上包含大小写字母、数字和特殊字符的复杂密码) - 修改用户属性:
usermod -s /bin/bash username
(修改默认shell,-L
可锁定账户) - 删除用户:
userdel -r username
(-r
选项彻底删除用户主目录及邮件,生产环境建议先备份)
(2)用户组管理
- 创建组:
groupadd -g 1001 groupname
(-g
指定GID,避免使用0-999的系统保留范围) - 将用户加入组:
usermod -aG groupname username
(-a
保持原有组,避免覆盖现有组成员关系) - 查看用户所属组:
id username
(显示UID、GID及所有附属组,groups
命令可简化输出) - 删除组:
groupdel groupname
(需确保组内无用户,系统主用户组需先修改用户属性)
(3)文件权限管理
Linux采用三位权限系统(所有者/组/其他用户),并支持特殊权限位(SUID/SGID/sticky bit):
-
权限数字表示法:
- 4=读(r)
- 2=写(w)
- 1=执行(x)
- 特殊权限:4=SUID,2=SGID,1=Sticky Bit
-
高级权限管理:
chmod 2750 directory/ # 设置SGID,新建文件自动继承组 chmod +t /tmp # 设置sticky bit,仅文件所有者可删除 chattr +i important.txt # 使用文件系统属性防止修改
-
常用命令:
chmod 750 filename
(所有者rwx,组r-x,其他无权限)chown user:group filename
(同时修改所有者和组,-R
递归处理目录)chmod +x script.sh
(添加执行权限,脚本需同时具备读权限)umask 027
(设置默认创建文件权限掩码,目录755,文件644)
文件系统管理
(1)磁盘管理
-
查看磁盘信息:
lsblk -f # 显示文件系统类型 df -hT # 人类可读格式显示挂载信息
-
LVM高级操作:
pvcreate /dev/sdb1 # 创建物理卷 vgextend vg01 /dev/sdb1 # 扩展卷组 lvresize -L +5G /dev/vg01/lv01 # 调整逻辑卷大小 resize2fs /dev/vg01/lv01 # 调整文件系统
-
SSD优化:
fstrim -v / # 手动触发TRIM tune2fs -o discard /dev/sda1 # 启用自动TRIM
(2)文件查找与处理
-
高级查找技巧:
find /var -size +10M -mtime -7 -exec ls -lh {} + # 查找7天内修改的大于10MB文件 locate --regex '\.(conf|cfg)$' # 正则匹配配置文件
-
文件处理管道:
find . -name "*.log" -print0 | xargs -0 grep -l "error" # 安全处理含空格文件名
进程管理
(1)高级进程监控
-
实时分析工具:
htop # 增强型top nmon # 全面系统监控 bpftrace -e 'tracepoint:syscalls:sys_enter_* { @[probe] = count(); }' # 动态追踪
-
进程资源限制:
ulimit -a # 查看当前限制 prlimit --pid $$ --nproc=500 # 临时修改限制
(2)系统服务管理
- Systemd高级用法:
systemctl list-unit-files --type=service # 查看所有服务 journalctl -u nginx --since "2023-01-01" --until "2023-01-02" # 精确时间日志
Linux网络管理
高级网络配置
(1)网络诊断工具
- 深度分析:
ss -tulnp # 替代netstat显示连接 mtr example.com # 结合ping+traceroute tshark -i eth0 -f "tcp port 443" # Wireshark命令行版
(2)网络性能优化
-
TCP调优参数:
echo "net.core.rmem_max=4194304" >> /etc/sysctl.conf sysctl -p
-
多队列网卡:
ethtool -L eth0 combined 8 # 启用多队列
Linux安全管理
(1)高级安全加固
- SSH加固:
ssh-keygen -t ed25519 -a 100 # 强密钥生成 sshd_config配置: PermitRootLogin no MaxAuthTries 3 LoginGraceTime 1m
(2)审计与监控
- auditd配置:
auditctl -a always,exit -F arch=b64 -S open -F path=/etc/passwd ausearch -k passwd_access # 查询审计日志
高级管理技巧
(1)性能调优
- 内核参数:
vm.swappiness=10 # 减少交换倾向 vm.dirty_ratio=20 # 控制脏页比例
(2)自动化运维
- Ansible剧本:
- hosts: db_servers vars: db_version: "10.6" tasks: - name: Ensure PostgreSQL is installed yum: name: "postgresql-{{ db_version }}" state: present
(3)容器化部署
- Podman示例:
podman run -d --name web \ -p 8080:80 \ -v ./html:/usr/share/nginx/html:Z \ nginx:alpine
故障排查方法论
-
系统化诊断:
- 使用
dmesg | tail
检查内核日志 - 分析
/var/log/messages
时间线 - 使用
strace -p PID
追踪进程系统调用
- 使用
-
性能瓶颈定位:
perf top # CPU热点分析 iostat -x 1 # 磁盘IO监控 sar -n DEV 1 # 网络流量统计
持续学习路径
-
认证体系:
- RHCE/LPIC认证课程
- Kubernetes官方认证(CKA/CKAD)
-
实践建议:
- 搭建Kubernetes集群测试环境
- 参与Linux内核邮件列表讨论
- 定期进行灾难恢复演练
专业建议:建立完整的变更管理流程,包括:
- 测试环境验证
- 变更窗口申请
- 详细回滚方案
- 事后复盘报告
通过系统学习上述内容,您将能够从Linux基础管理逐步进阶到企业级运维,优秀的系统管理员需要具备:
- 深入的系统原理理解
- 自动化运维思维
- 安全合规意识
- 系统性故障排查能力
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。