当前位置: 首页 > news >正文

Linux 系统管理笔记

一、常用目录结构

目录用途
/usr存放应用程序文件,/usr/local用于后安装软件
/var存放所有数据文件(日志、邮件等)
/proc虚拟文件系统,反映内核配置和状态(CPU、内存等信息)
/etc系统配置文件(RPM 安装软件的配置通常也放这里)

二、硬件与系统信息查看

查看项命令
内存总量grep MemTotal /proc/meminfo
交换分区/sbin/swapon -s
挂载光驱mount /dev/cdrom
时区设置timeconfig

三、常用命令速查

命令用途
head/tail查看长文件的开头和结尾
netstat查看网络状态
tar解压.tar.gz压缩包
ps查看进程
kill/kill -3终止进程(-3发送 SIGQUIT)
top实时查看系统状态
shutdown关闭系统
cat查看文件内容
ping测试网络连通性
ftp文件传输
man查看手册
lsof查看端口占用和进程打开的文件

四、文件系统管理

4.1 mount 命令

查看已挂载文件系统的信息,包括:

  • 挂载点与设备对应关系

  • 文件系统类型(ext4/xfs/nfs/tmpfs 等)

  • 挂载选项(rw/ro、noexec、nosuid、noatime 等)

4.2 RPM 包管理

操作命令
安装/升级rpm -Uvh 包名
卸载rpm -e 包名
查询包内文件rpm -q --filesbypkg 包名

五、网络配置

5.1 IPTables 端口映射

场景:外网1.2.3.4:81→ 内网192.168.0.2:8180

# DNAT:目的地址转换(入站) iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp --dport 81 -j DNAT --to-destination 192.168.0.2:8180 # SNAT:源地址转换(出站) iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -d 192.168.0.2 -p tcp --dport 8180 -j SNAT --to-source 192.168.0.1 # 允许访问 iptables -A INPUT -d 192.168.0.2 -p tcp --dport 8180 -i eth0 -j ACCEPT # 禁止某个 IP iptables -I INPUT -s 192.168.0.55 -j DROP

5.2 修改 IP/DNS/主机名

配置项文件路径示例
网卡 IP/etc/sysconfig/network-scripts/ifcfg-eth0IPADDR=218.104.106.180
DNS/etc/resolv.confnameserver 202.106.196.115
主机名/etc/sysconfig/networkHOSTNAME=xxx+hostname XXXX
多 IP 绑定创建ifcfg-eth0:0DEVICE="eth0:0"
网卡绑定(bonding)脚本加载bonding模块ifenslave bond0 eth0 eth1

重启网络service network restartifdown eth0 && ifup eth0


六、VPN 服务(PPTP)

6.1 安装包

  • dkms-2.0.5-1.noarch.rpm

  • kernel_ppp_mppe-0.0.5-2dkms.noarch.rpm

  • ppp-2.4.3-4.rhel3.i386.rpm

  • pptpd-1.2.3-1.i386.rpm

6.2 配置步骤

步骤文件配置内容
1. 日志配置/etc/syslog.confdaemon.debug /var/log/pptpd.log
2. IP 分配/etc/pptpd.conflocalip 172.22.1.120-160/remoteip 172.22.1.161-190
3. 用户认证/etc/ppp/chap-secretsuser pptpd password *
4. DNS 配置/etc/ppp/options.pptpdms-dns 202.101.172.35
5. 启动服务service pptpd start

七、NFS 服务

7.1 服务端配置

操作命令/文件
共享配置/etc/exports
启动服务service portmap start+service nfs start
重新加载配置exportfs -ra
查看共享showmount -e hostname

exports 参数说明

  • rw/ro:读写/只读

  • root_squash/no_root_squash:root 用户是否映射为匿名用户

  • all_squash:所有用户映射为匿名用户

  • sync/async:同步/异步写入

7.2 客户端使用

showmount -e server_ip # 查看可用共享 mkdir -p /home/nfs/public # 创建挂载点 mount -t nfs server:/home/public /home/nfs/public umount /home/nfs/public # 卸载

八、SELinux 管理

