一、crondtab任务调度
任务调度:指的是在系统某个时间执行的特定的命令或程序。
任务调度分类:①系统工作②个别用户工作
- 基本语法:
crontab [选项]
选项
:(-e
:编辑crontab定时任务;-l
:查询crontab任务;-r
:删除当前用户所有的crontab任务)
演示案例:每隔一分钟执行一次ls –l /etc >> /tmp/to.txt
命令。
编辑crontab定时任务 | crontab -e |
---|---|
在vim界面输入 | */1 * * * * ls -l /etc >> /tmp/to.txt |
查询crontab任务 | crontab -l |
查询结果 | */1 * * * * ls -l /etc >> /tmp/to.txt |
删除当前用户所有crontab任务 | crontab -r |
五个占位符*
分别代表:分钟、小时、每月第几天、月份、星期几。
特殊符号说明 | 含义 |
---|---|
* |
代表任何时间 |
, |
代表不连续的时间,如0 8,13,15 代表在每天的8点0分,13点0分,15点0分都执行一次命令 |
- |
代表连续的时间范围,如0 5 * * 1-6 代表周一到周六的凌晨5点0分执行命令 |
*/n |
代表每隔多久执行一次,如*/10 * * * * 代表每隔10分钟执行一次命令 |
1.1 任务调度应用
案例1:每隔1分钟,将当前的日期信息,追加到/tmp/mydate
文件中。
第一步 | 创建shell文件 | vim /home/mytask1.sh ,写入date >> /tmp/mydate |
---|---|---|
第二步 | 给shell文件可执行权限 | chmod 744 mytask1.sh |
第三步 | 写入任务调度指令 | crontab -e 写入*/1 * * * * /home/mytask1.sh |
案例2:每隔1分钟,将当前日期和日历都追加到/home/mycal
文件中。
第一步 | 创建shell文件 | vim /home/mytask2.sh ,写入date >> /tmp/mycal ,cal >> /tmp/mycal |
---|---|---|
第二步 | 给shell文件可执行权限 | chmod 744 mytask2.sh |
第三步 | 写入任务调度指令 | crontab -e 写入*/1 * * * * /home/mytask2.sh |
案例3:每天凌晨2::00将mysql数据库testdb,备份到文件中。
第一步 | 创建shell文件 | vim /home/mytask3.sh ,写入/user/local/mysql/bin/mysqldump -u root -p root testdb > /tmp/mydb.bak |
---|---|---|
第二步 | 给shell文件可执行权限 | chmod 744 mytask3.sh |
第三步 | 写入任务调度指令 | crontab -e 写入0 2 * * * /home/mytask3.sh |
二、磁盘分区
2.1 分区介绍
分区有MBR
和GTP
两种。
MBR分区的特点:
- 最多支持四个主分区。
- 系统只能安装在主分区。
- 扩展分区要占一个主分区。
- MBR最大只支持2TB,但拥有最好的兼容性。
GPT分区的特点:
扫描二维码关注公众号,回复:
11256771 查看本文章
- 支持无限多个主分区(但操作系统可能限制,比如windows下最多128个分区)
- 最大支持18EB的大容量(1EB=1024PB,1PB=1024TB)
- windows7 64位以后支持GPT。
2.2 Linux分区介绍
Linux实际上只有一个根目录,是一个独立且唯一的文件结构,Linux中每个分区都是文件系统的一部分。Linux使用了一种叫载入
的处理方法,它的整个文件系统中包含了一整套的文件和目录。且将一个分区和一个目录联系起来。
硬盘说明
- Linux的硬盘分为
IDE硬盘
和SCSI硬盘
,目前基本上都是SCSI硬盘。 - 对于
IDE硬盘
,驱动器标识符为hdx~
其中hd
表明分区所在设备的类型,这里指IDE硬盘;
x
为盘号(a
为基本盘,b
为基本从属盘,c
为辅助主盘,d
为辅助从属盘);
~
代表分区,前四个分区用数字1~4
表示,是主分区或扩展分区,从5开始为逻辑分区。
例:hda3
表示第一个IDE硬盘上的第三个主分区或扩展分区。 - 对于SCSI硬盘标识则为:
sdx~
,SCSI硬盘是用sd来表示分区所在设备的类型的,其余则和IDE硬盘的标识方法一样。
使用lsblk -f
可以查看当前分区情况。
2.3 为Linux增加一块硬盘
需求:增加一块sdb1硬盘,将其挂载至/home/newdisk
目录。
完成上述需求需要4步:虚拟机添加硬盘,分区,格式化,挂载(需要设置自动挂载)。
虚拟机添加硬盘 | 分区 | 格式化 | 挂载 | (设置自动挂载) |
---|---|---|---|---|
在VMware设置中使用界面添加 | fdisk /dev/sdb |
mkfs -t ext4 /dev/sdb1 |
mount /dev/sdb1 /home/newdisk |
通过修改/etc/fstab 后执行mount –a 进行挂载 |
注意:
分区时,开始分区后输入n
,新增分区,然后选择p
,分区类型为主分区。两次回车默认剩余全部空间。最后输入w写入分区并退出,若不保存退出输入q。
•m
显示命令列表
•p
显示磁盘分区 同 fdisk –l
•n
新增分区
•d
删除分区
•w
写入并退出
取消挂载:使用umount /dev/sdb1
或umount /newdisk
2.4 磁盘情况查询
常用命令 | 基本语法 | 参数 | 演示 |
---|---|---|---|
系统磁盘整体使用情况查询 | df -h |
-l 分区表信息;-h 容量大小、使用情况、挂载点等 |
|
指定目录磁盘使用情况 | du -h 目录 |
-s 指定目录占用大小;-h 带计量单位;-a 含文件;--max-depth=1 子目录深度 |
常用案例 | 命令 | 演示 |
---|---|---|
统计/home 下文件的个数 |
ls -l /home | grep "^-" | wc -l |
|
统计/home 文件夹下目录的个数 |
ls -l /home | grep "^d" | wc -l |
|
统计/home 文件夹下文件的个数包括子文件夹里的 |
ls -lR /home | grep "^-" | wc -l |
|
统计文件夹下目录的个数,包括子文件夹里的 | ls -lR /home | grep "^d" | wc -l |
|
以树状显示目录结构 | 该指令需要通过yum install tree 进行安装 |
注意大写的R表示递归,小写的r(reverse)代表逆序。