萌新的linux之旅16
#
系統延時及定時任務
#
一:系統延時任務(延時任務是臨時的)
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 ##同步分區表
總結
以上是生活随笔為你收集整理的萌新的linux之旅16的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: arista 交换机镜像端口配置(将某一
- 下一篇: [Codeforces947D]Rive