Linux操作系统入门(7)

kickstart自动安装脚本

yum install -y sysytem-config-kickstart httpd

sysytem-config-kickstart

保存ks.cfg到/var/www/html

vim new.sh

#!/bin/bash
virt-install \
--name $1 \
--ram 1024 \
--cpus 1 \
--disk /var/lib/libvirt/images/$1.qcow2,bus=virtio,size=10 \
--network bridge=br0,model=virtio \
--location http://172.25.254.250/rhel7.0/x86_64/dvd \
--extra-args ks=http://172.25.254.100/ks.cfg &

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
为检查配置的http服务是否正常,在网页中输入检查是否能看到镜像中的内容

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在末尾加入在安装后执行的yum脚本
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
下图即为上面见面设置过之后的配置文件,在后面加几个安装包即可

在这里插入图片描述
在脚本自动安装脚本中加入

在这里插入图片描述 运行脚本,虚拟机westos安装完成:
在这里插入图片描述

系统的延时任务和定时任务

1.延时任务

at 14:48			设定任务执行时间
at>rm -fr /mnt/* 			任务动作
at> <EOT>				用ctrl+D发起任务

at now+1min			延时一分钟
at>rm -fr /mnt/* 
at> <EOT>				用ctrl+D发起任务

at -l				查看任务列表
at -c 任务号 				查看任务内容
at -r 任务号				取消任务执行

指定在15:08删除/mnt下的所有文件。查看任务号为1的任务内容
在这里插入图片描述
在这里插入图片描述
注意:
当任务有输出时,输出会以邮件的形式发送给at任务的发起者

at now+1min
at> echo hello
at> <EOT>

mail -u root				查看超级用户的邮件
1					查看第一封邮件
q					退出

/var/spool/mail/root 清空邮件

查看邮件并清空邮件
在这里插入图片描述

2.at任务的黑白名单

/etc/at.deny 		系统默认存在,在此文件中出现的用户不能执行at
/etc/at.allow		系统中默认不存在的,当此文件出现,普通用户不能执行at,只有在白名单出现的用户可以,并且/etc/at.deny失效

在黑名单里加入westos,发现westos被禁止使用
在这里插入图片描述
在这里插入图片描述

系统的定时任务

1.crontab时间表示方式

* * * * *				每分钟
*/2* * * *				每两分钟
*/2 09-17 * * *				早九点到晚5点每两分钟
* /2*/2 * * *				每隔两小时每两分钟
* /2 09-17 1 3,5 5				三月和五月每周周五和三月一号,五月一号,早九点到晚五点,每两分钟
*/2 09-17 * * 5					每周周五早九点到晚五点每两分钟

每分钟删除/mnt的文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.系统控制crontab的服务

crond.service	当程序开启时,定时任务生效
crontab -e -u			编辑crontab
 crontab -l -u			列出crontab
 crontab -r -u			删除crontab

4.文件方式设定定时任务

vim /etc/cron.d/file file名称任意

