萌新的linux之旅16

xiaoxiao2021-02-28  139

#

系统延时及定时任务

#

一:系统延时任务(延时任务是临时的)

1.at命令 at + time ctrl+d 保存延时命令 at -l #查看当前任务 at -c +任务号 #查看任务内容

atrm +任务号 #取消指定任务 at now+1min #延时一分钟

at -f file #延时执行文件中的内容(文件不是脚本)

at -m #延时命令没有输出时也发送邮件给执行者,当你的命令没有输出时,也发送邮件给执行者,但邮件内容是空的 at -M #延时命令即使有输出也不会发送邮件给执行者 mail 可以收邮件,但是是有输出的命令才可以发起邮件

2.at命令的执行权力设定 /etc/at.deny ##用户黑名单,在名单里面直接添加用户名,在此名单中的用户不能执行at命令 /etc/at.allow ##用户白名单,此名单默认不存在,本身只有at.allow这个文件,但是白名单一建立,即/etc/at.allow建立,黑名单失效,而且默认系统中所有用户都不能执行at命令,只有白名单中的用户才可以使用at命令,和黑名单一样,在名单里面直接添加用户名,白名单优先级高于黑名单,另外两个名单都对超级用户无效,因为有权,任性。并且两个文件都是即改即生效。

二:定时任务(定时任务是永久的)

定时任务程序crond,在系统中每分钟都在做任务扫描

1.发起方式 发起方式一 crontab -u username -e ##username用户建立定时任务(默认vi编辑器进入编辑) crontab -e 以自己身份发起命令 此命令会进入一个文本,该文本的填写方式是: 可以写多行 分 时 天 月 周 + 命令

crontab -u username -l ##查看某用户的定时任务 crontab -u username -r ##删除某用户的定时任务 man 5 crontab ##查看crontab命令

发起方式二 vim /etc/cron.d/haha(filename) 创建一个文件并在里面填写,此文件可以填写多个用户,文件名谁发起就是谁的。 注意:/etc/cron.d 是脚本文件,需要保证cron.d有执行权限,才能使目录里面的任务文件生效 填写方式是: 分 时 天 月 周 + 用户 + 命令 * * * * * root touch /home/student/file{1..9} ##表示每分钟在/home/student目录下建立9个文件file

2.时间表示方法 表示方式:分 时 天 月 周 命令 (可以精确到分钟,即最短可以每分钟执行一次) * /1 * * * #每隔一天执行一次 * 09-17/1 * * * #9点到17点,每隔1小时执行一次 * * 01,30 * * #每月1号,30号执行一次

1 2 3 4 5 + 命令(五个必须全写) 1 —- 分钟 2 —- 小时 3 —- 天 4 —- 月 5 —- 周 上述数字填写范围 * —- 每(如每分钟) 1(分钟) —- 0-59 2(小时) —- 0-23 3(天) —- 1-31 4(月) —- 1-12 5(周) —- 0-7 (0和7都表示星期天) 例:* * * * * 表示每分钟都执行一次

2.crontab命令的执行权力设定 /etc/cron.deny ##用户黑名单,此名单中的用户不能执行crontab命令 /etc/cron.allow ##用户白名单,此名单默认不存在,建立后默认系统中所有用户均没有crontab命令执行权限,只有名单中的用户才有crontab命令执行权限,都是即改即生效,crontab命令的白名单优先级同样高于黑名单,和at 命令黑白名单基本一样

