筆記五

########第二本書#######html


#######unit自動安裝#####linux


###1.kickstart腳本#####ios

kickstart腳本是自動應答系統在安裝過程當中一切問題的腳本文件vim

在這個文件能夠實現系統的自動安裝bash

在系統安裝完畢後會在系統的root家目錄中生成網絡

anaconda-ks.cfg這個文件就是以此係統爲模板生成的kickstart腳本ide


#####2.kickstart腳本的製做#####工具

手動編寫kickstart的難度很大測試

系統中system-config-kickstart工具能夠用圖形的方式製做kickstartspa


yum install system-config-kickstart -y ##安裝圖形制做工具

system-config-kickstart ##打開圖形ks製做工具

ksvalidator ks.cfg ##檢測ks語法



####3.kickstart文件共享####

yum install httpd -y

systemctl stop firewalld.service

systemctl disable firewalld.service

systemctl start httpd

systemctl enable httpd

cp ks.cfg /var/www/html


####4.測試#####

[root@foundation7 Desktop]#virt-install \

> --name vmname(虛擬機名字) \

> --ram 800 \

> --file /var/lib/libvirt/p_w_picpaths/vmname(虛擬機名字)qcow2 \

> --file-size 8 \

> --location ftp://172.25.254.250/pub/rhel7.2 \

> --extra-args "ks=http://172.25.254.107/ks.cfg" &  ##文件的地址ip



###附加pxe網絡安裝服務####

1.相應軟件安裝

yum install dhcp tftp-server syslinux httpd xinetd.x86_64 -y

systemctl stop firewalld.service

systemctl disable firewalld.service

vim /etc/xinetd.d/tftp

[ disable = yes ] =====> [ disable = no ]

systemctl restart xinetd

systemctl start httpd

systemctl enable httpd


2.必須文件的下載複製

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot

