1 kickstart自动安装

已安装系统中,在root下述目录会自动生成kickstart配置文件

ll ~/anaconda-ks.cfg

关键配置元素注释,详见未精简版

创建Kickstart配置文件

yum list *kick*

system-config-kickstart

yum install system-config-kickstart

包安装后,在应用-系统工具中有kickstart

使用system-config-kickstart实用程序创建kickstart配置文件

--有两种方法来创建一个启动配置文件:

1、使用系统配置与实用( system-config-kickstart)

2、使用文本编辑器(vi,vim 模板/root/anaconda-ks.cfg )从已安装的系统中拷贝一份

Kickstart安装步骤: 详见Virtualization and AutomatedInstallation.docx

1、创建安装源(FTP、NFS)

2、编辑DHCP配置文件,启动DHCP服务器

3、创建启动引导界面配置文件,启动TFTP服务器(TFTP)

4、创建kickstart配置文件

PXE网卡启动 实用kickstart自动安装

PXELinux

DHCP+TFTP(syslinux) +FTP +KICKSTART

原理:

PXE网卡启动

-=>DHCP服务器获得IP

-=>TFTP下载“pxelinux.0"、“vmlinuz”、“initrd”

-=>启动系统

-=>FTP下载文件

tftp ftp

小文件 大文件

局域网 广域网

UDP TCP

无用户 用户

桌面服务

gdm = gnome desktop manager

2 grep sed

# touch /tmp/{a..c}{1..3}

# ls /tmp/[ac]*

# ls /tmp/[a-c]*

# grep ^S /etc/selinux/config 以S开头的行

# grep ^S.*= /etc/selinux/config 以S开头并且包含=的行 SELINUX=enforcing .为占位符

# grep root /etc/passwd 含root的行

# grep -n root /etc/passwd 含root的行 并显示行号

# grep -n ^root /etc/passwd 以root开头的行 显示行号

# grep -n nologin$ /etc/passwd 没有bash的用户 ,即查找以nologin结尾的行

# grep -n nologin$ /etc/passwd | wc -l 统计行数wc -l

# grep -i ^his /etc/profile 以his开头的行,不区分大小写

# grep -v '#' /etc/fstab 不包含#的行

# grep -v '#' /etc/fstab | grep -v ^$ 不包含#号的行,且忽略空行^$

# ip add show | grep inet

# ip add show | grep -A 1 inet 输出含inet的行及其一行

# ip add show | grep -B 1 inet 输出含inet的行及其一行

# grep -e ^root -e student /etc/passwd -e查找字符串,多条件同事查找

# grep -E '^root|student' /etc/passwd -E后跟多个条件,各条件以|连接

两条命令均为:查找以root开头的行,或包含student的行

# man sed 查找文件内容并替换

# sed '/=/anei rong' /etc/selinux/config 在每个含=的行后,都增加显示一行nei rong,实际未写入文件,仅显示在屏幕

# sed -i '/=/anei rong' /etc/selinux/config 在每个含=的行后,都增加一行nei rong,-i交互

# sed -i '/nei rong/d' /etc/selinux/config 将含neirong的行删除

# sed -i '/^SELINUX=/s/=.*/=permissive/' /etc/selinux/config 将以SELINUX=开头的行中=及其之后的内容,修改为=permissive

# sed -i.bk '/^SELINUX=/s/=.*/=enforcing/' /etc/selinux/config

将以SELINUX=开头的行中=及其之后的内容,修改为=permissive,并把原文件备份为config.bk

3 计划任务

3.1 at 一次性任务

systemctl status atd

at 11:00

输入执行,例如echo haha>/tmp/1100.txt

<ctrl+d>

atq查询

atrm 删除

3.2 cron 循环服务 最小单位分

systemctl status crond

crontab -e 编辑

查找帮助:vim /etc/crontab 或 man 5 crontab

* * * * * 命令

分 时 日 月 年 星期 命令

*/5 8-20 * * * command 每天8到20点,每隔五分钟执行

crontab -l 查看

crontab -r 删除

配置文件/etc/cron.deny 拒绝使用crontab的用户,直接添加用户名

crontab -e -u student编辑其他用户的计划任务

# vim /etc/cron.deny

...

student

