问题
服务问题
输入 cobbler sync 后报错, 请查看上面的stderr 一栏,看下是哪个服务有问题
- 服务的配置文件写错了或者服务无法正常启动
- 使用systemctl status
服务名
查看问题所在点 - 服务名一般为 httpd,dhcp,tftp 等
- 服务没安装,
Failed to issue method call: Unit named.service failed to load
- 安装named 服务,
yum install -y bind-chroot
- 运行 cobbler sync 报错,显示
running python trigger cobbler.modules.sync_post_restart_services
running: dhcpd -t -q
Exception occured: <type 'exceptions.OSError'>
Exception value: [Errno 12] Cannot allocate memory
Exception Info:
File "/usr/lib/python2.7/site-packages/cobbler/utils.py", line 1709, in subprocess_sp
sp = subprocess.Popen(cmd, shell=shell, stdin=stdin, stdout=subprocess.PIPE, stderr=subprocess.PIPE, close_fds=True)
File "/usr/lib64/python2.7/subprocess.py", line 711, in __init__
errread, errwrite)
File "/usr/lib64/python2.7/subprocess.py", line 1205, in _execute_child
self.pid = os.fork()
Exception occured: <class 'cobbler.cexceptions.CX'>
Exception value: 'OS Error, command not found? While running: dhcpd -t -q'
...
...
!!! TASK FAILED !!!
- 看到上面写的
Cannot allocate memory
, 然后看了下内存用了已经 87% 了,把chrome 其他页面关了,重启就好了 - 然后重启后运行第一次是正常的, 再运行一次
cobbler sync
还是报这个错误,烦死了 - 我发现了,原来在虚拟机安装的时候运行
cobbler sync
就有可能会报这个错,猜测,该命令需要动用很多资源,然后同时又处理安装服务,就报错了
创建profile问题
exception on server: 'Invalid kickstart template file location /root/lisi.cfg, it is not inside /var/lib/cobbler/kickstarts/'
- 只能将 kickstarts 文件放入
/var/lib/cobbler/kickstarts/
下面 - 注意是 kickstarts
新建虚拟机问题
查看所有 pxe 问题 常见pxe 问题
- 在新创建的虚拟上出现
PXE-E53: No boot filename received
- 官方说明: 没有找到启动文件
- 可能情况一: 该新建主机连上了vmware 的 DHCP 服务器,请在虚拟网络编辑器中关闭dhcp服务
- 可能情况二: 你的dhcp 服务有问题,请仔细核对
/etc/cobbler/dhcp.template
该文件
- 在新创建的虚拟机上出现
PXE-E51: No DHCP or proxyDHCP offers were received.
- 官方说明: 没有找到相应的dhcp 服务
- 在vmware 虚拟首选项中查看默认dhcp服务的网段与cobbler 服务器网段是否一致
- 查看dhcp 是否开启,
/etc/cobbler/settings
文件 manage dhcp 选项是否为 1 - 如果cobbler服务器是桥接模式,新建的虚拟机是NAT模式,是不可以搜索到dhcp服务的
- 查看dhcp 配置文件
/etc/cobbler/dhcp.template
的配置是否正确, 以下为部分选项
allow bootp;
ignore client-updates;
set vendorclass = option vendor-class-identifier;
option pxe-system-type code 93 = unsigned integer 16;
subnet 192.168.146.0 netmask 255.255.255.0 {
option routers 192.168.146.2;
option domain-name-servers 192.168.146.133;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.146.200 192.168.146.210;
default-lease-time 21600;
max-lease-time 43200;
next-server $next_server;
...
- PXE_E32: TFTP timeout
- Selinux 问题,在
/etc/selinux/config
中改为 disabled,修改完后需要重启,查看selinuxgetenforce
- 防火墙问题,设置
-
firewall-cmd --zone=public --add-service=tftp --permanent
设置防火墙策略 -
firewall-cmd --reload
重新加载防火墙设置 -
firewall-cmd --zone=public --query-service=tftp
查看防火墙是否设置成功
- 服务问题,
systemctl status tftp
查看tftp服务是否开启
镜像选择后
安装pykickstart ,检查 kickstart 语法
yum install -y pykickstart
ksvalidator /root/ks.cfg
- 如果没有问题,将无信息返回
- no space left on device
- 内存空间分配不够,需要有 2G 内存以上
- 首先在vmware workstation 中更改虚拟的内存,为2G
- 在kickstart 文件中加入该选项
part swap --size=2048