操作命令/配置
查看状态getenforce/sestatus -v
临时关闭setenforce 0(permissive 模式)
临时开启setenforce 1(enforcing 模式)
永久关闭/etc/sysconfig/selinuxSELINUX=disabled
内核参数/boot/grub/menu.lst添加selinux=0

九、NTP 时间同步

# 手动同步 ntpdate time.buaa.edu.cn hwclock -w # 写入硬件时钟 # 定时任务(crontab -e) 0 0 * * * /usr/sbin/ntpdate time.buaa.edu.cn;/sbin/hwclock -w

十、SSH/Telnet 优化(解决登录慢)

原因解决方法
DNS 反向解析/etc/hosts加入客户端 IP 和主机名
SSH DNS 检查/etc/ssh/sshd_config设置UseDNS=no
GSSAPI 认证GSSAPIAuthentication no
多余 DNS 配置注释/etc/resolv.conf中不使用的行
NSS 顺序/etc/nsswitch.conf改为hosts: files

重启 sshd/etc/init.d/sshd restart


十一、系统资源限制(ulimit)

参数说明
-ccore 文件最大值(blocks)
-d数据段最大值(KB)
-f创建文件最大值(blocks)
-l内存锁定最大值(KB)
-m常驻内存最大值(KB)
-n打开文件描述符最大值
-s堆栈最大值(KB)
-tCPU 时间上限(秒)
-u最大进程数
-v虚拟内存最大值(KB)

示例

ulimit -s 262140 # 设置堆栈为 256MB ulimit -u 16384 -n 65536 # 进程数和文件句柄数

永久生效:添加到/etc/profile


十二、TCP/IP 内核参数优化

