admin管理员组文章数量:1660200
DAY1............................................................................................................................... 4
一.扩展的几个应用........................................................................................................... 4
1.权限的数值表示..................................................................................................... 4
1.1权限的数值化............................................................................................... 4
1.2使用数字修改权限........................................................................................ 4
2.历史命令................................................................................................................ 5
2.1管理/调用曾经执行过的命令......................................................................... 5
2.2调整历史命令的数量..................................................................................... 5
3.实用小命令工具..................................................................................................... 5
3.1du命令.......................................................................................................... 5
3.2date命令........................................................................................................ 5
3.3ln命令........................................................................................................... 6
4.查看帮助的方法..................................................................................................... 7
4.1help命令....................................................................................................... 7
4.2man 命令...................................................................................................... 7
5.zip归档工具........................................................................................................... 7
5.1制作.zip压缩包............................................................................................. 7
5.2释放.zip压缩包............................................................................................. 7
二.网络yum源................................................................................................................. 8
1.准备yum源............................................................................................................ 8
1.1yum仓库特点................................................................................................ 8
1.2挂载............................................................................................................. 8
2.客户端配置repo使用yum源.................................................................................. 9
三.vim编辑技巧............................................................................................................. 10
1.命令模式操作....................................................................................................... 10
1.1复制/粘贴/删除............................................................................................ 10
1.2光标跳转..................................................................................................... 10
1.3查找/撤销/保存............................................................................................ 11
2.末行模式操作....................................................................................................... 11
2.1保存/退出/文件操作..................................................................................... 11
2.2字符串替换................................................................................................. 11
2.3开关参数的控制.......................................................................................... 12
四.源码编译安装............................................................................................................ 12
1.基本实现过程....................................................................................................... 12
1.1下载源码包及解包....................................................................................... 12
1.2配置 (./configure).................................................................................... 13
1.3编译及安装................................................................................................. 13
1.4结果验证..................................................................................................... 13
2.监控(inotify)..................................................................................................... 13
五.systemctl控制............................................................................................................ 14
1.systemctl命令....................................................................................................... 14
2.列出服务.............................................................................................................. 14
3.管理运行级别(运行模式).................................................................................. 15
DAY2.............................................................................................................................
2.利用root 进入虚拟机 密码 123456................................................................... 16
3.在真机上配置远程管理的别名,进行远程管理(/root/.bashrc).................................. 17
4.为虚拟机A与虚拟机B 搭建本地Yum仓库.......................................................... 17
5.检测防火墙是否关闭,SELinux状态..................................................................... 17
二.DNS服务器搭建........................................................................................................ 18
1.DNS工作原理...................................................................................................... 18
1.1DNS服务器的功能....................................................................................... 18
1.2DNS的分布结构.......................................................................................... 18
2.BIND服务分析..................................................................................................... 19
2.1BIND域名服务............................................................................................ 19
3.单区域DNS服务.................................................................................................. 19
3.1安装软件包(bind bind-chroot)....................................................................... 19
3.2修改配置文件/etc/named.conf....................................................................... 19
3.3检查配置语法.............................................................................................. 20
3.4建立地址库文件tedu.zone....................................................................... 20
3.5重起named,设置开机自启动..................................................................... 20
3.6客户端检查................................................................................................. 20
4.多区域DNS服务.................................................................................................. 21
4.1修改配置文件/etc/named.conf....................................................................... 21
4.2建立地址库文件.......................................................................................... 21
4.3重起named服务......................................................................................... 21
三.特殊的解析记录......................................................................................................... 21
1.基于DNS域名的负载均衡.................................................................................... 21
2.泛域名解析........................................................................................................... 22
3.有规律的泛域名解析............................................................................................. 22
四.DNS的子域授权........................................................................................................ 23
DAY3............................................................................................................................. 26
DAY4............................................................................................................................. 34
DAY5............................................................................................................................. 41
DAY6 (cobbler)............................................................................................................ 45
DAY1
一.扩展的几个应用
1.权限的数值表示
chmod +r 文件名或目录
chmod +rwx 文件名或目录
chmod u+rw 文件或目录
r:读,w:写,x:执行
1.1权限的数值化
- 基本权限:r=4,w=2,x=1
- 附加权限:SUID=4,SGID=2,Sticky Bit=1
n=r+w+x(以求和的形式算的)
rw=6
rwx=7
r-x=5
1.2使用数字修改权限
- chmod [-R] nnn 文档...
- chmod [-R] xnnn 文档...
#chmod 777 文件或目录
#chmod 000 文件或目录
#chmod 077 文件或目录
chmod nnnn文件或目录
第1个n是特殊权限,第2个n是用户权限,
第3个n是组权限,第4个n是其他人权限
# chmod 7777 文件(结果rwsrwsrwt)
# chmod 1777 文件 (结果rwxrwxrwt)
# chmod 6777 文件(结果rwsrwsrwx)
2.历史命令
2.1管理/调用曾经执行过的命令
# history 查看历史
# history -c 清空历史命令
# 上下键盘 调用历史
# !命令字串 调用最近的历史命令
# !sys 执行最近一次以sys开头的历史命令
# !n 通过历史命令的编号调用历史命令
2.2调整历史命令的数量
#vim +46 /etc/profile
直接到/etc/profile文件的第46行
HISTSIZE=1000
默认历史记录是最多1000条
(如果需要修改的话,重开一个终端才能有用)
3.实用小命令工具
3.1du命令
du 与 ls -l 的区别
ll (ls -l)查看容量仅可以看文件是对的
du命令(查看文件或目录的大小)
-du [选项]... [目录或文件]...
-s 统计目录的总容量
-h 人性化显示容量(带单位)
# du -sh /boot/
3.2date命令
date查看计算机时间
- date +%F 年月日、date +%R 时分
- date +"%Y-%m-%d %H:%M:%S" 年月日 时分秒
- date +%Y%m%d 年月日,date +%H:%M:%S 小时分钟秒
- date -s "年-月-日 时:分:秒" 修改计算机时间
# date -s "11:01" //仅修改时间
# date -s "2088-12-1 12:12"
# hwclock -s 重设系统日期时间
3.3ln命令
ln命令(给文件或目录创建快捷方式,链接)
1.软链接 软链接不占用空间,但是源文件删除,链接失败
2.硬链接 硬链接不占用空间,源文件可以删除,链接依然能用
软链接:(注意:做链接一定要用绝对路径)
格式: ln -s /路径/源文件 /路径/快捷方式名称
# echo "123" > /root/123.txt
# ln -s /root/123.txt /abc.txt
给/root/123.txt创建了一个软链接在/abc.txt
# cat /abc.txt //可以打开
# rm -rf /root/123.txt
# cat /abc.txt //打不开
# rm -rf /abc.txt //把没用软链接删除
硬链接:(注意:做链接一定要用绝对路径)
# echo "123" > /root/123.txt
# ln /root/123.txt /abc.txt
给/root/123.txt创建了一个硬链接在/abc.txt
# cat /abc.txt //可以打开
# rm -rf /root/123.txt
# cat /abc.txt //依然可以打开
# ln /root/123.txt /qq.txt
# ln /root/123.txt /cc.txt
4.查看帮助的方法
4.1help命令
# 命令 --help
# help 命令名
4.2man 命令
man 命令名
- 按↑、↓、PgUp、PgDn健滚动及翻页
- 按q健退出
- 按 / 健向后查找关键词(n、N切换)
5.zip归档工具
5.1制作.zip压缩包
.归档+压缩操作
- zip [-r] 备份文件.zip 被归档的文档
linux
压缩常用格式:gzip,bz2,xzip,zip
windwos
压缩:rar(商业),zip
# zip -r my.zip /var/log
//把/var/log目录给压缩,压缩到当前目录,my.zip
5.2释放.zip压缩包
.释放归档+解压操作
- unzip 备份文件.zip [-d 目标文件夹]
# unzip my.zip
//把my.zip解压到当前
# unzip my.zip -d /tmp
//把my.zip解压到/tmp
二.网络yum源
1.准备yum源
1.1yum仓库特点
自定义yum服务器(真实机操作)
做yum源(yum服务器)【把一堆软件包共享】
.作为yum源需要准备的内容
a)大量的.rpm软件安装包文件
b)针对这些软件包的repodata/仓库档案
.repodata/仓库档案数据
-filelists.xml.gz //软件包的文件安装清单
-primary.xml.gz //软件包的基本/主要信息
-other.xml.gz //软件包的其他信息
-repomd.xml //提供.xml.gz下载和校验信息
1.2挂载
# mkdir /var/www/html/rhel
# vim /etc/fstab
/iso/rhel-server-7.4-x86_64-dvd.iso /var/www/html/rhel/ iso9660 defaults,loop 0 0
# mount -a
1.3使用RHEL7光盘库
.RHEL7光盘目录已经预先配置为yum源
- Packages/ 存放.rpm软件包
- repodata/ 仓库档案
- isolinux/ 光盘引导数据
- RPM-GPG-KEY-redhat-release 签名校验密钥
备注:在光盘里有Packages,里面都是RPM包
repodata目录,里面有相关数据库
2.客户端配置repo使用yum源
# yum -y install httpd
# systemctl restart httpd
#vim /etc/yum.repo.d/abc.repo
[abc]
name=redhat
baseurl=http://172.25.0.250/rhel
gpgcheck=0
#yum clean all
自己从网络上下载的若干软件,把这些软件做成yum源
# unzip other.zip -d /var/www/html
# ls /var/www/html/other
# createrepo /var/www/html/other
//给/var/www/html/other目录下RPM软件自动生成数据库
客户端配置xx.repo去调用yum源
# vim /etc/yum.repos.d/xx.repo
[xx]
name=redhat
baseurl=http://172.25.0.250/other
gpgcheck=0
三.vim编辑技巧
vim的三种模式:命令模式,编辑模式,末行模式
1.命令模式操作
1.1复制/粘贴/删除
yy 复制光标一行
p 粘贴(到光标的下一行)
P(大写)粘贴(到光标的上一行)
x 删除光标当前的一个字符 (或者Delete健)
dd 删除光标处的一行 (剪切)
d$ 从光标处之前删除到行尾
d^ 从光标处之前删除至行首
C(大写)可以删除光标之后,并且进入输入模式
cc(小写)可以删除整行,并且进入输入模式
1.2光标跳转
h,j,k,l 移动光标(左,下,上,右) (或者↑、↓、←、→)
gg 移动光标到文件头 (或者1G)
G 移动光标到文件尾
4G 移动光标到第4行
^ 光标跳到行首 (或者Home健、数字0)
$ 光标跳到行尾 (或者End健)
1.3查找/撤销/保存
/word 向后查找字符串”word”
n、N 跳至后/前一个结果
u 撤销一步
U 撤销对当前行的所有修改
Ctrl + r 取消前一次撤销操作
ZZ 保存退出
2.末行模式操作
2.1保存/退出/文件操作
:4 移动光标到第4行
:w 保存(不退出)
:wq 保存退出 (或者x)
:q! 不保存退出
:r 读取其他文件
:w 另存为其他文件内容
如:
:r /etc/filesystems 读入 /etc/filesystems 内容
:w /root/newfile 另存为 /root/newfile 内容
2.2字符串替换
:s /旧/新/ 旧内容替换为新内容 仅替换当前行的第1个内容
:s /旧/新/g 旧内容替换为新内容 替换当前行的旧内容
:%s/旧/新/ 旧内容替换为新内容 替换所有行的第1个内容
:%s/旧/新/g 替换所有行的所有内容
:3,5s/旧/新/g 替换3到5行的所有内容
2.3开关参数的控制
:set nu 显示行号
:set nonu 不显示行号
:set ai 启用自动缩进 (对齐上一行光标)
:set noai 关闭自动缩进
四.源码编译安装
编译安装介绍
源码包安装软件
二进制包可以安装软件
[rpm,exe,msi,deb...]
1.基本实现过程
源码--->编译--->二进制
Linux的软件多数都免费,开源
二进制包装软的缺点:
(不愿意花时间去封装二进制)
有写开源软件会封装成二进制,但时间会很久
没办法自定义
如何在Linux中源码编译安装软件
1.1下载源码包及解包
# firefox ftp://172.40.50.118/course/SERVICE/inotify-tools-3.13.tar.gz
# scp inotify-tools-3.13.tar.gz 172.25.0.11:/root /
//把文件的inotify-tools-3.13.tar.gz拷贝到
172.25.0.11电脑的/root/目录
登陆server0使用源码安装软件
# tar -xf inotify-tools-3.13.tar.gz
//解压
#cd inotify-tools-3.13/
//计算机的系统软件一般都是用c语言写的
//如QQ,office,windows,linux,画图,播放器
1.2配置 (./configure)
# ./configure 检查你的计算机环境
# yum -y install gcc
//gcc是linux里面的一个C语言的解释器
# ./configure 检查环境,不报错没有Error
1.3编译及安装
# make (编译)(make 必须在解压路径下操作)
//用gcc解释器把源码转换为二进制
# make install (安装)
//把编译好的二进制程序安装到你的计算机
1.4结果验证
# inotifywait 这个能tab出来(说明成功)
//备注:执行./configure --prefix=/路径
//configure可以通prefix参数,指定安装路径
//如果没有指定prefix,则默认一般在/usr/local/
2.监控(inotify)
inotify-tools这个软件可以监控你的计算机目录
# inotifywait -mrq /root/
再开一个窗口终端,在/root目录做一些操作
#touch /root/tmp.txt
#echo "1" > /root/1.txt
#rm /root/1.txt
五.systemctl控制
1.systemctl命令
.一个更高效的系统&服务管理器
- 开机服务并行启动,各系统服务间的精确依赖
- 配置目录:/etc/systemd/system/
- 服务目录:/lib/systemd/system/
- 主要管理工具:systemctl
2.列出服务
# systemctl -t service
//列出启动的服务
# systemctl -t service --all
//列出所有的服务,包括没启动的
# systemctl stop 服务名称
//当前关闭,重启无效
# systemctl disable 服务名称
//永久关闭
# systemctl enable 服务名称
//开机自启
# systemctl start 服务名称
//当前立刻启动(重启无效)
# systemctl restart 服务名称
//重启服务
# systemctl status 服务名称
//查看某个服务的状态(是否启动)
3.管理运行级别(运行模式)
RHEL5 、 RHEL6 切换运行级别的命令
init 0 : 关机
init 1 : 单用户模式(破解密码、修复系统)
init 2 : 字符模式(不支持网络)
init 3 : 字符模式(支持网络)
init 4 : 无定义
init 5 : 图形模式
init 6 : 重起
RHEL7 运行模式
multi-user.target 字符模式(支持网络)
graphical.target 图形模式
临时切换运行模式
#临时直接切换到图形
[root@svr7 /]# systemctl isolate graphical.target
#临时直接切换到字符(文本)
[root@svr7 /]# systemctl isolate multi-user.target
永久改变默认的运行模式
#查看当前默认的运行模式
[root@svr7 /]# systemctl get-default
#修改默认的运行模式(文本)
[root@svr7 /]# systemctl set-default multi-user.target
[root@svr7 /]# systemctl get-default
#修改默认的运行模式(图形)
[root@svr7 /]# systemctl set-default graphical.target
[root@svr7 /]# systemctl get-default
DAY2
一.新建教学环境
1.在真机上利用clone-vm7 产生新的虚拟机
[root@room9pc01 ~]# clone-vm7
Enter VM number: 3 (创建第3台虚拟机)
[root@room9pc01 ~]# clone-auto7
Enter VM number: 4 (创建4台虚拟机)
# ls -l /var/lib/libvirt/images/.rh7_template.img
-rw------- 1 qemu qemu 53695545344 1月 12 18:16 /var/lib/libvirt/images/.rh7_template.img
i权限:加上i权限,所有用户包括root都不能修改或删除该文件
# 查看是否有特殊权限
# lsattr /var/lib/libvirt/images/.rh7_template.img
# 去除特殊权限
# chattr -i /var/lib/libvirt/images/.rh7_template.img
# chown qemu:qemu /var/lib/libvirt/images/.rh7_template.img
# ls -l /var/lib/libvirt/images/.rh7_template.img
2.利用root 进入虚拟机 密码 123456
虚拟机A
1.配置eth0 永久静态的IP地址:192.168.4.7/24
2.配置永久主机名:svr7.tedu
[root@svr7 ~]# hostname svr7.tedu
[root@svr7 ~]# echo svr7.tedu > /etc/hostname
虚拟机B
1.配置eth0 永久静态的IP地址:192.168.4.207/24
2.配置永久主机名:pc207.tedu
[root@pc207 ~]# hostname pc207.tedu
[root@pc207 ~]# echo pc207.tedu > /etc/hostname
3.在真机上配置远程管理的别名,进行远程管理(/root/.bashrc)
alias goa='ssh -X root@192.168.4.7'
alias gob='ssh -X root@192.168.4.207'
4.为虚拟机A与虚拟机B 搭建本地Yum仓库
虚拟机A
1.图形将光盘放入光驱设备
2.挂载光驱设备到/dvd
[root@svr7 ~]# mkdir /dvd
[root@svr7 ~]# ls /dvd
[root@svr7 ~]# mount /dev/cdrom /dvd
mount: /dev/sr0 写保护,将以只读方式挂载
[root@svr7 ~]# ls /dvd
3.书写配置文件 /etc/yum.repos.d/dvd.repo
[dvd]
name=rhel7
baseurl=file:///dvd
enabled=1
gpgcheck=0
[root@svr7 ~]# yum repolist
5.检测防火墙是否关闭,SELinux状态
[root@svr7 ~]# getenforce
[root@svr7 ~]# systemctl status firewalld
二.DNS服务器搭建
1.DNS工作原理
1.1DNS服务器的功能
– 正向解析:根据注册的域名查找其对应的IP地址
– 反向解析:根据IP地址查找对应的注册域名,不常用
1.2DNS的分布结构
所有完整的域名都会以 . 结尾
根域 .
一级DNS服务器
.us .tw .kr .hk .......
二级DNS服务器
.edu
三级DNS服务器
.tedu .haha .xixi
完整的主机名
web1.tedu tts.tedu
• Full Qualified Domain Name (FQDN),完全合格主机名
– = 站点名.域名后缀
– = 站点名. .. .. .二级域.一级域
比如,www.pku.edu
• 常见的顶级/一级域名
– 国家/地区域: 、.us、.kr、.hk、.tw、.. ..
– 组织域:、、.edu、、.gov、.mil、.. ..
2.BIND服务分析
2.1BIND域名服务
• BIND(Berkeley Internet Name Daemon)
– 伯克利 Internet 域名服务
– 官方站点:https://www.isc/
bind-9.9.4-29.el7.x86_64 //域名服务包
bind-chroot-9.9.4-29.el7.x86_64 //提供虚拟根支持
.BIND服务器端程序
– 主要执行程序:/usr/sbin/named
– 系统服务:named
– 默认端口:TCP/UDP 53
– 运行时的虚拟根环境:/var/named/chroot/
• 主配置文件: /etc/named.conf #设置本机负责解析的域名是什么
• 地址库文件: /var/named/ #主机名与ip地址的对应关系
3.单区域DNS服务
搭建基本的DNS服务
服务端:虚拟机A
3.1安装软件包(bind bind-chroot)
[root@svr7 ~]# yum -y install bind bind-chroot
3.2修改配置文件/etc/named.conf
[root@svr7 ~]# vim /etc/named.conf
options {
directory "/var/named"; #指定地址库文件存放路径
};
zone "tedu" IN { #指定本机负责解析的域名
type master; #指定本机为权威主DNS服务器
file "tedu.zone"; #指定地址库文件为tedu.zone
};
3.3检查配置语法
格式:
named-checkconf [配置文件]
[root@svr7 ~]# named-checkconf [若配置正确,无任何输出]
3.4建立地址库文件tedu.zone
[root@svr7 ~]# cd /var/named/
[root@svr7 named]# cp -p named.localhost tedu.zone
#权限属性不变拷贝
[root@svr7 named]# ls -l tedu.zone
-rw-r----- 1 root named 152 6月 21 2007 tedu.zone
[root@svr7 named]# vim tedu.zone
[root@svr7 named]# tail -4 tedu.zone
tedu. NS ns1.tedu. #域名可以随便定义
#声明tedu.域名的DNS服务器为svr7.tedu.
svr7 A 192.168.4.7 #指定svr7.tedu.的ip地址为192.168.4.7
ns1 A 192.168.4.7
www A 1.1.1.1 #前面不允许有空格
ftp A 2.2.2.2
3.5重起named,设置开机自启动
[root@svr7 named]# systemctl restart named
[root@svr7 named]# systemctl enable named
3.6客户端检查
客户端:虚拟机B
方法1(临时配置)
[root@pc207 ~]# echo nameserver 192.168.4.7 > /etc/resolv.conf
[root@pc207 ~]# nslookup www.tedu
方法2(永久配置)
[root@pc207 ~]# nmcli connection modify eth0 ipv4.dns 192.168.4.7
[root@pc207 ~]# nslookup svr7.tedu
4.多区域DNS服务
虚拟机A
4.1修改配置文件/etc/named.conf
zone "qq" IN {
type master;
file "qq.zone";
};
4.2建立地址库文件
[root@svr7 /]# cd /var/named/
[root@svr7 named]# cp -p tedu.zone qq.zone
[root@svr7 named]# vim qq.zone
[root@svr7 named]# tail -4 qq.zone
qq. NS svr7
svr7 A 192.168.4.7
www A 3.3.3.3
ftp A 4.4.4.4
4.3重起named服务
[root@svr7 named]# systemctl restart named
三.特殊的解析记录
1.基于DNS域名的负载均衡
[root@svr7 named]# vim qq.zone
[root@svr7 named]# tail -6 qq.zone
qq. NS svr7
svr7 A 192.168.4.7
www A 192.168.4.11
www A 192.168.4.12
www A 192.168.4.13
ftp A 4.4.4.4
2.泛域名解析
虚拟机A
[root@svr7 /]# cd /var/named/
[root@svr7 named]# vim qq.zone
qq. NS svr7
svr7 A 192.168.4.7
www A 192.168.4.11
ftp A 4.4.4.4
* A 1.2.3.4
[root@svr7 /]# systemctl restart named
虚拟机B
[root@pc207 /]# nslookup www.qq
[root@pc207 /]# nslookup hahaxixi.qq
3.有规律的泛域名解析
web1.qq------》192.168.10.1
web2.qq------》192.168.10.2
web3.qq------》192.168.10.3
web4.qq------》192.168.10.4
......
web50.qq------》192.168.10.50
函数: $GENERATE 生成连续范围的数字
虚拟机A
[root@svr7 /]# cd /var/named/
[root@svr7 named]# vim qq.zone
qq. NS svr7
svr7 A 192.168.4.7
www A 192.168.4.11
ftp A 4.4.4.4
* A 1.2.3.4
$GENERATE 1-50 web$ A 192.168.10.$
[root@svr7 named]# systemctl restart named
四.DNS的子域授权
父域 www.tedu 总公司
子域 www.bj.tedu 北京分公司
tedu域名由 svr7 服务器192.168.4.7
bj.tedu域名由 pc207 服务器 192.168.4.207
虚拟机B:搭建DNS负责解析bj.tedu域名
1.安装软件包
[root@pc207 ~]# yum -y install bind bind-chroot
2.修改配置文件/etc/named.conf
options {
directory "/var/named";
};
zone "bj.tedu" IN {
type master;
file "bj.tedu.zone";
};
3.建立地址库文件bj.tedu.zone
[root@pc207 ~]# cd /var/named/
[root@pc207 named]# cp -p named.localhost bj.tedu.zone
[root@pc207 named]# vim bj.tedu.zone
bj.tedu. NS pc207
pc207 A 192.168.4.207
www A 11.12.13.14
4.重起named,设置开机自启动
[root@pc207 named]# systemctl restart named
[root@pc207 named]# systemctl enable named
[root@pc207 named]# nslookup www.bj.tedu 192.168.4.207
实现目标1:询问svr7虚拟机A www.bj.tedu 能够得到结果
虚拟机A:子域授权
[root@svr7 named]# cd /var/named
[root@svr7 named]# vim tedu.zone #指定子域的DNS服务器
tedu. NS svr7
bj.tedu. NS pc207.bj
svr7 A 192.168.4.7
pc207.bj A 192.168.4.207
www A 1.1.1.1
ftp A 2.2.2.2
[root@svr7 named]# systemctl restart named
[root@svr7 named]# nslookup www.bj.tedu 192.168.4.7
Server: 192.168.4.7
Address: 192.168.4.7#53
Non-authoritative answer: #非权威解答
Name: www.bj.tedu
Address: 11.12.13.14
递归解析: 首选DNS服务器,跑到相应其他DNS服务器上,询问最终将结果带回来过程(客户端与首选DNS服务器交互)
迭代查询: 首选DNS服务器 与 其他DNS服务器交互
• 递归查询是默认开启的
– 也可以设置 recursion yes; 来明确启用
• 若要禁止递归
– 需要设置 recursion no;
缓存DNS
作用:加速解析过程,让客户端最快得到结果
• 方式1:全局转发
– 将请求转发给指定的公共DNS(其他缓存DNS),请求递归服务
• 方式2:根域迭代
– 依次向根、一级、二级......域的DNS服务器迭代
思路:真机作为缓存DNS服务器,虚拟机A作为客户端,真正的DNS为172.40.1.10
1.查看真机DNS服务器地址
[root@room9pc01 ~]# cat /etc/resolv.conf
nameserver 172.40.1.10
2.真机搭建Yum仓库
[root@room9pc01 ~]# mount /iso/CentOS-7-x86_64-DVD-1708.iso /dvd
mount: /dev/loop2 写保护,将以只读方式挂载
[root@room9pc01 ~]# ls /dvd
[root@room9pc01 ~]# vim /etc/yum.repos.d/nsd.repo
[CentOS]
name=CentOS 7.4
baseurl=file:///dvd
enabled=1
gpgcheck=0
[root@room9pc01 ~]# yum repolist
[root@room9pc01 ~]# yum -y install bind bind-chroot
[root@room9pc01 ~]# vim /etc/named.conf
options {
directory "/var/named";
forwarders { 172.40.1.10; };
};
[root@room9pc01 ~]# systemctl restart named
客户端:虚拟机A
[root@svr7 /]# nslookup www.360 192.168.4.254
DAY3
检查两台虚拟机的Yum仓库
[root@svr7 ~]# yum clean all #清空缓存
[root@svr7 ~]# yum repolist #查看仓库信息
Split分离解析
什么是分离解析
• 当收到客户机的DNS查询请求的时候
– 能够区分客户机的来源地址
– 为不同类别的客户机提供不同的解析结果(IP地址)
– 当不同类别的客户机请求解析同一个域名时,得到的解析结果不同
– 意义:让客户端访问网络中最近的服务器
BIND的view视图
• 根据源地址集合将客户机分类
– 不同客户机获得不同结果(待遇有差别)
– 注意:客户机分类得当(所有的客户端都要找到对应的分类)
– 注意:由上到下匹配,匹配即停止
– 注意:所有的zone都必须在view字段里面
view "nsd" {
match-clients { 192.168.4.207; } #匹配客户端的地址
zone "tedu" {
...... 地址库1;
}; };
view "abc" {
match-clients { any; }
zone "tedu" {
...... 地址库2;
}; };
环境及需求
– 权威DNS:svr7.tedu 192.168.4.7
– 负责区域:tedu
– A记录分离解析 —— 以 www.tedu 为例
客户机来自 解析结果
192.168.4.207---------》 192.168.4.100
其他地址 ---------》 1.2.3.4
虚拟机A:
1.修改配置文件/etc/named.conf
view "nsd" {
match-clients { 192.168.4.207; };
zone "tedu" {
type master;
file "tedu.nsd";
};
};
view "abc" {
match-clients { any; };
zone "tedu" {
type master;
file "tedu.abc";
};
};
2.建立地址库文件
[root@svr7 /]# tail -3 /var/named/tedu.nsd
tedu. NS svr7
svr7 A 192.168.4.7
www A 192.168.4.100
[root@svr7 /]# tail -3 /var/named/tedu.abc
tedu. NS svr7
svr7 A 192.168.4.7
www A 1.2.3.4
3.重起named服务
4.在虚拟机A与虚拟机B,分别测试解析
##########################################################################
options {
directory "/var/named";
};
acl myip { 192.168.4.207; 192.168.4.10;
192.168.4.1; 192.168.4.123; };
view "nsd" {
match-clients { myip; };
zone "tedu" {
type master;
file "tedu.nsd";
};
};
view "abc" {
match-clients { any; };
zone "tedu" {
type master;
file "tedu.abc";
};
};
################################################################################
RAID磁盘阵列
• 廉价冗余磁盘阵列
– Redundant Arrays of Inexpensive Disks
– 通过硬件/软件技术,将多个较小/低速的磁盘整合成一
个大磁盘
– 阵列的价值:提升I/O效率、硬件级别的数据冗余
– 不同RAID级别的功能、特性各不相同
• RAID 0,条带模式
– 同一个文档分散存放在不同磁盘
– 并行写入以提高效率
– 至少2块磁盘
• RAID 1,镜像模式(有容错功能)
– 一个文档复制成多份,分别写入不同磁盘
– 多份拷贝提高可靠性,效率无提升
– 至少2块磁盘
• RAID5,高性价比模式(有容错功能)
– 相当于RAID0和RAID1的折中方案
– 需要至少一块磁盘的容量来存放校验数据
– 至少3块磁盘
• RAID6,高性价比/可靠模式(有容错功能)
– 相当于扩展的RAID5阵列,提供2份独立校验方案
– 需要至少两块磁盘的容量来存放校验数据
– 至少4块磁盘
• RAID 0+1/RAID 1+0 (有容错功能)
– 整合RAID 0、RAID 1的优势
– 并行存取提高效率、镜像写入提高可靠性
– 至少4块磁盘
############################################################
进程管理
程序:静态的代码,占用硬盘
进程:动态的代码,占用cpu、内存
父进程 子进程 树型结构
进程的标识:PID
查看进程
• pstree — Processes Tree
– 格式:pstree [选项] [PID或用户名]
• 常用命令选项
– -a:显示完整的命令行
– -p:列出对应PID编号
systemd所有进程的父进程 PID 为1
[root@svr7 /]# pstree
[root@svr7 /]# pstree lisi
[root@svr7 /]# pstree -p lisi
[root@svr7 /]# pstree -ap lisi
• ps aux 操作
– 列出正在运行的所有进程
用户 进程ID %CPU %内存 虚拟内存 固定内存 终端 状态 起始时间 CPU时间 程序指令
• ps -elf 操作
– 列出正在运行的所有进程
– 可以看到进程的父进程PID
• top 交互式工具
– 格式:top [-d 刷新秒数]
[root@svr7 ~]# top -d 1
按大写的P 按CPU占有比例降序排列
按大写的M 按内存占有比例降序排列
#################################################################
检索进程
• pgrep — Process Grep
– 用途:pgrep [选项]... 查询条件
[root@svr7 ~]# pgrep cron
[root@svr7 ~]# pgrep -l cron
[root@svr7 ~]# pstree -ap lisi
[root@svr7 ~]# pgrep -lU lisi
[root@svr7 ~]# pgrep -l net
[root@svr7 ~]# pgrep -l system
##############################################################
进程的前后台调度
后台启动
– 在命令行末尾添加“&”符号,不占用当前终端
[root@svr7 ~]# sleep 800 & #将程序放入后台运行
[root@svr7 ~]# jobs #查看后台进程
[root@svr7 ~]# sleep 700
^Z #按Ctrl + z 暂停放入后台
[2]+ 已停止 sleep 700
[root@svr7 ~]# jobs #查看后台进程
[1]- 运行中 sleep 800 &
[2]+ 已停止 sleep 700
[root@svr7 ~]# bg 2 #将后台编号为2的进程继续运行
[root@svr7 ~]# jobs
[root@svr7 ~]# jobs
[1]- 运行中 sleep 800 &
[2]+ 运行中 sleep 700 &
[root@svr7 ~]# fg 2 #将后台编号为2的进程恢复到前台
sleep 700
^C
[root@svr7 ~]# fg 1
sleep 800
^C
杀死进程
– kill [-9] PID...
– killall [-9] 进程名...
– pkill 关键字...
强制踢出一个用户
killall -9 -u 用户名 #杀死该用户开启的所有进程(用户由登陆变成未登陆)
[root@svr7 ~]# sleep 800 &
[root@svr7 ~]# sleep 900 &
[root@svr7 ~]# jobs -l
[root@svr7 ~]# killall sleep
[root@svr7 ~]# jobs -l
##################################################################
日志管理
日志的功能
• 系统和程序的“日记本”
– 记录系统、程序运行中发生的各种事件
– 通过查看日志,了解及排除故障
主要用途
/var/log/messages 记录内核消息、各种服务的公共消息
/var/log/dmesg 记录系统启动过程的各种消息
/var/log/cron 记录与cron计划任务相关的消息
/var/log/maillog 记录邮件收发相关的消息
/var/log/secure 记录与访问限制相关的安全消息
日志分析
tailf 实时跟踪日志消息
• users、who、w 命令
– 查看已登录的用户信息,详细度不同
• last、lastb 命令
– 查看最近登录成功/失败的用户信息
[root@svr7 ~]# users
[root@svr7 ~]# who
[root@svr7 ~]# w
[root@svr7 ~]# last -2
[root@svr7 ~]# lastb -2
• Linux内核定义的事件紧急程度
– 分为 0~7 共8种优先级别
– 其数值越小,表示对应事件越紧急/重要
0 EMERG(紧急) 会导致主机系统不可用的情况
1 ALERT(警告) 必须马上采取措施解决的问题
2 CRIT(严重) 比较严重的情况
3 ERR(错误) 运行出现错误
4 WARNING(提醒) 可能会影响系统功能的事件
5 NOTICE(注意) 不会影响系统但值得注意
6 INFO(信息) 一般信息
7 DEBUG(调试) 程序或系统调试信息等
使用journalctl工具
• 提取由 systemd-journal 服务搜集的日志
– 主要包括内核/系统日志、服务日志
• 常见用法
– journalctl | grep 关键词
– journalctl -u 服务名 [-p 优先级]
– journalctl -n 消息条数
– journalctl --since="yyyy-mm-dd HH:MM:SS" --
until="yyyy-mm-dd HH:MM:SS"
[root@svr7 ~]# yum -y install httpd
[root@svr7 ~]# systemctl restart httpd
[root@svr7 ~]# journalctl -u httpd
[root@svr7 ~]# journalctl -u httpd -p 6
###############################################################
DAY4
DHCP自动分配网络参数服务
• Dynamic Host Configuration Protocol
– 动态主机配置协议,由 IETF(Internet 网络工程师任
务小组)组织制定,用来简化主机地址分配管理
• 主要分配以下入网参数
– IP地址/子网掩码/广播地址
– 默认网关地址、DNS服务器地址
• DHCP工作过程以广播的方式进行,原理先到先得
• DHCP地址分配的四次会话
– DISCOVERY --> OFFER --> REQUEST -->ACK
• 服务端基本概念
– 租期:允许客户机租用IP地址的时间期限,单位为秒
– 作用域:分配给客户机的IP地址所在的网段
– 地址池:用来动态分配的IP地址的范围
-----注意:先在A虚拟机上操作
如果在B虚拟机上操作,需要将ip地址192.168.4.7 改为 192.168.4.207
先检查操作的虚拟机上是否有yum仓库,没有的先进行挂载
-yum clean all
-yum repolist
-mount /dev/cdrom /dvd
-yum repolist
一、搭建基本DHCP服务
1.安装dhcp包
[root@svr7 ~]# yum -y install dhcp
[root@svr7 ~]# rpm -q dhcp
2.修改配置文件 /etc/dhcp/dhcpd.conf
网段:代表的一群ip地址的集合
网络位不变,主机位都用0表示
末行模式 :r /usr/share/doc/dhcp*/dhcpd.conf.example
[root@svr7 ~]# vim /etc/dhcp/dhcpd.conf
subnet 192.168.4.0 netmask 255.255.255.0 { #指定分配的网段
range 192.168.4.10 192.168.4.100; #指定的分配具体的ip地址范围
option domain-name-servers 8.8.8.8; #指定dns地址
option routers 192.168.4.254; #指定网关地址
}
3.重起dhcpd服务
systemctl restart dhcpd
##################################################################
网络装机的优势
• 规模化:同时装配多台主机
• 自动化:装系统、配置各种服务
• 远程实现:不需要光盘、U盘等物理安装介质
什么是PXE网络
• PXE,Pre-boot eXecution Environment
– 预启动执行环境,在操作系统之前运行
– 可用于远程安装
• 工作模式
– PXE client 集成在网卡的启动芯片中
– 当计算机引导时,从网卡芯片中把PXE client调入内存
执行,获取PXE server配置、显示菜单,根据用户选
择将远程引导程序下载到本机运行
• 需要哪些服务组件?
– DHCP服务,分配IP地址、定位引导程序
– TFTP服务,提供引导程序下载
– HTTP服务(或FTP/NFS),提供yum安装源
• 客户机应具备的条件
– 网卡芯片必须支持PXE协议
– 主板支持从网卡启动
#############################################################
搭建PXE网络装机服务器
一、配置dhcp服务pxe的设置
1.修改配置文件/etc/dhcp/dhcpd.conf
subnet 192.168.4.0 netmask 255.255.255.0 {
range 192.168.4.10 192.168.4.100;
option domain-name-servers 8.8.8.8;
option routers 192.168.4.254;
next-server 192.168.4.7; #指定下一个服务器地址
filename "pxelinux.0"; #指定到下一个服务器下载的文件名字
}
2.重起dhcpd服务
[root@svr7 ~]# systemctl restart dhcpd
##################################################################
pxelinux.0:网卡引导文件(安装说明书)二进制的文件,安装一个软件可以生成
二、搭建tftp服务
tftp:简单文件传输协议 端口:69
默认共享的路径:/var/lib/tftpboot
1.安装tftp-server
[root@svr7 ~]# yum -y install tftp-server
2.启动tftp服务
[root@svr7 ~]# systemctl restart tftp
[root@svr7 ~]# systemctl enable tftp
3.部署 pxelinux.0 引导文件
[root@svr7 ~]# yum provides */pxelinux.0 #查询什么软件包产生pxelinux.0
[root@svr7 ~]# yum -y install syslinux
[root@svr7 ~]# rpm -ql syslinux | grep pxelinux.0 #查询软件包安装清单
[root@svr7 ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@svr7 ~]# ls /var/lib/tftpboot/
pxelinux.0 ------》 /var/lib/tftpboot/pxelinux.cfg/default
default------》vesamenu.c32、splash.png、vmlinuz、initrd.img
4.部署默认菜单文件
# mkdir /var/lib/tftpboot/pxelinux.cfg
# cp /dvd/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
# ls -l /var/lib/tftpboot/pxelinux.cfg/default
# chmod u+w /var/lib/tftpboot/pxelinux.cfg/default
# ls -l /var/lib/tftpboot/pxelinux.cfg/default
5.部署 图形的模块 与 背景图片
vesamenu.c32 :图形的模块
splash.png :背景图片
# cp /dvd/isolinux/vesamenu.c32 /dvd/isolinux/splash.png /var/lib/tftpboot/
# ls /var/lib/tftpboot/
6.部署启动内核与驱动程序
vmlinuz :启动内核
initrd.img :驱动程序
# cp /dvd/isolinux/vmlinuz /dvd/isolinux/initrd.img /var/lib/tftpboot/
# ls /var/lib/tftpboot/
initrd.img pxelinux.cfg vesamenu.c32
pxelinux.0 splash.png vmlinuz
7.修改菜单文件
[root@svr7 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
.........
default vesamenu.c32 #默认加载图形的模块
timeout 600 #读秒时间为60秒
........
menu background splash.png #指定背景图片
menu title NSD1801 PXE Server ! #标题信息
......
label linux
menu label Install RHEL7 #显示菜单的内容
kernel vmlinuz #加载内核
append initrd=initrd.img #加载驱动
##########################################################
初步测试:
新建一台全新的虚拟机,选择PXE网络引导安装,注意网络类型要选择 private1
如何更改虚拟机的菜单背景。
真机上传目录到虚拟机
[root@room9pc01 ~]# scp -r /root/桌面/tupian.zip root@192.168.4.7:/root/
root@192.168.4.7's password:
[root@sur7 ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg tupian.zip 模板 图片 下载 桌面
bin ks.cfg 公共 视频 文档 音乐
[root@sur7 ~]# unzip tupian.zip
[root@sur7 ~]# ls tupian
1.jpg 2.jpg 3.jpg 4.jpg 5.jpg 6.jpg 7.jpg
[root@sur7 ~]# rm -rf /var/lib/tftpboot/splash.png
[root@sur7 ~]# cp tupian/1.jpg /var/lib/tftpboot
[root@sur7 ~]# ls /var/lib/tftpboot
[root@sur7 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
menu background 1.jpg
重新安装一个虚拟机(PXE)验证,如果想再更换菜单背景的话,需要再安装一个虚拟机进行验证,原来的就没有用了。
################################################################
三、搭建httpd服务
1.安装httpd软件包
[root@svr7 ~]# yum -y install httpd
2.重起httpd服务,设置开机自启动
[root@svr7 ~]# systemctl restart httpd
[root@svr7 ~]# systemctl enable httpd
3.利用httpd服务共享光盘所有内容
[root@svr7 ~]# mkdir /var/www/html/rhel7
[root@svr7 ~]# mount /dev/cdrom /var/www/html/rhel7
mount: /dev/sr0 写保护,将以只读方式挂载
[root@svr7 ~]# ls /var/www/html/rhel7
[root@svr7 ~]# firefox http://192.168.4.7/rhel7
##############################################################
四、配置无人值守安装,应答文件的生成
1.安装图形的工具,system-config-kickstart
[root@svr7 ~]# yum -y install system-config-kickstart
2.运行图形的工具
[root@svr7 ~]# system-config-kickstart
第一步 查看 软件包选择 是否可用
第二步 yum仓库的标识 必须为 [development]
[root@svr7 ~]# vim /etc/yum.repos.d/dvd.repo
[root@svr7 ~]# system-config-kickstart #再一次运行,查看软件包的选择
进入Kickstart配置程序中操作
(a)基本配置 :默认语言设置为中文简体(不是固定的)
时区为Asia/Shanghai (不是固定的)
Root密码和确认密码为123456 (必须设,密码可以随意设)
勾上安装后重启和给root密码加密
(b)安装方法 :执行全新安装
HTTP 服务器:192.168.4.7(A虚拟机的ip)
目录:rhel7
(c)安装类型:点击安装新引导装载程序
(d)分区信息:主引导记录中点击清除主引导记录
分区中点击删除所有现存分区
磁盘标签点击初始化磁盘标签
然后在里面点击添加,挂载点为/ ,大小选项为使用磁盘上全部未用空间,格式化分区,
(e)网络配置: 添加网络设备 ,输入eth0
(f)防火墙配置:SELinux和安全级别都使用禁用
(g)软件包选择:勾选基本
(h)勾选使用解释程序:/bin/bash
在脚本中输入useradd lisi
echo 123456 | passwd --stdin lisi
然后保存在root里面即可。
[root@svr7 ~]# ls /root/ks.cfg
/root/ks.cfg
[root@svr7 ~]# vim /root/ks.cfg
###############################################################
五、利用httpd服务共享ks.cfg应答文件
[root@svr7 ~]# cp /root/ks.cfg /var/www/html/
[root@svr7 ~]# ls /var/www/html/
###############################################################
六、修改默认菜单文件,指定ks.cfg应答文件
[root@svr7 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
label linux
menu label Install RHEL7
kernel vmlinuz
append initrd=initrd.img ks=http://192.168.4.7/ks.cfg
重新安装一个新的虚拟机进行测试
生成新虚拟机 : 勾上网络引导(PXE) -前进-前进-前进-选择网络一定要用虚拟网络 'private1'
##############################################################
七、总结
1.dhcp------》ip地址、next-server、filename
2.tftp------》pxelinux.0、pxelinux.cfg/default、vesamenu.c32、splash.png、vmlinuz、initrd.img、ks=http://192.168.4.7/ks.cfg
3.httpd------》http://192.168.4.7/rhel7
DAY5
rsync同步服务
• 命令用法
– rsync [选项...] 源目录 目标目录
• 同步与复制的差异
– 复制:完全拷贝源到目标
– 同步:增量拷贝,只传输变化过的数据
• rsync操作选项
– -n:测试同步过程,不做实际修改
– --delete:删除目标文件夹内多余的文档
– -a:归档模式,相当于-rlptgoD
– -v:显示详细操作信息
– -z:传输过程中启用压缩/解压
• 本地同步
– rsync [选项...] 本地目录1 本地目录2 //同步整个文件夹
– rsync [选项...] 本地目录1/ 本地目录2 //只同步目录下的数据
虚拟机svr7:
[root@svr7 ~]# mkdir /dir1
[root@svr7 ~]# mkdir /nsd
[root@svr7 ~]# ls /dir1/
[root@svr7 ~]# ls /nsd/
[root@svr7 ~]# cp /etc/passwd /dir1/
[root@svr7 ~]# cp /etc/fstab /dir1/
[root@svr7 ~]# ls /dir1/
[root@svr7 ~]# ls /nsd/
[root@svr7 ~]# rsync -avz /dir1/ /nsd/ #同步第一次
[root@svr7 ~]# ls /nsd/
[root@svr7 ~]# touch /dir1/a.txt
[root@svr7 ~]# rsync -avz /dir1/ /nsd/ #同步第二次
[root@svr7 ~]# ls /nsd/
[root@svr7 ~]# echo haha > /dir1/passwd
[root@svr7 ~]# rsync -avz /dir1/ /nsd/ #同步第三次
[root@svr7 ~]# cat /nsd/passwd
[root@svr7 ~]# ls /dir1/
[root@svr7 ~]# ls /nsd/
[root@svr7 ~]# touch /nsd/haxi.txt
[root@svr7 ~]# rsync -avz --delete /dir1/ /nsd/
[root@svr7 ~]# ls /dir1/
[root@svr7 ~]# ls /nsd/
#############################################################
不同主机之间的同步
rsync+SSH同步
• 与远程的 SSH目录保持同步
– 下行: rsync [...] user@host:远程目录 本地目录
– 上行: rsync [...] 本地目录 user@host:远程目录
虚拟机svr7的/dir1目录 与 虚拟机pc207的/opt目录
虚拟机svr7:
[root@svr7 ~]# ls /dir1/
a.txt fstab passwd
[root@svr7 ~]# rsync -avz --delete /dir1/ root@192.168.4.207:/opt/
虚拟机pc207:
[root@pc207 ~]# ls /opt
#################################################################
实时同步
虚拟机svr7的/dir1目录 与 虚拟机pc207的/opt目录
一、SSH无密码的验证,部署公私钥
虚拟机svr7
1.生成公私钥
[root@svr7 ~]# ssh-keygen #一路回车
[root@svr7 ~]# ls /root/.ssh/
2.传递公钥
[root@svr7 ~]# ssh-copy-id root@192.168.4.207
3.验证
[root@svr7 ~]# ssh root@192.168.4.207
Last login: Wed Mar 7 10:07:17 2018 from 192.168.4.7
[root@pc207 ~]# exit
登出
Connection to 192.168.4.207 closed.
[root@svr7 ~]#
二、安装inotify-tools,监控目录内容的变化
1.真机找到inotify-tools-3.13.tar.gz
2.真机操作:上传 inotify-tools-3.13.tar.gz 虚拟机svr7
# scp /root/桌面/inotify-tools-3.13.tar.gz root@192.168.4.7:/root/
3.虚拟机svr7安装 inotify-tools-3.13.tar.gz 工具
源码编译安装
• 主要优点
– 获得软件的最新版,及时修复bug
– 软件功能可按需选择/定制,有更多软件可供选择
– 源码包适用各种平台
rpm包 yum rpm -ivh
gcc和make
源码包 ------------------> 可以执行文件--------->运行安装
步骤1:安装gcc和make开发工具
[root@svr7 /]# yum -y install gcc make
步骤2:tar解包,释放源代码至指定目录
# tar -xf /root/inotify-tools-3.13.tar.gz -C(大写) /opt/
步骤3: ./configure 配置,指定安装目录/功能模块等选项
作用1: 检测系统是否安装了gcc
作用2: 指定安装目录/功能模块等选项
# cd /opt/inotify-tools-3.13/
# ./configure
步骤4:make 编译,生成可执行的二进制程序文件
# cd /opt/inotify-tools-3.13/
# make
步骤5:make install 安装,将编译好的文件复制到安装目录
# cd /opt/inotify-tools-3.13/
# make install
[root@svr7 /]# inotifywait
No files specified to watch!
inotifywait [选项] 目标文件夹
• 常用命令选项
– -m,持续监控(捕获一个事件后不退出)
– -r,递归监控、包括子目录及文件
– -q,减少屏幕输出信息
– -e,指定监视的 modify、move、create、delete、attrib 等事件类别
三、目录内容变化,立即同步
书写Shell脚本
while 循环
while [条件]
do
循环重复执行的语句
done
[root@svr7 /]# vim /root/rsync.sh
#!/bin/bash
while inotifywait -rqq /dir1/
do
rsync -az --delete /dir1/ root@192.168.4.207:/opt
done
##########################################################
DAY6 (cobbler)
一、解压cobbler.zip包,cobbler主程序、工具包等
[root@room9pc01 /]# ls /root/桌面/Cobbler/
cobbler_boot.tar.gz cobbler_web.png cobbler.zip
[root@room9pc01 /]# unzip /root/桌面/Cobbler/cobbler.zip -d /
[root@room9pc01 /]# ls /cobbler
二、为真机搭建永久的本地的Yum仓库
1.挂载/iso/CentOS-7-x86_64-DVD-1708.iso
[root@room9pc01 ~]# mount /iso/CentOS-7-x86_64-DVD-1708.iso /dvd/
[root@room9pc01 ~]# ls /dvd/
2.书写Yum客户端文件
[root@room9pc01 ~]# vim /etc/yum.repos.d/nsd.repo
[development]
name=dvd
baseurl=file:///dvd
enabled=1
gpgcheck=0
[root@room9pc01 ~]# yum repolist
3.为真机永久挂载/iso/CentOS-7-x86_64-DVD-1708.iso
默认的iso文件系统 : iso9660
默认的/dev/cdrom文件系统 : iso9660
/etc/rc.d/rc.local : 每次开机运行配置文件
[root@room9pc01 /]# ls -l /etc/rc.d/rc.local
[root@room9pc01 /]# vim /etc/rc.d/rc.local
mount /var/lib/libvirt/images/iso/CentOS-7-x86_64-DVD-1708.iso /dvd
[root@room9pc01 /]# reboot #重起系统验证
[root@room9pc01 /]# yum repolist
##################################################################
三、安装cobbler主程序、工具包等
[root@room9pc01 /]# yum -y install /cobbler/*.rpm
#################################################################
cobbler网络装机部署
1.安装软件 cobbler cobbler-web dhcp tftp-server pykickstart httpd
cobbler #cobbler程序包
cobbler-web #cobbler的web服务包
pykickstart #cobbler检查kickstart语法错误
httpd #Apache web服务
dhcp #Dhcp服务
tftp-server #tftp服务
2.配置cobbler
[root@svr7 /]# vim /etc/cobbler/settings
修改为 next_server: 192.168.4.254 #设置下一个服务器还为本机
将 server: 127.0.0.1 修改为 server: 192.168.4.254 #设置本机为cobbler服务器
将 manage_dhcp: 0 修改为 manage_dhcp: 1 #设置cobbler管理dhcp服务
将 pxe_just_once: 0 修改为 pxe_just_once: 1 #防止客户端重复安装操作系统
3.配置cobbler的dhcp
[root@svr7 /]# vim /etc/cobbler/dhcp.template
:%s /192.168.1/192.168.4/g 在末行模式下输入
[root@svr7 /]# vim /etc/sysconfig/dhcpd
DHCPDARGS=private1 表示dhcp将只在private1 网络接口上提供DHCP服务
4.绝对路径解压cobbler_boot.tar.gz #众多的引导文件
[root@room9pc01 /]# tar -tf /root/桌面/Cobbler/cobbler_boot.tar.gz
[root@room9pc01 /]# tar -xPf /root/桌面/Cobbler/cobbler_boot.tar.gz
[root@room9pc01 /]# ls /var/lib/cobbler/loaders/
5.启动相关服务
[root@svr7 /]# systemctl restart cobblerd
[root@svr7 /]# systemctl enable cobblerd
[root@svr7 /]# systemctl restart httpd
[root@svr7 /]# systemctl enable httpd
[root@svr7 /]# systemctl restart tftp
[root@svr7 /]# systemctl enable tftp
[root@svr7 /]# systemctl restart rsyncd
[root@svr7 /]# systemctl enable rsyncd
6.同步刷新cobbler配置
[root@svr7 /]# cobbler sync
[root@svr7 /]# firefox https://192.168.4.254/cobbler_web
##########################################################################################################
cobbler import --path=挂载点 --name=导入系统命名(随意起)
导入安装镜像数据
[root@room9pc01 ~]# mount /iso/rhel-server-7.4-x86_64-dvd.iso /dvd
mount: /dev/loop2 写保护,将以只读方式挂载
[root@room9pc01 /]# cobbler list #查看有哪些系统
[root@room9pc01 /]# cobbler import --path=/dvd --name=rhel7
[root@room9pc01 /]# mkdir /rhel6
[root@room9pc01 /]# mount /iso/rhel-server-6.7-x86_64-dvd.iso /rhel6/
[root@room9pc01 /]# cobbler import --path=/rhel6 --name=RedHat6
cobbler导入的镜像放在:/var/www/cobbler/ks_mirror
[root@room9pc01 /]# cobbler profile report #查看cobbler导入信息
[root@room9pc01 /]# killall -9 dnsmasq #虚拟化服务会干扰DHCP服务
############################################################################################################
默认kickstart文件存放位置:/var/lib/cobbler/kickstarts/
[root@cobbler ~]# cobbler list
修改kickstart文件:
[root@cobbler ~]# cobbler profile edit --name=CentOS7.4-A --kickstart=/var/lib/cobbler/kickstarts/CentOS-7.3-x86_64.cfg
[root@cobbler ~]# cobbler profile report
[root@cobbler ~]# cobbler sync
############################################################################################################
版权声明:本文标题:Linux 基础(3) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1729855949a1215566.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论