cron相关日志/var/log/cron

4 优先级 nice renice

nice可分配的-20~19 高~低

dd if=/dev/zero of=/dev/null bs=1K &

ps -o pid,nice,cmd 查看优先级nice

修改正在运行的进程优先级

renice -n -10 31034

在运行进程时指定优先级

nice -n -7 dd if=/dev/zero of=/dev/null bs=1K &

普通用户只能降低优先级

# top

# killall dd

5 facl == file Access control list

文件的访问控制ACLs

设置ugo之外,具体的访问控制权限

访问控制列表的概念

标准Linux文件权限,有局限性。

ACL允许细粒度的权限被分配到一个文件。

文件的所有者可以设置ACL在单个文件或目录。

新的文件和子目录,可以自动从父目录的默认ACL继承ACL设置。

getfacl 文件 获取文件权限

getfacl . 获取当前目录权限

setfacl [参数] 文件或目录

-m 设定的ACL参数给文件使用

-x 删除ACL参数

-b 删除全部ACL参数

-k 删除预设的ACL参数

-R 递归设定ACL参数

-d 设定预设参数,default,只对目录有效,在该目录新建的数据会引用此默认值[参数] 文件或目录

选项,先-d 后其他,设定默认facl

单独-m设定即时生效facl

# touch /folder/file

# setfacl -m u:student:rwx /folder/file 用户student可读写

# getfacl /folder/file

# setfacl -x u:student /folder/file 删除student权限

# getfacl /folder/file 但mask未删除 权限标示仍为+

# setfacl -x mask /folder/file 删除mask 权限标示恢复为.

# setfacl -m g:wheel:rwx /folder 目录设置组wheel权限 无-d,目录中新创建文件无法继承

# setfacl -b /folder 删除所有facl权限-b

# setfacl -d -m g:wheel:rwx /folder other无法继承,user group可以继承

备份acl权限及恢复

# mkdir /mnt/backup

# mount classroom:/home/guests /mnt/backup

# getfacl -R /folder > /mnt/backup/s0_yymmdd.bk

# setfacl -R -b /folder

# ll -d /folder /folder/*

# setfacl --restore /mnt/backup/s0_yymmdd.bk

# getfacl /folder

当facl权限和原组 用户权限冲突时:

匹配,取小

6 管理SELinux安全

考点

selinux security enhanced linux

semange port vim /var/log/messages Listen 8089

chcon LINUX和windows互相共享 samba +filesystem

setsebool ftp +firewall

/.autorelabel single单用户跳密码

/etc/selinux/config SELINUX开关

ll -Z /var/www查看上下文关系-Z

chcon 修改上下文

resotrecon 恢复文件至默认的安全上下文

resotrecon -Rv /var/www将目录下所有文件的上下文关系恢复至和目录一致

nv /tmp/file1 /var/www/html拷贝文件及上下文关系至目标位置

cp /tmp/file2 /var/www/html拷贝文件,但上下文关系继承目标目录

semanage也可用于给目录添加上下文关系

semanage fcontext -a -t httpd_sys_content_t '/common'

6.1 实验1:/etc/selinux/config SELINUX开关

/etc/selinux/config 中

SELINUX=enforcing 强制启动 on # setenforce 1 # getenforce

---------=permissive 警告启动 on # setenforce 0

---------=disable 停止 off

on | off # shutdown -r now

getenforce

setenforce (1 | 0 ) 命令立即生效

改配置文件,重启生效

-----------实验命令------------

# vim /etc/selinux/config 修改配置文件,重启生效

...

SELINUX=permissive

# grep ^SELINUX= /etc/selinux/config

# setenforce 0

# getenforce

6.2 实验2:chcon LINUX和windows互相共享 samba SMB

# yum list samba samba-common samba-client

