一、linux调度
1、crontab
定时任务调度:指每隔指定的时间,执行特定的命令或程序。
基本语法:crontab [选项]
常用选项:
- e: 编辑定时任务
- l:查询定时任务
- r:删除当前用户的所有定时任务 例如:
crontab -e
//然后输入调度内容在vim编译器里
*/1 * * * * ls -l /etc/ > /tmp/etc.txt
2、at
- at命令是一次性定时执行任务计划,at的守护线程atd以后台的模式运行,检查作业队列来运行。
- 默认情况下,atd守护线程每60秒检查作业队列,有作业时会检查作业运行时间,如果时间与当前 时间匹配,则运行此作业。
- at命令是一次性定制的计划任务,执行完一个任务后就不再执行此任务了。
- 在使用at命令的时候,一定要保证atd进程的启动,可以用相关指令来查看
ps -ef | grep atd。
atq #查看有几个定时任务
atrm #删除定时任务
at [选项] [时间]
at > 命令(输入两次 Ctrl + D)
二、磁盘分区
1、基础知识点
查看分区信息:lsblk
在linux里面,硬盘有2种类型:
- IDE硬盘 hdx~
- hd:标识硬盘类型, IDE类型
- x:不同硬盘的分区(a基本盘,b基本从属盘,c辅助盘,d辅助从属盘)
- ~ 磁盘分区 1 2 3 4 5
- SCSI硬盘 sdx~
- sd:表示是SCSI硬盘
- x:代表是第几块硬盘(a:第一块 b:第二块 c:第3块硬盘 d:第4块硬盘)
- ~磁盘分区
NAME :驱动器标识
FSTYPE :文件系统类型
LABLE :文件系统 LABLE
UUID :分区唯一标识符,格式化磁盘后,会给分区分配一个32位的唯一的字符串
MOUNTPOINT :挂载点
2、新增硬盘
在虚拟机设置 里 选择硬件 添加硬盘 ,选择磁盘类型 ,点击创建新虚拟机磁盘,设置大小,点击 将虚拟机磁盘拆分成多个文件 。
3、给新增的硬盘分区
fdsik 磁盘目录
例如创建了sdb,他在dev目录里
fdisk /dev/sdb
4、格式化磁盘分区:为分区创建文件系统,准备存储数据。
mkfs -t ext4 /dev/sdb1 # 格式化
lsblk -f#查看分区详细信息
5、挂载分区:将分区连接到操作系统的目录树,使其内容可以被访问。
cd /
mkdir newdir
mount /dev/sdb1 /newdisk/
lsblk -f
6、磁盘情况查询
df -h #查看整个磁盘的占用情况
df -h [目录] #查询指定目录的磁盘占用情况
7、磁盘操作实用指令
- 统计opt文件夹下的文件个数
ls -l /opt | grep "^-" |wc -l
- 统计opt文件夹下的目录的个数
ls -l /opt | grep "^d" | wc -l # "^d" 以文件目录开头 wc -l 统 计个数
- 统计/opt文件下的文件的个数,包括子文件夹下的
ls -lR /opt | grep "^-" | wc -l # R 代表递归
- 统计/opt文件夹下的目录的个数,包括子文件夹下的
ls -lR /opt | grep "^d" | wc -l
- 以树状结构显示目录结构(如果没有tree,则使用 yum install tree 安装)
yum install tree #安装tree
tree 目录
三、网络
1、linux网络配置的指令
- ipaddr 在linux查看ip地址
- ifconfig 在linux查看ip地址
- ping 是否ping通指定的ip地址
- ipconfig 在windows操作系统里面查看网络的ip地址
2、linux网络环境配置(固定ip的方式)
首先查看 ip是否是变化的。
那么进行固定。
- 第一步 编辑我们linux的网卡文件 这个网卡文件在/etc/sysconfig/network-scripts/ifcfg-ens33 打开这个文件,进行编辑
- 编辑网卡文件
- sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33
打开
编辑->虚拟网络编译器->更改设置->VMnet8->DHCP设置->查看ip地址的范围->在ifcfg-ens33 添加IPADDR="这里写的是ip地址范围内的随便一个"->添加子网掩码、网关到ifcfg-ens33(网关在vmnet8的nat设置里)->最后加DNS1、DNS2
IPADDR=
NETMARSK=255.255.255.0
GETWAY=
DNS1=
DNS2=
3、设置主机名和host映射
查看主机名称方法
①hostname
②cat /etc/hostname
修改主机名
hostname new-hostname
也可以修改/etc/hostname指定主机名名称。注意,修改完成之后,需要重启linux系统才能生效。
在 Linux 中,/etc/hosts 文件用于将主机名映射到 IP 地址。这对于本地网络中的主机名解析非常有用。
思考:我们可以通过ping linux的ip地址能ping通linux。那么我们可不可以通过ping linux的主机名 来ping通linux呢,答案是不可以的。
下面图片是windows的cmd里面操作,按win+r键,再输入cmd就打开了
找到
找到 C:\Windows\System32\drivers\etc:下面的hosts文件,进行相关的编辑:
输入一个ip和一个主机名。例如:
192.168.10.130 xq100 # ip地址是linux的ip地址
如何在linux里面通过本机的主机名来ping通主机呢?我们需要编辑/etc/hosts文件:
192.168.10.1 DESKTOP-EKI0P48 # ip是vmnet8的ip地址 后面的是windows的主机名称
四、linux进程管理
1、进程信息
ps
也加上下面几个参数,来查看进程信息
ps -a:显示终端所用的进程信息
ps -u:以用户的格式显示进程的信息
ps -x:显示后台程序运行的参数
ps -e:所有的进程
ps -f:全部全格式信息
ps -aux | more
我们对上面查询的信息进行详细解释:
USER: 进程所属的用户名称。
PID:进程号。
%CPU:进程占用CPU的百分比。
%MEM:进程占用物理内存的百分比。
VSZ:进程占用虚拟内存的大小(KB)。
RSS:进程占用物理内存的大小(KB)。
STAT:进程状态,S-代表睡眠 R-正在运行 D-短期等待 Z-僵死进程 T-被停止的线程。
START:进程启动的时间。
TIME:进程使用CPU的时间。
COMMAND:进程启动所需要的命令和参数。
ps -ef | grep sshd
ps -ef | more
2、删除进程
kill [选项] 进程号 :通过进程号杀死/终止进程。
killall:会杀死当前进程和其子进程。
选项 -9: 强制删除
3、查看进程树
pstree [选项]
选项: -p:显示进程号 -u:显示进程所属用户
五、linux服务管理
service(本质)就是进程,但是是运行在后台的,通常都会监听某个端口,等待其他程序的请求,比如说 (mysql3306,sshd222,redis6379),因为我们又称为守护进程,在Linux中是重要的知识点。
1、service管理指令
- service 服务名 [start|stop,reload,status]
- 在CentOs7.0后,很多服务不再使用Service,而是systemctl
- service 指令管理的服务在
/etc/init.d查看
例如:我们可以简单使用一下,比如查看network服务的状态:
- 要知道更多系统服务,可以使用setup命令
输入后选择
系统服务
选择系统服务,回车,我们可以看到系统服务的详细信息:
注意:
- [*] 代表这些系统服务会随着开机自启动而启动
- 如果我们想去掉星号或者加上星号,上下按键切换到对应的服务
按空格键即可。 - 使用Tab键选择OK或Cancel.
2、chkconfig指令
chkconfig也可以用来管理服务。但是cetos7后都是systemctl管理。
- 基本用法
- 先切换到/etc/init.d
- chekconfig --list查看服务
- 设置服务在指定级别启动/关闭 chkconfig --level [数字]network on/off
注意1: 上面的数字代表linux的运行级别。
注意2:chkconfig重新设置服务自启动或者关闭,需要重启机器reboot生效。
3、systemctl服务管理指令
systemctl 指令管理的服务在/usr/lib/systemd/system中查看。
- 服务启动/停止/重启/重载/查看状态: systemctl [start | stop | restart | status] 服务名
- 查看所有服务的自启动状态
[root@xq100 system]# systemctl list-unit-files | grep firewall #得到服务名
firewalld.service enabled
[root@xq100 system]# systemctl status firewalld.service # 查看防火墙状态
[root@xq100 system]# systemctl stop firewalld.service # 停止防火墙状态
[root@xq100 system]# systemctl restart firewalld.service # 重启防火墙
- 服务的状态如下:
- masked 此服务禁止自启动
- static 该服务无法自启动,只能作为其他文件的依赖
- enabled 已配置为自启动
- disabled 未配置为自启动
- 查看某一服务是否自启动
[root@xq100 system]# systemctl is-enabled firewalld.service # 知道完整服务名 enabled
- 设置服务自启动 (服务运行级别 3、5)
[root@xq100 system]# systemctl enable firewalld.service
- 设置服务禁用自启动 (服务运行级别 3、5)
[root@xq100 system]# systemctl disable firewalld.service