把安裝鏡像中的isolinux/* 所有複製到 /var/lib/tftpboot/

mkdir /var/lib/tftpboot /pxelinux.cfg

cp /var/lib/tftpboot/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

@@注意: 此處必定要放在/var/lib/tftpboot/pxelinux.cfg/default下,只有在這個目錄文件下,纔會被識別。



3.dhcp服務的配置

subnet 172.25.254.0 netmask 255.255.255.0 {

  range 172.25.254.200 172.25.254.220;

  option routers 172.25.254.254;

  filename "pxelinux.0";            ##[所用到的文件]

  next-server 172.25.254.107;       ##[文件地址的ip]

}


#####unit2.用戶權限列表####


##1.權限列表的定義###

指定特定用戶對某個文件有特殊權限的記錄表格


##2.權限列表的識別###

-rw-r--r--. 1 root root      188 Oct 29 13:49 1 ##權限位是.權限列表未激活

-rw-r--r--+ 1 root root        0 Oct 26 16:57 file1 ##權限位是+權限列表開啓


##3.權限列表的查看###

getfacl file

# file: file1 ##文件名稱

# owner: root ##文件全部人

# group: root ##文件全部組

user::rw- ##文件全部人權限

user:test:rw- ##特殊指定用戶權限

group::r-- ##組權限

mask::r-- ##權限閥值

other::r-- ##其餘人權限


##4.如何設定acl列表##

setfacl -m u:username:權限(如:rwx)  filename

例:setfacl -m u:test:rw  file ##指定test用戶對file文件可讀寫


##5.mask權限閥值##

若是對有權限列表的文件執行chmod極可能會修改該權限列表中的mask

mask位特殊用戶可以得到到的最大權限值

setfacl -m m:權限(如:rwx) ##修改該mask的值


[root@foundation7 mnt]# setfacl -m u:kiosk:rwx file

[root@foundation7 mnt]# chmod 644 file

[root@foundation7 mnt]# getfacl file

# file: file

# owner: root

# group: root

user::rw-

user:kiosk:rwx #effective:r--

group::r--

mask::r--

other::r--

@@!!!注意:當用chmod修改文件權限以後,若chmod中給的權限小於mask的值時,會出現正上方的#effectiver:r--語句。例子如上!!!


###6.默認權限###

當咱們須要在指定目錄中新建文件或目錄都對指定用戶有特殊權限時設定

setfacl -m d:u:username:權限 filename


例如:

[root@foundation7 lzt]# touch nihao/kk

[root@foundation7 lzt]# getfacl nihao/

# file: nihao/

# owner: root

# group: root

user::rwx

user:kiosk:rwx

group::r-x

mask::rwx

other::r-x

default:user::rwx

default:user:kiosk:rwx

default:group::r-x

default:mask::rwx

default:other::r-x


[root@foundation7 lzt]# getfacl nihao/kk

# file: nihao/kk

# owner: root

# group: root

user::rw-

user:kiosk:rwx #effective:rw-

group::r-x #effective:r--

mask::rw-

other::r--


默認權限對已有文件不生效

例如:

[root@foundation7 ~]# cd /lzt/

[root@foundation7 lzt]# ls

file1  file2  file3  lp

[root@foundation7 lzt]# setfacl -m d:u:kiosk:rwx /lzt

[root@foundation7 lzt]# getfacl /lzt/lp/

getfacl: Removing leading '/' from absolute path names

# file: lzt/lp/

# owner: root

# group: root

user::rwx

group::r-x

other::r-x


默認權限對目錄自己不生效

例如:

[root@foundation7 lzt]# getfacl /lzt/

getfacl: Removing leading '/' from absolute path names

# file: lzt/

# owner: root

# group: root

user::rwx

group::r-x

other::r-x

default:user::rwx

default:user:kiosk:rwx

default:group::r-x

default:mask::rwx

default:other::r-x



####unit3.系統延遲及定時機制###


##1.at延時任務##

at time

at> 動做

at>ctrl + d

at> <EOT>


at -l

atrm 任務號

當執行動做有輸出時

輸出內容會以郵件的形式發送給任務的發起人

[root@foundation7 mnt]# mail

Heirloom Mail version 12.5 7/5/10.  Type ? for help.

"/var/spool/mail/kiosk": 1 message 1 new

>N  1 root                  Sun Oct 30 14:11  14/554   "Output from your job "

& 1

Message  1: ##回覆mail編號

From root@foundation7.ilt.example.com  Sun Oct 30 14:11:02 2016

Return-Path: <root@foundation7.ilt.example.com>

X-Original-To: kiosk

Delivered-To: kiosk@foundation7.ilt.example.com

Subject: Output from your job        2

To: kiosk@foundation7.ilt.example.com

Date: Sun, 30 Oct 2016 14:11:02 +0800 (CST)

From: root@foundation7.ilt.example.com (root)

Status: R


hello world


& q

Held 1 message in /var/spool/mail/kiosk

[root@foundation7 mnt]# echo > /var/spool/mail/kiosk ##清空日誌

You have new mail in /var/spool/mail/kiosk

[root@foundation7 mnt]# mail

No mail for kiosk


at用戶的黑白名單

/etc/at.deny ##默認存在並生效

/etc/at.allow ##默認不存在,一旦存在,/etc/at.deny失效


#####2.系統定時/按期任務###

命令方式發起:

crontab -u username -e

@@!!!注意:普通用戶執行不能使用-u,即,執行crontab -e


MM hh dd mm ww

mm/2 ##每隔兩分鐘

hh-hh ##幾點到幾點

hh1,hh2 ##幾點和幾點


!!!可經過cat /etc/crontab查看具體用法

結果以下:

 SHELL=/bin/bash                                                             

 PATH=/sbin:/bin:/usr/sbin:/usr/bin

 MAILTO=root

 

 # For details see man 4 crontabs

 

 # Example of job definition:

 # .---------------- minute (0 - 59)

 # |  .------------- hour (0 - 23)

 # |  |  .---------- day of month (1 - 31)

 # |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...

 # |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,t    hu,fri,sat

 # |  |  |  |  |

 # *  *  *  *  * user-name  command to be executed

                                              


crontab -l ##查看當前的任務

crontab -u username -r ##刪除當前username用戶的任務(全部任務)


文件的方式發起

vim /etc/cron.d/filename

MM hh dd mm ww USERNAME  動做


echo 'MM hh dd mm ww USERNAME 動做' > /etc/cron.d/filename



crontab用戶的黑白名單(效果同at用戶的黑白名單)

/etc/cron.deny ##默認存在並生效

/etc/cron.allow ##默認不存在,一旦存在,/etc/cron.deny失效


###3.系統臨時文件的管理###

vim /usr/lib/tmpfiles.d/xxxx.conf

type filename perm   user  group  time

d /mnt/westos 1777 root  root   10s


systemd-tmpfiles --create /usr/lib/tmpfiles.d/xxxx.conf ##讀取相應配置文件,使之成爲臨時文件

systemd-tmpfiles --clean  /usr/lib/tmpfiles.d/xxxx.conf ##執行編寫的文件


例如:vim /usr/lib/tmpfiles.d/westos.conf

內容爲: d  /mnt/wetos   1777  root  root  10s

退出保存後執行:

systemd-tmpfiles --create /usr/lib/tmpfiles.d/xxxx.conf

touch /mnt/westos/file

systemd-tmpfiles --clean  /usr/lib/tmpfiles.d/xxxx.conf 

能夠發如今最短保存時間內執行systemd-tmpfiles --clean  /usr/lib/tmpfiles.d/xxxx.conf操做無效

相關文章
相關標籤/搜索