12.1 高并发 Web 服务器优化(/etc/sysctl.conf

net.ipv4.tcp_fin_timeout = 30 net.ipv4.tcp_keepalive_time = 1800 net.ipv4.tcp_window_scaling = 0 net.ipv4.tcp_sack = 0 net.ipv4.tcp_timestamps = 0

12.2 解决 TIME_WAIT 过多

net.ipv4.tcp_tw_reuse = 1 net.ipv4.tcp_tw_recycle = 1

生效命令sysctl -p

12.3 其他重要参数

参数默认值建议值说明
tcp_syn_retries52SYN 重试次数
tcp_synack_retries52SYN+ACK 重试次数
tcp_keepalive_probes95keepalive 探测次数
tcp_keepalive_intvl7515探测间隔(秒)
tcp_retries2155活跃连接重试次数
tcp_orphan_retries73孤儿连接重试次数
tcp_fin_timeout6030FIN-WAIT-2 超时
tcp_max_tw_buckets180000适当增加TIME_WAIT 最大数量

十三、系统安全加固

13.1 关闭不必要服务

方法操作
inetd 服务编辑/etc/inetd.conf,注释不需要的服务
启动脚本/etc/rc.d/rc3.d/下将S改为s
工具关闭setup→ "system services" 或chkconfig

危险服务示例rshdrlogindfingerdlinuxconf(曾存在 root shell 绑定漏洞)

13.2 账号安全

措施操作
删除无用账号/etc/passwd移除 mail、news 等
限制 root 登录/etc/securetty去除虚拟终端
FTP 限制/etc/ftpusers加入 root
SUID 检查find / -perm -4000 -print
移除不必要 SUIDchmod -s

13.3 访问控制(TCP Wrappers)

# /etc/hosts.deny - 拒绝所有 ALL:ALL # /etc/hosts.allow - 允许特定 sshd:192.168.0.0/24

13.4 文件保护

# 锁定关键文件(连 root 都无法修改,需先 chattr -i) chattr +i /etc/shadow chattr +i /etc/inetd.conf # 清除历史命令记录 HISTFILESIZE=0 # .bash_profile ln -s /dev/null ~/.bash_history # 或链接到黑洞

13.5 物理安全

  • /etc/lilo.conf设置启动密码

  • 取消 root 远程 Telnet/FTP:重命名/etc/securetty或修改/etc/vsftpd.ftpusers

  • SSH root 登录:/etc/ssh/sshd_config设置PermitRootLogin yes


十四、VI 编辑器常用操作

14.1 模式切换

  • Esc进入命令模式

  • i/a/o进入编辑模式

14.2 移动与编辑

操作命令
光标移动h(左)j(下)k(上)l(右)
行首/行尾0/$
文件首/尾:0/:$
翻页Ctrl+f(下) /Ctrl+b(上)
插入i(光标前)I(行首)a(光标后)A(行尾)
换行插入o(下)O(上)
删除x(字符)dd(行)d0(前半行)d$(后半行)
查找/string(向下)?string(向上)n(下一个)N(反向)
替换:1,$s/old/new/g(全局替换)
显示行号:set number
保存退出:wq!
不保存退出:q!

十五、其他实用配置

功能配置方法
启动进入图形/文本界面/etc/inittabid:5:initdefault:id:3:initdefault:
图形↔控制台切换Ctrl+Alt+Fn(n=1-6) /Alt+F7(返回图形)
限制用户登录/etc/passwd中 shell 改为/sbin/nologin
限制登录失败次数/etc/security/limits.conf设置maxlogins 3
系统日志路径/var/log/messages
VMware Tools 安装VM → Install VMware Tools → 挂载光驱 → 执行.pl文件
http://www.jsqmd.com/news/695076/

相关文章:

  • 搞定Android 10/11系统定制:解锁OEM、修改运营商显示、隐藏HotSeat的实操记录
  • VMD滚动分解+BiLSTM多变量时序预测,防信息泄露,MATLAB代码
  • mermaid初体验
  • 放弃数据分析转Java开发:一个双非硕士的岗位选择与避坑思考
  • Office Custom UI Editor:重新定义你的Office工作界面,效率提升50%不是梦!
  • 如何在PUBG中实现完美压枪?罗技鼠标宏终极教程指南
  • 甜品店亏损怎么自救?从赔钱到赚钱的3个狠招-佛山鼎策创局破局增长咨询
  • Human IgE一步法ELISA试剂盒如何拓展临床应用边界?
  • 5分钟搞定TouchDesigner实时人体姿态追踪:MediaPipe插件终极指南
  • 从零搭建GEO接口服务(附完整源码)| 新手友好,实操无坑
  • 《AI大模型应用开发实战从入门到精通共60篇》004、Hugging Face入门:模型库、数据集与Tokenizers快速上手
  • 基于微信小程序的茶馆连锁(预约+茶叶茶具商城)系统小程序设计与实现
  • 别再为破洞和缝隙头疼了!用CGAL的Stitch功能一键缝合网格边界
  • 理解Hive
  • 别再只画PCA了!用mixOmics给你的多组学文章加点高级可视化(网络图、双标图、热图一键生成)
  • 为什么你的 Reels 越做越没人看?Instagram 算法正在惩罚这类内容 - SocialEcho社媒管理
  • 3分钟让你的Mac变身专业KTV:LyricsX桌面歌词体验指南
  • 【国家药监局UDI校验强制新规倒计时】:VSCode实时校验模板已开源,错过将影响三类器械注册申报
  • 为什么你的Windows效率工具还在说英文?PowerToys-CN汉化项目深度解析
  • Qt右键菜单不弹?别急,先检查这个属性(setContextMenuPolicy详解)
  • Cadence IC617与Calibre 2019在Ubuntu 20.04上的避坑安装与集成指南
  • 【Linux系统】Shell命令运行及其原理
  • 建行广东江门分行:数字人民币场景应用引领校园金融数字化新风尚
  • DAN-F10N-00B,标准精度双频GNSS天线模块,实现城市环境米级精准定位与简易集成
  • 别再写SFINAE了!C++26反射驱动的零成本抽象重构:4类高频元编程模式迁移路径+编译时间压缩至1/5实录
  • 2026 年出海品牌社媒基准:你的竞争对手都在用什么策略 - SocialEcho社媒管理
  • 简单的拖拉拽功能
  • 别再乱连了!Altium Designer里Net Label、Port、Sheet Entry到底怎么选?一张图帮你理清
  • 从‘网红脸’到‘可控艺术’:用StyleGAN系列玩转人脸编辑的保姆级避坑指南
  • Python处理图片:用Pillow保存JPEG/PNG时,如何平衡‘体积’与‘画质’?一份实测指南