三:系统中的临时文件 系统中服务在正常运行时会产生临时文件 在系统中 /usr/lib/tmpfiles.d/ 目录下存放 系统的临时文件配置是 /usr/lib/tmpfiles.d/*.conf

自己创建的临时文件配置文件必须以.conf结尾

临时文件配置的编写方式是: 文件类型 文件名 文件权限 文件所有人 文件所有组 文件存在的时间 d /mnt/text 777 root root 30s ##表示在/mnt目录下创建临时目录text,并且30秒内不能被删除

systemd-tmpfiles –create /usr/lib/tmpfiles.d/* ##执行临时文件配置 systemd-tmpfiles –clean /usr/lib/tmpfiles.d/* ##清理临时文件

磁盘管理

1.名词解释 mbr:分区方式 mpt:分区表 硬盘有效性标识 主分区 扩展分区:扩展分区相当于一个容器 逻辑分区:就是将扩展分区分成几个小分区

2.磁盘查看命令 fdisk -l ##系统中的所有磁盘设备(可以看到所有磁盘设备,但不一定都能用,因为有些没有文件系统) df -TH ##系统正在挂载的磁盘设备 blkid ##系统可以挂载的磁盘设备id(不一定能挂载) 后两个看到的一定可以用

3.分区划分 fidsk /dev/vdb

[root@localhost ~]# fdisk /dev/vdb Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them. Be careful before using the write command.

Command (m for help): m ##获得帮助 Command action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition ##删除分区 g create a new empty GPT partition table G create an IRIX (SGI) partition table l list known partition types ##列出系统可用分区类型 m print this menu n add a new partition ##新建分区 o create a new empty DOS partition table p print the partition table ##显示分区 q quit without saving changes ##退出 s create a new empty Sun disklabel t change a partition’s system id ##修改分区功能id u change display/entry units v verify the partition table w write table to disk and exit ##保存更改到分区表中 x extra functionality (experts only)

Command (m for help): n ##新建分区 Partition type: p primary (1 primary, 0 extended, 3 free) ##分区类型为主分区 e extended ##分区类型为扩展分区 Select (default p): p Partition number (2-4, default 2): 2 ##主分区id First sector (206848-20971519, default 206848): ##此分区的起始位置 Using default value 206848 Last sector, +sectors or +size{K,M,G} (206848-20971519, default 20971519): +200M ##分区大小 Partition 2 of type Linux and of size 200 MiB is set

Command (m for help): wq ##保存并退出,只输入q则表示放弃更改退出 The partition table has been altered!

Calling ioctl() to re-read partition table. Syncing disks.

cat /proc/partitions ##查看分区 partprobe ##同步分区表 mkfs.xfs /dev/vdb1 ##格式化 mount /dev/vdb1 /mnt ##临时挂载

vim /etc/fstab ##永久挂载 编写格式: device mountpoint ftype defaults(mountpoint) 0 0 /dev/vdb1 /mnt xfs defaults 0 0 mount -a ##使/etc/fastab中记录的挂载生效

4.删除分区 先使用umount命令解除挂载 umount /mnt 如果显示进程正忙,不能删除 fuser -vm /mnt ##查看正在使用mnt文件的进程 fuser -kvm /mnt ##直接停止进程 然后就可以umount /mnt 注:当挂载点被使用时,无法解除挂载,需要用fuser -kvm结束使用的进程,然后进行解除挂载 解除挂载之后,使用fdisk /dev/vdb命令 删除分区 cat /proc/partitions 查看分区 另外如果时永久挂载,得先删除vim /etc/fstab/ 里面的设置,恢复成原样

5.设定分区方式,将mkdocs 改为 gpt 更改之前需要把正在使用的分区关闭,才可以进行更改 partoff /dev/vdb2 parted /dev/vdb

6.添加swap分区 fdisk /dev/vdb ##添加一个分区

partprobe ##同步分区表 mkswap /dev/vdb2 ##格式化成swap类型 swapon -a /dev/vdb2 ##加入swap swapon -s

7.更改gpt下的swap 为mkdos下的swap

8.用文件来添加swap

dd if=/dev/zero of=/swapfile bs=1M count=1000 ##创建一个1G大小的文件 mkswap /swapfile ##格式化为swap类型 swapon -a /swapfile ##临时添加到swap里 -p + 数字 ##更改优先级 vim /etc/fstab ##永久添加swap分区 类型: /swapfile swap swap defaults,pri=1 0 0 #pri优先级

9.删除swap vim /etc/fstab ##删除此文件中添加的swap行 swapoff /swapfile ##断开swap文件链接 swapoff /dev/vdb1 ##断开swap磁盘链接 rm -rf /swapfile ##删除文件 fdisk /dev/vdb ##删除磁盘分区 partprobe ##同步分区表

转载请注明原文地址: https://www.6miu.com/read-40017.html

最新回复(0)