文章目录

  • 一、服务管理
  • 1 service
  • 2 chkconfig设置后台服务器的自启配置
  • 3 systemctl
  • 设置后台服务器自启配置
  • 防火墙关闭
  • 4 开关机重启
  • 5 搜索查找类find
  • 6 locate快速定位文件路径
  • 7 其他命令
  • 7.1 sort
  • 7.2 uniq
  • 7.3 wc
  • 7.4 xargs
  • 二、压缩、解压
  • 1 gzip
  • 2 zip
  • 3 tar
  • 三、磁盘查看和分区类
  • 1 du
  • 2 df
  • 3 lsblk
  • 4 mount
  • 5 fdisk
  • 四、进程管理类
  • 1 iotop
  • 2 ps
  • 3 kill
  • 4 pstree
  • 5 top
  • 6 netstat
  • 7 crontab
  • 五、软件包管理
  • 1 RPM
  • 2 YUM


一、服务管理

1 service

# Centos 6 服务都在/etc/init.d/*
service 服务名 start|stop|restart|status

2 chkconfig设置后台服务器的自启配置

chkconfig	# Centos 6查看所有服务器自启配置
chkconfig [--level 指定级别] 服务名 off|on|--list

3 systemctl

# Centos7 服务都在/usr/lib/systemd/system
systemctl start|stop|restart|status 服务名
设置后台服务器自启配置
systemctl list-unit-files	# 查看服务开机启动状态
systemctl disable 服务名	# 关闭指定的服务器启动
systemctl enable 服务器名	# 开启指定服务的自启动
防火墙关闭
systemctl status firewalld 	# 查看防护墙状态
systemctl stop firewalld	# 临时关闭防火墙
systemctl enable firewalld.service	# 启动
systemctl disable firewalld.service	# 关闭

4 开关机重启

sync	# 将数据由内存同步到硬盘
halt	# 停机、关闭系统、不断电
poweroff # 关机、断电
reboot	# 重启
shutdown -h # 停机
shutdown -r # 重启
shutdown now	# 立刻关机
shutdown time 	# 经过time关机

5 搜索查找类find

find [搜索范围] [选项] [-print -exec -ok ...]

选项

-name 	# 按照文件名查找文件。
    find . -name "1.txt"
-perm 	# 按照文件权限来查找文件。
    find . -perm 660
-user 	# 按照文件属主来查找文件。
-group  # 按照文件所属的组来查找文件。
-mtime -n +n # 按照文件的更改时间来查找文件,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前。find命令还有-atime和-ctime 选项,但它们都和-m time选项。
-atime # 访问时间
-ctime # 创建时间
-nogroup # 查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在。
-nouser # 查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在。
-newer file1 ! file2 # 查找更改时间比文件file1新但比文件file2旧的文件。
-type 查找某一类型的文件,诸如:
    b - 块设备文件。
    d - 目录。
    c - 字符设备文件。
    p - 管道文件。
    l - 符号链接文件。
    f - 普通文件。
    s - socket文件
    
-exec
    find . -name "*.txt" -exec gzip {} \;

    # 查找当前目录下的txt文件并且打包成为gzip
    # 每找到一个文件,就会执行exec后面的命令
        gzip ./a/2.txt
        gzip ./a/6.txt

     # 最后是一个\;  反斜杠不能省,作为当前exec后面命令的结束符
-ok # 跟-exec用法一样,但是每找到一个文件要执行后面的命令前会给用户确认

centos 进程执行路径_服务器

6 locate快速定位文件路径

updateedb	# 第一次运行前需要使用updateedb创建local数据库;
locate tmp

7 其他命令

7.1 sort
  • 命令从标准输入中读取数据然后按照字符串内容进行排序
-f 忽略字符大小写
-n 比较数值大小
-t 指定分割符,默认是空格或者tab
-k 指定分割后进行比较字段
-u 重复的行只显示一次
-r 反向排序
-R 打乱顺序

 将/etc/passwd 根据用户id来排序
 sort -t: -k3 -n < /etc/passwd
7.2 uniq
  • 去除重复的行,前提是重复的行连续
-c 显示每行重复的次数
-d 仅显示重复过的行
-u 仅显示不曾重复的行
    sort < test.txt | uniq
7.3 wc
-l 统计行数
-c 统计字节数
-w 统计单词数
7.4 xargs
  • 将标准输入的参数整齐的拼凑在一行里边,要配合其他命令来使用
docker ps -aq | xargs docker rm -f
find . -name "*.txt" | xargs -I{} mv {}  xxx/
    -I{} 指定一个替换字符串作为参数替换

二、压缩、解压

1 gzip

gzip 文件名		# 压缩文件
gunzip	文件名.gz	# 解压缩

特点

  • 只能压缩文件不能压缩目录;
  • 不保留原来的文件;
  • 同时多个文件会产生多个压缩包;

2 zip

zip [选项] 文件名.zip 要压缩的文件名	# 压缩
unzip [选项] 文件名.zip				# 解压缩

选项

  • -r:压缩目录;
  • -d:解压缩后文件的存放目录;

centos 进程执行路径_centos_02

3 tar

tar [选项] 文件名.tar.gz	# 将要打包进去的内容

