任务调度 守护进程
系统在特定某个时间执行的任务或者程序
如定时杀毒或数据库备份
基本语法:crontab 【选项】
参数:
-e 编辑crontab
-l 显示任务
-r 删除crontab
案例
参数说明
示例
应用实例
实例1
- 编写一个文件 /home/mytask1.sh
date >> /tmp/mydate
- 给该文件一个可执行权限(没有可执行权限则不能执行)chmod 744 mytask1.sh
- crontab –e */1 * * * * /home/mytask1.sh
磁盘分区和挂载
分区基础知识
分区有2种mbr分区和gtp分区
gtp分区
- 支持无限多个主分区(但操作系统可能限制,如windows下最多128个)
- 最大支持18EB容量(1024tb)
- windows7 64位以后支持gpt
查看分区大小直接输入lsblk
挂载案例
需求:给Linux系统增加一块新的硬盘,并且挂载到/home/newdisk下
具体步骤
- 虚拟机添加一块硬盘(vmvare)
上方选项栏,“虚拟机”选项→设置→硬盘→下方【添加】→硬盘→下一步→
选中“SCSI”→下一步→创建新的虚拟磁盘→选择容量→下方选择拆分成多个文件→
文件名→完成
- 给硬盘分区
命令“fdisk 【硬盘名称】”
输入后询问,是否需要帮助
输入“m”获取帮助
输入“n”增加一个新的分区
输入“p”,划分一个主分区(e是扩展分区)
随后将第一个分区设置为主分区,输入“1”
然后第一项默认,连续选“1”,第二项直接默认回车
最后输入“w”,将分区信息写入硬盘然后退出
分区完成
- 格式化磁盘
命令为:
mkfs –t 【文件类型】 【磁盘名称】
注:妈了个逼的虚拟机打开网络会占用sda磁盘,导致无法重载磁盘,命令无法生效!!
断了网在机器上添加!!!
- 挂载
在/home下创建newdisk文件夹
mount /dev/sdb1 /home/newdisk
进行挂载
- 设置自动挂载
修改/etc/fstab 文件
添加如下行:
注:此处原使用UUID标识磁盘,直接写名字也可以
输入mount –a
设置自动挂载,完成
磁盘情况查询
df –h
查询磁盘整体情况
磁盘占用过多会造成性能下降
可用dh –lh 便于查看
du –h
查询指定目录的磁盘占用情况,默认为当前目录
-s 指定目录占用大小汇总
-h 适合观看
-a 含文件
- -max-depth=1 子目录深度
-c 列出明细的同时,增加汇总值
示例
- 查询opt目录的使用情况,深度为1
其他磁盘实用指令
- 统计/home 文件夹下文件的个数
- 统计/home文件夹下目录的个数(将上面占位符改为“d”即可)
- 统计/home文件夹下文件个数,包括子文件里的
在命令ls –l 后加R,表示递归查询
- 以树状显示目录结构,默认当前目录
也可指定目录
网络配置
Linux网络配置图(含虚拟机)
虚拟机通过虚拟网卡与本机形成网络,然后本机通过实际网卡连接外网
查看网络ip与网关
- 查看虚拟网络编辑器
更改此处在重启后会更改虚拟网卡的IP
- 查看网关
- 查看windows中的Vmnet1网络配置
- 控制台ipconfig命令
- 右键点击无线网图标,打开网络设置
更改适配器选项
找到VMnet1
属性
此处可以更改
linux网络环境配置
第一种,自动获取
登陆后,通过界面设置自动获取ip,但每次自动获取的IP会有变化(不适用于服务器)
选中后应用,则开机自动连接
第二种 指定固定IP
直接修改配置文件来指定IP,并可以连接到外网
编辑文件
/etc/sysconfig/network-scripts/ifcfg-eth0
注:eth0 代表第一块网卡,其他网卡eth1,eth2 ……
修改为
修改后一定要重启服务(二选一)
- service network restart
- reboot
进程管理
ps指令
进程查看基本指令,查看有那些进程在执行,执行情况怎样,可不加参数
PID 进程号
TTY 终端机号
TIME 此进程所占CPU时间
CMD 正在执行的命令或进程名
参数
-a 显示当前终端的所有进程信息
-u 以用户形式显示进程信息
-x 显示后台进程运行的参数
USER 用户
PID 进程号
%CPU 占用CPU百分比
%MEN 占用内存百分比
VSZ 占用的虚拟内存单位kb
RSS 使用的虚拟内存 单位kb
TTY 使用的终端
STAT 当前进程的运行状态 S代表休眠 R代表run Z代表僵死进程
START 进程启动时间
TIME 占用CPU总时间
COMMAND 进程执行时的命令行(如果过长会被截断显示)
可以与管道符同时使用
查看sshd进程
以上结果:
1926 sshd进程
2803 root用户登陆的进程
2945 该条查询命令本身
ps –ef 以全格式显示进程 -e显示所有进程
-f 全格式显示
PPID 列是父进程,0代表无父进程
C 列代表CPU占用优先级
kill指令 killall指令
终止进程指令
用法:
kill 【选项】 【进程号】 杀掉指定进程号的进程
killall 【进程名称】 通过名称杀掉进程,支持通配符,在系统负载过大很慢时用
可用于杀掉开启过多子进程的父进程
参数: -9 表示强制终止
案例1 踢掉某个非法用户xm
案例2 终止远程登陆服务sshd,适当时候再重启sshd服务
输入命令:service sshd restart 重启SSH服务。
命令:service sshd start 启动服务 | 命令:service sshd stop 停止服务
重启后可输入:netstat -antp | grep sshd 查看是否启动22端口(可略)
案例3 终止多个gedit编辑器
直接命令 killall gedit
案例4 强制杀掉一个终端,必须带-9 否则杀不掉
pstree命令
以树状显示进程信息
参数
-p 显示PID
-u显示进程所属用户
服务管理
命令
service 【服务名】 【命令】
命令参数
start 启动
stop 停止
restart 重启
reload 重载
status 状态
注:CentOS7.0以后,不再用service一词,改为systemctl
案例
- 关闭防火墙
service 指令重启服务立即生效,但是重启机器后会回复原设置。如果要设置自启动或自关闭永久生效,需要使用chkconfig指令。
查看服务名
方式1:使用setup-> 系统服务 可以看到
方式2:到/etc/init.d/服务名称
系统运行级别
查看或修改系统运行级别
修改或查看文件 /etc/inittab
chkconfig指令
可以给每个服务设置自己在系统某个运行级别下自启动或关闭
指定服务在系统的0-6运行级别下是否自启动
语法
- 查看某个服务的状态
chkconfig --list|grep xxx
- chkconfig 服务名 –list
- 修改某服务在指定级别下是否执行
chkconfig –leve 5 服务名 on/off
指定在所有运行级别下 关闭/开启
chkconfig 【服务名】 on/off
注:该命令设置自启动或关闭要在重启系统后生效
动态监控进程
top指令
类似于ps命令,但是top会隔一段时间自动刷新进程状态的显示。
语法:
top 【选项】
参数
-d 指定刷新秒数
-i 不显示闲置和僵死进程
-p 指定ID来监控某个特定进程
交互指令
u 输入用户名后监控特定用户
k 输入进程号,杀死指定的进程
q 退出
大写P 按照CPU使用排序
大写M 按照内存使用排序
大写N 按照PID排序
netstat 指令
监控网络状态
语法
netstat 【选项】
选项
-an 按照一定顺序输出
-p 显示哪个进程在调用
RPM和YUM
RPM
红帽软件包管理
RPM包的查询指令
查询已安装的RPM包
rpm –qa|grep XX
RPM包基本格式
卸载RPM包
rpm –e 【包名称】
注:如果删除软件包是其他软件的依赖,会产生错误提示。
如果一定要删除,忽视依赖问题。删除后依赖的程序将无法运行
rpm -–e nodeps【软件包名】
安装RPM包
基本语法
rpm –ivh 【RPM包全路径名称】
参数
I install 安装
v verbose 提示
h hash 进度条
安装firefox基本步骤
先找到Firefox的安装文件,需要现在光驱中挂载CentOS系统的iso文件,然后到/media/下去找rpm包。
YUM包管理
基本指令
yum list | grep 【软件包】 查看yum服务器是否有某软件包
yum install 【软件名】 安装目标软件包
默认会安装最新版本的