* * * * * 	  username     action
* * * * *		root 	rm -fr /mnt/*

非交互式

echo "* * * * * root rm -fr /mnt/*" > /etc/crond.d/westos
cd /etc/cron.

这种方式定义的crontab使用crontab -l看不到

5.crontab的黑白名单

/etc/cron.deny	系统默认存在,在此文件中出现的用户不能执行crontab	
/etc/cron.allow  系统中默认不存在的,当此文件出现,普通用户不能执行crontab,只有在白名单出现的用户可以,并且/etc/cron.deny失效
	这两个名单都不会影响/etc/cron.d/目录中定时任务的发起和执行
          • westos rm -fr /home/westos/*

在黑名单中加入westos用户,则该用户无法使用crontab服务
在这里插入图片描述
在这里插入图片描述

系统中临时文件的管理方式

cd /usr/lib/tmpfiles.d

vim westos.conf

d /mnt/westos 777 root root 5s

systemd-tmpfiles -create /usr/lib/tmpfiles.d/*		获取目录中的所有文件并按照其规则建立
systemd-tmpfiles -clean /usr/lib/tmpfiles.d/*		清理临时文件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

linux系统中的磁盘管理

1.本地存储设备的识别

fdisk -l 				真实存在的设备(不一定时系统识别的)
cat /proc/partitions				系统识别的设备
blkid					系统可以使用的设备
eject					在root用户下命令行输入,光驱会弹出
df 					系统正在挂载的设备

在这里插入图片描述
在这里插入图片描述

2.设备的挂载和卸载
设备名称

/dev/xdx		##/dev/hd0  /dev/hd1  /dev/sda  /dev/sdb  /dev/sda1  /dev/sdb1
/dev/sr0		##光驱
/dev/mapper/*		##虚拟设备(用软件模拟出来的)

2.设备的挂载

mount		设备		挂载点
mount	/dev/sdb1	/mnt				##挂载sdb1到mnt
umount 	/mnt | /dev/sdb1				##卸载
mount	-o ro /dev/sdb1 /mnt			##只读挂载
mount	  						##查看挂载信息
mount -o remount,rw /dev/sdb1 | /mnt 			##重新读写挂载

将我的U盘挂载到/mnt目录下
在这里插入图片描述
将U盘以只读模式挂载,发现不能创建文件,重新用读写模式挂载后,可以创建文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.解决设备正忙问题

[root@foundation9 mnt]# umount /mnt 
umount: /mnt: target is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))

解决方法1:

lsof /mnt
[root@foundation9 mnt]# lsof /mnt 
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
      Output information may be incomplete.
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
bash    3206 root  cwd    DIR   8,17    16384    1 /mnt
lsof    4103 root  cwd    DIR   8,17    16384    1 /mnt
lsof    4104 root  cwd    DIR   8,17    16384    1 /mnt

kill -9 3206
umount /mnt

解决方法2:

fuser -vm /mnt			查看
fuser -kvm /mnt			查看并结束

在这里插入图片描述

磁盘分区

1.fdisk -l
2.fdisk /dev/vdb
m		帮助
   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 (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p		##主分区
Partition number (1-4, default 1): 1		##id用默认
First sector (2048-20971519, default 2048): 		##分区起始
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +500M	##分区大小
Partition 1 of type Linux and of size 500 MiB is set
###	
Command (m for help): p		##显示信息

Disk /dev/vdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xca128cbb

   Device Boot      Start         End      Blocks   Id  System
/dev/vdb1            2048     1026047      512000   83  Linux

当系统已经有三个分区时

Command (m for help): n
Partition type:
   p   primary (3 primary, 0 extended, 1 free)
   e   extended
Select (default e): e
Selected partition 4
First sector (3074048-20971519, default 3074048): 
Using default value 3074048
Last sector, +sectors or +size{K,M,G} (3074048-20971519, default 20971519): 
Using default value 20971519
Partition 4 of type Extended and of size 8.5 GiB is set
###
Command (m for help): p

Disk /dev/vdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xca128cbb

   Device Boot      Start         End      Blocks   Id  System
/dev/vdb1            2048     1026047      512000   83  Linux
/dev/vdb2         1026048     2050047      512000   83  Linux
/dev/vdb3         2050048     3074047      512000   83  Linux
/dev/vdb4         3074048    20971519     8948736    5  Extended

##把所有剩余空间都给扩展分区
##当超越第四个分区时,新建的分区都为逻辑分区。第四个扩展分区也为逻辑分区

Command (m for help): n
All primary partitions are in use
Adding logical partition 5
First sector (3076096-20971519, default 3076096): 
Using default value 3076096
Last sector, +sectors or +size{K,M,G} (3076096-20971519, default 20971519): +500M
Partition 5 of type Linux and of size 500 MiB is set
##
Command (m for help): p

Disk /dev/vdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x9278e78a

   Device Boot      Start         End      Blocks   Id  System
/dev/vdb1            2048     1026047      512000   83  Linux
/dev/vdb2         1026048     2050047      512000   83  Linux
/dev/vdb3         2050048     3074047      512000   83  Linux
/dev/vdb4         3074048    20971519     8948736    5  Extended
/dev/vdb5         3076096     4100095      512000   83  Linux

给设备安装文件系统

mkfs.xfs	/dev/vdb1
mount /dev/vdb1	/mnt	

vim /etc/fstab

设备		挂载点	文件系统	挂载参数		是否备份
/dev/vdb1    /mnt    xfs     defaults        0 0

>mount -a       将 /etc/fstab 中定义的所有档案系统挂上

编辑配置文件后,重启后挂在不会消失,设备/dev/vdb1 依然在挂载在/mnt下
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
swap分区的管理

1)swap分区建立
划分分区并设定分区标签为82

mkswap 	/dev/vdb6
swapon -a /dev/vdb6
swapon -s 
Filename				Type		Size	Used	Priority
/dev/vdb6              partition	511996	0	-1

vim /etc/fstab
/dev/vdb6	swap	swap	defaults	0 0

在这里插入图片描述

在这里插入图片描述
2)swap分区删除

vim /etc/fstab

swapoff /dev/vdb6
swapon -s 

在这里插入图片描述

配额
分区,格式化

partprobe				在不重启的情况下重读分区		
mkdir	/public
mount -o usrquota /dev/vdb7	/public	

edquota -u student 
Disk quotas for user student (uid 1000):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/vdb7                         0          0      20480          0        0        0

vim /etc/fstab

/dev/vdb7	/public		xfs	defaults,usrquota 0 0

测试:

[student@server ~]$ dd if=/dev/zero of=/public/studentfile bs=1M count=20

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

磁盘加密

cryptsetup luksFormat /dev/vdb8
YES
cryptsetup open /dev/vdb8 westos 
mkfs.xfs /dev/mapper/westos 
mount /dev/mapper/westos /mnt/
touch /mnt/file{1..10}
umount /mnt/
crypsetup close westos   ##关闭之后,/dev/mapper/westos文件消失,挂载原始设备也不能查看其中的内容

crypsetup open /dev/vdb8 linux
mount /dev/mapper/linux /mnt

在这里插入图片描述

关闭之后,/dev/mapper/westos文件消失,挂载原始设备也不能查看其中的内容

猜你喜欢

转载自blog.csdn.net/m0_37206112/article/details/83447724