tar -zcvf 文件名.tar.gz 目录	# 压缩
tar -zxvf 文件名.tar.gz	-C 目录	# 解压

选项

  • -c:产生.tar打包文件
  • -v:显示详细信息;
  • -f:指定压缩后的文件名;
  • -z:打包同时压缩;
  • -x:解包.tar文件;
  • -C:解压到指定目录;

三、磁盘查看和分区类

1 du

du 目录/文件	# 显示目录下每个子目录的磁盘使用情况

选项

  • -h:显示格式;
  • -a:包括显示文件大小;
  • -c:显示所有的文件和子目录大小后,显示总和;
  • --max-depth=n:指定统计子目录的深度为第n层;

2 df

df 选项 # 列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占用情况

选项

  • -h:显示格式;

centos 进程执行路径_运维_03

3 lsblk

lsblk # 查看设备挂载情况

选项
-f:查看详细的设备挂载情况,显示文件系统信息;

centos 进程执行路径_运维_04

4 mount

5 fdisk

fdisk -l	# 查看所有磁盘分区详情
fdisk 硬盘设备名称	# 对新增硬盘进行分区操作

分区

centos 进程执行路径_服务器_05


分区操作

  • m:显示命令列表;
  • p:显示当前磁盘分区;
  • n:新增分区;
  • w:写入分区信息并退出;
  • q:不保存分区信息直接退出;

四、进程管理类

1 iotop

yum install iotop

2 ps

ps aux | grep xxx  # 查看系统中所有进程
ps -ef | grep xxx  # 查看父子进程的关系

选项

  • a:列出带有终端的所有用户的进程;
  • x:列出当前用户的所有进程;
  • u:面向用户友好的显示风格;
  • -e:所有进程;
  • -u:列出某用户关联的所有进程;
  • -f:显示完整格式的进程列表;

ps aux

centos 进程执行路径_centos 进程执行路径_06


进程状态

  • R:运行状态;
  • S:睡眠状态;
  • T:暂停状态;
  • Z:僵尸状态;
  • s:包含子进程;
  • l:多线程;
  • +:前台显示;

ps -ef

centos 进程执行路径_服务器_07

3 kill

kill [选项] 进程号	# 通过进程号杀死进程
killall 进程名称	# 杀死进程

4 pstree

pstree [选项]	# 查看进程树

选项
-p:显示进程的PID;
-u:显示进程的所属用户;

安装

【Mac OS】:brew install pstree
【Fedora/Red Hat/CentOS】:yum -y install psmisc
【Ubuntu/Debian】:apt-get install psmisc

5 top

top [选项]	# 监控系统进程状态

选项

  • d:指定top命令每个几秒更新;
  • -i:使top不显示任何闲置或僵死进程;
  • -p:通过指定监控进程ID来仅仅监控某个进程的状态;

操作

  • P:以CPU使用率排序;
  • M:以内存的使用率排序;
  • N:以PID排序;
  • q:退出;

字段

centos 进程执行路径_文件名_08


centos 进程执行路径_运维_09


centos 进程执行路径_运维_10


centos 进程执行路径_服务器_11


centos 进程执行路径_centos_12

6 netstat

netstat -nap | grep 进程号	# 查看该进程网络信息
netstat -nlp | grep 端口号	# 查看网络端口号占用情况

选项

  • -a:显示所有正在监听和未监听的套接字;
  • -n:拒绝显示列名,能显示数字的全部转化成数字;
  • -l:仅列出监听的服务状态;
  • -p:显示哪个进程在调用;

安装yum install net-tools

7 crontab

crontab [选项]	# 系统定时任务

选项

  • -e:编辑crontab定时任务;
  • -l:查询crontab任务;
  • -r:删除当前用户所有的crontab任务;

参数

***** 执行的任务
[第一个*]	# 1小时的第几分钟;
[第二个*]	# 1天中的第几个小时;
[第三个*]	# 1个月中的第几天;
[第四个*]	# 1年中第几个月;
[第五个*]	# 一周中的星期几;

# 特殊符号
*	# 任何时间
,	# 代表不连续的时间	`0 2,3 ***` 表示2点0分、3点0分都执行
-	# 表示连续时间段
*/n	# 代表每个多久执行一次

五、软件包管理

1 RPM

rpm -qa	# 查询所安装的所有rpm软件包 可结合grep
rpm -e --nodeps 软件包	# 卸载
rpm -ivh 软件包	# 安装

选项

  • e:卸载软件包;
  • --nodeps:卸载软件时,不检查依赖;
  • -i:安装;
  • -v:显示信息;
  • -h:进度条;

2 YUM

yum [选项] [参数]	# 能够自动处理依赖性关系

选项

  • -y:yes;

参数

  • install:安装;
  • update:更新;
  • remove:删除;
  • check-update:检查是否有可用更新包;
  • list:显示软件包信息;
  • clean:清理yum过期的缓存;
  • deplist:显示yum软件包的所有依赖关系;

修改YUM源

yum install wget
cp CentOS-Base.repo CentOS-Base	# 备份默认的repos文件
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo		# http://mirrors.aliyun.com/repo/Centos-7.repo
mv CentOS7-Base-163.repo CentOS-Base.repo	# 替换
yum clean all
yunm makecache	# 缓存新数据