最快的解决策略,是找对方法
xxx --help
man xxx
菜鸟教程Linux 命令大全:https://www.runoob.com/linux/linux-command-manual.html
目录切换
切换到根目录:cd ~
返回上一次所在目录:cd -
用户切换
用户切换:su - 用户名 #不加斜杠-切换用户后当前目录不变,加了目录变为根目录
- 非root(管理员)用户的符号会显示:$
- root(管理员)用户则会显示:#
命令前加sudo命令,可使普通用户可执行管理员权限
Linux线程与进程的区别:
线程 == 轻量级的进程
- 多进程数据不共享
- 多线程数据共享
底层都是数据结构:指针->差不多
进程的三种状态:
- 运行-R
- 休眠-S
- 僵尸-Z
进程管理工具:
- ps:查看进程
- top:查看进程的动态信息
- kill:杀进程
- pstree:查看进程树
- pgrep:搜索进程
- lsof:查看进程打开的文件
BSD格式显示进程:ps aux
标准格式显示进程:ps -ef
按CPU从大到小排序:ps aux --sort -%CPU
强制终止进程:kill -9 进程ID
杀死指定用户的所有进程:kill -u 用户名
服务管理systemcal
systemcal start/stop/status/reload/restart/condrestart/enable/disable xxx
启动/关闭/查看服务状态/重新加载/重启/配置无误则重启/服务开机自启动/服务禁止自启动
性能监控
- uptime:监控CPU使用情况
- free:监控内存及交换分区使用情况
- df:监控磁盘使用情况
- du:显示目录或文件的大小
- 监控网络使用情况
ip:查看网卡接口信息
netstat:打印网络连接、路由表、网络接口统计等信息 - 监控进程使用情况
ps:查看当前进程信息(ps -aux)
top:动态查看进程信息
虚拟文件系统目录 - /proc/
查看CPU信息:cat /proc/cpuinfo
查看内存信息:cat /proc/meminfo
查看交换空间使用情况:cat/proc/swaps
查看版本号:cat /proc/version
查看挂载信息:cat /proc/mounts
网络配置
- ifconfig:网络接口参数
- hostnamectl:主机名参数
- route:路由参数
也可通过文件修改网络参数配置 /etc/sysconfig/network-scripts/
- 网络故障排错
ping:本地回环127.0.0.1/本地IP/网关/外部网络(ping -c 4 www.baidu.com)
traceroute:跟踪数据包的路由过程
nslookup:检查DNS服务器是否正常解析域名
dig:查看更多关于DNS记录的信息
netstat:查看服务对应的端口是否正常启动
文件查找:
- which:查看执行文件的位置
- whereis:查看可执行文件位置和相关文件
- local:配合数据库缓存,快速查看文件的位置
- grep:过滤匹配,文件搜索工具
- find:根据条件查看文件
tar的压缩与解压
tar -xzvf xxx.tar.gz #-x:解压缩 -z:同时用gzip解压 -v:可视化 -f:后跟解压文件名
tar -czvf xxx.tar.gz 打包文件 #-c:压缩 -z:同时用gzip压缩 -v:可视化 -f:根压缩后的文件名
计划任务
- at:一次性计划任务
- cron:周期性计划任务
分 时 日 月 周 命令
下载安装卸载rpm、yum、wget
rpm:
查找rpm包是否安装:rpm -qa | grep xxx
下载安装文件:rpm -ivh 包名.版本信息.发布版本号.运行平台/noarch.rpm #-i:安装 -v:可视化 -h:显示安装进度
已安装包的信息:rpm -qi 包名
yum:解决rpm软件包依赖问题
列出所有可用的rpm包:yum list | head -n 20 #显示前20个
下载安装rpm包:yum -y install 包名 #连同依赖一起下载,无-y则以用户交互方式安装
卸载rpm包:yum remove 包名 #建议无-y,避免卸载无关依赖
wget 用于在终端中下载网络文件:
wget [参数] 下载地址
wget http网址