红帽RHCE培训-课程2笔记内容的更多相关文章

  1. 红帽RHCE培训-课程1笔记内容

    ssh -X root@s0 1.环境变量 env 系统变量名都为大写; 引用变量名对应的值时使用$引导: SHELL下,修改变量临时生效. # PS1=' # ' # echo $PS1 永久生效放 ...

  2. 红帽RHCE培训-课程3笔记内容2

    9 NFS 9.1 NFS基础 目标 .使用NFS将文件系统连接到客户端,并使用IP 地址控制访问 .使用NFS将文件系统连接到客户端,并使用kerberos 来控制访问 .配置用户名和密码控制访问的 ...

  3. 红帽RHCE培训-课程3笔记内容1

    1 控制服务和守护进程 systemctl systemctl start ** systemctl restart ** systemctl enable ** systemctl status * ...

  4. 红帽RHCE培训-课程3笔记目录

    目录: 1 控制服务和守护进程 systemctl systemctl restart enable servicename service servicename restart chkconfig ...

  5. 红帽RHCE培训-课程2笔记目录

    目录 1 kickstart自动安装 DHCP+TFTP(syslinux) +FTP +KICKSTART ~/anaconda-ks.cfg system-config-kickstart 2 g ...

  6. 红帽RHCE培训-课程1笔记目录

    目录 1.环境变量 env 2.man手册mandb;系统日志/var/log/messages 3.重定向和管道> 2> &> | tee 4.mail mail -s 标 ...

  7. 4.bootstrap练习笔记-内容区块

    bootstrap练习笔记-内容区块 1.bootstrap中,采用的全部是div布局,把你的内容首先要包含在一个大的DIV区块当中 2.然后再写一个div.container,这个div里面存放真正 ...

  8. 01_Hadoop学习笔记内容说明

    Hadoop学习笔记内容说明_00 1.  观看云帆大数据梦琪老师的<企业级 Hadoop 1.x 应用开发基础课程>2014年4月左右版本. 2.  博客是在梦琪老师的随堂笔记上改动的, ...

  9. (转载)林轩田机器学习基石课程学习笔记1 — The Learning Problem

    (转载)林轩田机器学习基石课程学习笔记1 - The Learning Problem When Can Machine Learn? Why Can Machine Learn? How Can M ...

随机推荐

  1. Mysql单实例数据库安装

    第1章 MySQL数据库安装 在当今的大中型互联网企业里,MySQL数据库服务几乎都是运行在Linux系列操作系统上,当然,你在可以运行在Windows/Unix等商业操作系统上,大中型互联网企业使用 ...

  2. Importing data in R 1

    目录 Importing data in R 学习笔记1 flat files:CSV txt文件 packages:readr read_csv() read_tsv read_delim() da ...

  3. 洛谷P1068 分数线划定

    https://www.luogu.org/problem/P1068 #include<bits/stdc++.h> using namespace std; struct Can { ...

  4. 安装proxmox VE(PVE)教程

    proxmox VE,又叫PVE,全称是 Proxmox Virtual Environment 官网地址:https://www.proxmox.com/en/ 1)在官网下载PVE最新镜像,笔者下 ...

  5. 用html5自带表单验证 并且用ajax提交的解决方法(附例子)

    用submit来提交表单,然后在js中监听submit方法,用ajax提交表单最后阻止submit的自动提交. 在标准浏览器中,阻止浏览器默认行为使用event.preventDefault(),而在 ...

  6. 【玩转SpringBoot】SpringBoot应用的启动过程一览表

    SpringBoot应用的启动方式很简单,就一行代码,如下图01: 其实这行代码背后主要执行两个方法,一个是构造方法,一个是run方法. 构造方法主要内容就是收集一些数据,和确认一些信息.如下图02: ...

  7. Spring AOP操作action时无法注入,报NullPointer异常

    Spring AOP操作action时无法注入,报NullPointer异常当使用Spring AOP对action层进行操作时,会出现注入失败的问题,出现空指针异常.原因是一般struts2+spr ...

  8. 用eclipse的同一个tomcat启动两个javaweb项目

    1.右键选择 Add and Remove 2.把左边两个项目add到右边 3.完成之后查看eclipse左边的Servers下的server.xml文件,会自动生成两个Context标签,当然你到第 ...

  9. listView有感

    listView显示出来框,设置的是裁切后显示出来的界面,而非能装入item的空间.

  10. ubuntu---yolo报错darknet: ./src/cuda.c:36: check_error: Assertion `0' failed.

    装好darknet后,直接测试的时候,报错: darknet: ./src/cuda.c:36: check_error: Assertion `0' failed.解决办法是打开yolov3.cfg ...