我们知道linux是一个操作系统。
安装了centos7和centos8
通过shell,链接到linux操纵系统
本文章的核心就是,对linux的操作领域和命令做一个集锦。
我们有一个centos7操作系统了。
应该关注哪些领域的事情,了解哪些命令。
这里基于我自己的理解,先总结一些领域。
1.操作系统,对硬件层面的配置和观察
查看进程,线程
cpu
内存情况
2.对安全层面的配置
端口
防火墙
3.对于操作文件和文件夹的配置
4.对于文件的处理
这是一个很好的学习框架。基于你的CentOS 7/8环境,我帮你把每个领域的关键命令做成了速查集锦,并补充了一个你可能会需要的重要领域。
0. 通用技能:获取帮助
man 命令- 最权威的手册命令 --help- 快速参数查看whatis 命令- 命令的一行说明
1. 硬件与系统资源观察
CPU相关
lscpu# CPU架构、型号、核心数top# 动态进程+CPU使用率(按1看每核心)htop# 更好看的top(需安装)mpstat-PALL1# 每核心CPU使用率cat/proc/cpuinfo# CPU详细信息内存
free-h# 人类可读的内存和swap使用vmstat1# 内存、swap、系统整体负载cat/proc/meminfo# 详细内存信息smem# 查看PSS内存(更准确的实际占用)磁盘与IO
lsblk# 块设备树状结构fdisk-l/dev/sda# 分区表信息df-h# 文件系统磁盘使用du-sh*# 当前目录下各文件夹大小iostat-x1# 磁盘IO详细统计(需sysstat包)进程与线程
psaux# 所有进程的详细列表ps-eLf# 查看线程(LWP列)pstree-p# 进程树+pidtop-H-pPID# 查看某进程的所有线程lsof-pPID# 进程打开的文件/网络连接硬件整体
lspci# PCI设备(显卡、网卡等)lsusb# USB设备dmidecode-tsystem# BIOS/主板/序列号(需root)sensors# 温度/电压(需安装lm_sensors)2. 安全层面(CentOS 7/8)
防火墙(firewalld)
systemctl status firewalld# 状态firewall-cmd --list-all# 查看当前规则firewall-cmd --add-port=8080/tcp--permanent# 开放端口firewall-cmd --add-service=http--permanent# 开放服务firewall-cmd--reload# 重载生效firewall-cmd--zone=public --remove-port=8080/tcp端口与网络监听
netstat-tunlp# 查看监听端口及对应进程ss-tunlp# 新一代netstat(更快)lsof-i:8080# 查看占用8080端口的进程SELinux(CentOS特色)
getenforce# 查看模式(Enforcing/Permissive/Disabled)sestatus# 详细信息setenforce0# 临时关闭(调试用)ausearch-mavc-tsrecent# 查看SELinux拒绝日志用户与权限
last# 最近登录记录lastb# 失败的登录尝试who# 当前在线用户journalctl-usshd# SSH登录日志passwd-l用户名# 锁定用户chmod600~/.ssh/authorized_keys# 正确权限示例3. 文件和文件夹的操作
基础操作
ls-lah# 显示所有文件(含隐藏)、详细、人类可读大小cp-rav源 目标# 递归+详细+保留属性mv旧 新# 移动或重命名rm-rf目录# 强制递归删除 ⚠️危险mkdir-pa/b/c# 创建多级目录touchfile# 创建空文件或更新时间戳权限与所有者
chmod755file# 设置权限(rwxr-xr-x)chownuser:groupfile# 修改所有者:组umask022# 设置默认创建权限(目录755/文件644)查找
find/-name"*.conf"-typef2>/dev/null# 按名找文件find.-mtime-7# 最近7天修改的文件locatenginx.conf# 基于数据库的快查(需updatedb)whichls# 命令所在路径whereisnginx# 二进制+源码+man手册位置链接
ln-s目标文件 链接名# 软链接(类似快捷方式)ln目标文件 链接名# 硬链接(同inode)4. 文件内容处理
查看文件
catfile# 全部显示(小文件)lessfile# 分页查看(大文件,用/搜索)head-n20file# 前20行tail-ffile# 实时跟踪日志文本处理(强大的组合)
grep-rn"error"/var/log/# 递归搜索含"error"的行并显示行号grep-E"error|warning"log# 正则匹配多个模式sed-i's/old/new/g'file# 替换文件内容(直接改文件)awk'{print $1,$3}'file# 打印第1和第3列wc-lfile# 统计行数sortfile|uniq-c# 排序并统计重复行cut-d:-f1/etc/passwd# 按:分割取第1列重定向与管道(核心思想)
command>file# 标准输出重定向(覆盖)command>>file# 追加command2>error.log# 错误输出重定向command|teefile# 输出到屏幕同时写文件psaux|grepnginx# 管道传递结果🔥 额外推荐你关注的领域
基于你的列表,建议补充第5个领域:
5. 系统服务与日志(Systemd时代)
systemctl status sshd# 服务状态systemctl enable/disable sshd# 开机自启/禁用systemctl start/stop/restart sshd systemctl list-units--type=service--state=running# 运行中的服务journalctl-xe# 查看最新系统日志journalctl-usshd-f# 实时跟踪某服务日志journalctl--since"1 hour ago"一句总结(记忆方式)
- 看硬件:
lscpu,free -h,lsblk - 看进程:
ps aux,top,lsof - 配安全:
firewall-cmd,getenforce,ss -tunlp - 操文件:
ls,cp,find,chmod - 处理文本:
grep,sed,awk,| - 管服务:
systemctl,journalctl