• cobbler Centos7


    cobbler

    一. cobbler

    1. cobbler 批量装机

    1.1 简介
    • Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机(真机,虚拟机,云主机),还可以管理DHCPDNS.

    • Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口(开发程序),可以方便二次开发使用。

    • Cobbler是较早前的kickstart的升级版,优点是比较容易配置,还自带web界面比较易于管理。

    • Cobbler内置了一个轻量级配置管理系统,但它也支持和其它配置管理系统集成,如Puppet,暂时不支持SaltStack。

    1.2 Cobbler官网
    1.3 cobbler集成的服务
    • PXE服务支持,pxe从网络,局域网启动,从网络启动需要ip,网关
    • DHCP服务管理,自动分配IP
    • DNS服务管理(可选bind,dnsmasq)
    • 电源管理,自动开机,远程开机,重启
    • Kickstart服务支持,在安装系统,要设置系统,把需要设置的信息写入文件,通过文件批量应用
    • YUM仓库管理,通过Apache部署网络源
    • TFTP(PXE启动时需要)
    • Apache(提供kickstart的安装源,并提供定制化的kickstart配置)

    二. 部署cobbler

    1. 使用centos7安装

    1.1 先配置yum源,安装cobbler以及相关的软件
    [root@node5 ~]# yum -y install httpd dhcp tftp python-ctypes cobbler xinetd cobbler-web pykickstart
    已加载插件:fastestmirror
    Loading mirror speeds from cached hostfile
    软件包 httpd-2.4.6-97.el7.centos.5.x86_64 已安装并且是最新版本
    软件包 12:dhcp-4.2.5-83.el7.centos.1.x86_64 已安装并且是最新版本
    软件包 tftp-5.2-22.el7.x86_64 已安装并且是最新版本
    软件包 python-2.7.5-92.el7_9.x86_64 已安装并且是最新版本
    软件包 cobbler-2.8.5-6.el7.x86_64 已安装并且是最新版本
    软件包 2:xinetd-2.3.15-14.el7.x86_64 已安装并且是最新版本
    软件包 cobbler-web-2.8.5-6.el7.noarch 已安装并且是最新版本
    软件包 pykickstart-1.99.66.22-1.el7.noarch 已安装并且是最新版本
    无须任何处理
    [root@node5 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    1.2 启动服务并设置开机自启
    [root@node5 ~]# systemctl enable --now httpd
    Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
    [root@node5 ~]# systemctl enable --now cobblerd
    Created symlink from /etc/systemd/system/multi-user.target.wants/cobblerd.service to /usr/lib/systemd/system/cobblerd.service.
    [root@node5 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    1.3 修改server的ip地址为本机ip,设置tftp的ip地址为本机ip
    [root@node5 ~]# cd /etc/cobbler/
    [root@node5 cobbler]# ls
    auth.conf               ldap            secondary.template
    cheetah_macros          modules.conf    settings
    cobbler_bash            mongodb.conf    tftpd.template
    completions             named.template  users.conf
    dhcp.template           power           users.digest
    dnsmasq.template        pxe             version
    genders.template        reporting       zone.template
    import_rsync_whitelist  rsync.exclude   zone_templates
    iso                     rsync.template
    [root@node5 cobbler]# vim settings
    server: 192.168.232.130
    next_server: 192.168.232.130
    
    
    [root@node5 ~]# sed -i 's/^server: 127.0.0.1/server: 192.168.232130/' /etc/cobbler/settings
    [root@node5 ~]# sed -i 's/^next_server: 127.0.0.1/next_server: 192.168.232.130/' /etc/cobbler/settings
    [root@node5 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    1.4 开启tftp
    [root@node5 xinetd.d]# sed -i '/disable/s/yes/no/g' /etc/xinetd.d/tftp
    [root@node5 xinetd.d]# cat tftp 
    # default: off
    # description: The tftp server serves files using the trivial file transfer \
    #       protocol.  The tftp protocol is often used to boot diskless \
    #       workstations, download configuration files to network-aware printers, \
    #       and to start the installation process for some operating systems.
    service tftp
    {
            socket_type             = dgram
            protocol                = udp
            wait                    = yes
            user                    = root
            server                  = /usr/sbin/in.tftpd
            server_args             = -s /var/lib/tftpboot
            disable                 = no
            per_source              = 11
            cps                     = 100 2
            flags                   = IPv4
    }
    [root@node5 xinetd.d]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    1.5 生成加密文件
    [root@node5 ~]# openssl passwd -1
    Password: run123
    Verifying - Password: 
    $1$ZV8suK39$NrSthpJ7dFL32LdgyCSOb1
    [root@node5 ~]# 
    [root@node5 cobbler]# pwd
    /etc/cobbler
    [root@node5 cobbler]# ls
    auth.conf               ldap            secondary.template
    cheetah_macros          modules.conf    settings
    cobbler_bash            mongodb.conf    tftpd.template
    completions             named.template  users.conf
    dhcp.template           power           users.digest
    dnsmasq.template        pxe             version
    genders.template        reporting       zone.template
    import_rsync_whitelist  rsync.exclude   zone_templates
    iso                     rsync.template
    [root@node5 cobbler]# vim settings 
    default_password_crypted: "$1$ZV8suK39$NrSthpJ7dFL32LdgyCSOb1"
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    1.6 下载缺失文件
    [root@node5 ~]# yum -y install syslinux
    已加载插件:fastestmirror
    Loading mirror speeds from cached hostfile
    软件包 syslinux-4.05-15.el7.x86_64 已安装并且是最新版本
    无须任何处理
    [root@node5 ~]# cp -r /usr/share/syslinux/pxelinux.0 /var/lib/cobbler/loaders/
    cp:是否覆盖"/var/lib/cobbler/loaders/pxelinux.0"? y
    [root@node5 ~]# cp -r /usr/share/syslinux/menu.c32 /var/lib/cobbler/loaders/
    cp:是否覆盖"/var/lib/cobbler/loaders/menu.c32"? y
    [root@node5 ~]# systemctl restart cobblerd
    [root@node5 ~]# cobbler get-loaders
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    1.7 解决问题:cobbler check
    添加rsync到自启动并启动rsync
    [root@node5 ~]# systemctl enable --now rsyncd
    Created symlink from /etc/systemd/system/multi-user.target.wants/rsyncd.service to /usr/lib/systemd/system/rsyncd.service.
    [root@node5 ~]# 
    
    与debain相关,如果不使用cobbler推送debain系统可以忽略不记
    [root@node5 ~]# yum -y install debmirror
    [root@node5 ~]# sed -i  's|@dists=.*|#@dists=|'  /etc/debmirror.conf
    [root@node5 ~]# sed -i  's|@arches=.*|#@arches=|'  /etc/debmirror.conf
    [root@node5 ~]# 
    
    未找到防护工具,并且必须使用防护工具才能使用(可选)电源管理功能。 安装cman或fence-agents以使用它们
    [root@node5 ~]# yum -y install fence-agents
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    2. 配置Cobbler-DHCP

    2.1 修改cobbler配置
    [root@node5 ~]# cd /etc/cobbler/
    [root@node5 cobbler]# vim settings
    manage_dhcp: 1 
    #修改settings中参数,由cobbler控制dhcp
    
    • 1
    • 2
    • 3
    • 4
    2.2 修改dhcp.templates配置文件
    [root@node5 ~]# cd /etc/cobbler/
    [root@node5 cobbler]# vim settings
    [root@node5 cobbler]# vim dhcp.template
    subnet 192.168.232.0 netmask 255.255.255.0 {
         option routers             192.168.232.2;        #修改成本机网关
         option domain-name-servers 114.114.114.114;         #修改成本机DNS
         option subnet-mask         255.255.255.0;       #修改成本机子网掩码
         range dynamic-bootp        192.168.232.100 192.168.232.254;      #可分配的IP范围
         default-lease-time         21600;
         max-lease-time             43200;
         next-server                $next_server;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    2.3 重新启动Cobbler服务
    [root@node5 ~]# systemctl restart cobblerd.service
    
    • 1
    2.4 运行Cobbler sync命令使配置生效,让DHCP、HTTP被Cobbler接管
    [root@node5 ~]# cobbler sync
    task started: 2022-08-11_183120_sync
    task started (id=Sync, time=Thu Aug 11 18:31:20 2022)
    running pre-sync triggers
    cleaning trees
    removing: /var/lib/tftpboot/grub/images
    copying bootloaders
    trying hardlink /var/lib/cobbler/loaders/pxelinux.0 -> /var/lib/tftpboot/pxelinux.0
    trying hardlink /var/lib/cobbler/loaders/menu.c32 -> /var/lib/tftpboot/menu.c32
    trying hardlink /usr/share/syslinux/memdisk -> /var/lib/tftpboot/memdisk
    copying distros to tftpboot
    copying images
    generating PXE configuration files
    generating PXE menu structure
    rendering DHCP files
    generating /etc/dhcp/dhcpd.conf
    rendering TFTPD files
    generating /etc/xinetd.d/tftp
    cleaning link caches
    running post-sync triggers
    running python triggers from /var/lib/cobbler/triggers/sync/post/*
    running python trigger cobbler.modules.sync_post_restart_services
    running: dhcpd -t -q
    received on stdout: 
    received on stderr: 
    running: service dhcpd restart
    received on stdout: 
    received on stderr: Redirecting to /bin/systemctl restart dhcpd.service
    
    running shell triggers from /var/lib/cobbler/triggers/sync/post/*
    running python triggers from /var/lib/cobbler/triggers/change/*
    running python trigger cobbler.modules.manage_genders
    running python trigger cobbler.modules.scm_track
    running shell triggers from /var/lib/cobbler/triggers/change/*
    *** TASK COMPLETE ***
    [root@node5 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36

    3 导入CentOs-7的镜像

    3.1 创建目录存放镜像
    [root@node5 ~]# mkdir /mnt/CentOS7.1
    
    • 1
    3.2 挂载光盘镜像
    [root@node5 ~]# mount /dev/cdrom /mnt/CentOS7.1
    mount: /dev/sr0 写保护,将以只读方式挂载
    [root@node5 ~]# 
    
    • 1
    • 2
    • 3
    3.3 使用cobbler import命令导入镜像
    [root@node5 ~]# cobbler import --path=/mnt/CentOS7.1 --name=Centos-7.1 --arch=x86_64
    task started: 2022-08-11_183455_import
    task started (id=Media import, time=Thu Aug 11 18:34:55 2022)
    Found a candidate signature: breed=suse, version=opensuse15.0
    Found a candidate signature: breed=suse, version=opensuse15.1
    Found a candidate signature: breed=redhat, version=rhel6
    Found a candidate signature: breed=redhat, version=rhel7
    Found a matching signature: breed=redhat, version=rhel7
    Adding distros from path /var/www/cobbler/ks_mirror/Centos-7.1-x86_64:
    creating new distro: Centos-7.1-x86_64
    trying symlink: /var/www/cobbler/ks_mirror/Centos-7.1-x86_64 -> /var/www/cobbler/links/Centos-7.1-x86_64
    creating new profile: Centos-7.1-x86_64
    associating repos
    checking for rsync repo(s)
    checking for rhn repo(s)
    checking for yum repo(s)
    starting descent into /var/www/cobbler/ks_mirror/Centos-7.1-x86_64 for Centos-7.1-x86_64
    processing repo at : /var/www/cobbler/ks_mirror/Centos-7.1-x86_64
    need to process repo/comps: /var/www/cobbler/ks_mirror/Centos-7.1-x86_64
    looking for /var/www/cobbler/ks_mirror/Centos-7.1-x86_64/repodata/*comps*.xml
    Keeping repodata as-is :/var/www/cobbler/ks_mirror/Centos-7.1-x86_64/repodata
    *** TASK COMPLETE ***
    [root@node5 ~]# 
    
    
    
    
    #命令格式说明:
    --path:镜像路径;
    --name:安装引导名;
    --arch:32位或64位。
    
    
    #参数说明:
    --name为安装源定义一个名字;
    --arch指定安装源是32位还是64位、ia6,目前支持的选项有:x86| x86_64|ia64
    
    
    #两点注意事项如下。
    a.该安装源的唯一标示就是这两个参数。
    本例导人成功后,安装源的唯一标示就是:CentOS-7.1-x86_64,如果重复,系统会提示导人
    失败,其他命令可通过cobbler --help来进行查看。如果需要更多的参数定制,也可以查看官
    方文档:man cobbler,然后查找import的配置,可以使用另外一个命令:cobbler distro。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    3.4 查看镜像列表
    [root@node5 ~]# cobbler list
    distros:
       Centos-7.1-x86_64
    
    profiles:
       Centos-7.1-x86_64
    
    systems:
    
    repos:
    
    images:
    
    mgmtclasses:
    
    packages:
    
    files:
    [root@node5 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    4. Ks文件配置

    4.1 修改ks文件
    [root@node5 ~]# cd /var/lib/cobbler/kickstarts/
    [root@node5 kickstarts]# vim CentOS-7.1-x86_64.ks
    [root@node5 kickstarts]# cat CentOS-7.1-x86_64.ks 
    auth --enableshadow --passalgo=sha512
    bootloader --location=mbr
    clearpart --all --initlabel
    part /boot --asprimary --fstype="ext4" --size=500
    part swap --fstype="swap" --size=4096
    part / --fstype="ext4" --grow --size=15000
    text
    firewall --disabled
    firstboot --disable
    keyboard us
    lang en_US
    url --url=http://192.168.232.130/cobbler/ks_mirror/Centos-7.1-x86_64
    $yum_repo_stanza
    reboot
    
    rootpw --iscrypted $6$.ZhcRTHfaqEqNu3A$aHNrsaOGl.YCOH4/77g/2AVE5MVKcNj0myTdj/./Yo75cEUa91tc9atnJdfDSd2omO6sPt0mBhPdB.PymHcBL.
    selinux --disabled
    skipx
    timezone Asia/Shanghai --isUtc --nontp
    install
    zerombr
    
    %packages
    @^minimal
    @core
    kexec-tools
    
    %end
    
    %addon com_redhat_kdump --enable --reserve-mb='auto'
    
    %end
    
    %anaconda
    pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
    pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
    pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
    %end
    [root@node5 kickstarts]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    4.2 检查ks文件语法是否有误
    [root@node5 kickstarts]# cobbler validateks
    task started: 2022-08-11_230545_validateks
    task started (id=Kickstart Validation, time=Thu Aug 11 23:05:45 2022)
    ----------------------------
    osversion: rhel7
    checking url: http://192.168.232.130/cblr/svc/op/ks/profile/Centos-7.1-x86_64
    running: /usr/bin/ksvalidator -v "rhel7" "http://192.168.232.130/cblr/svc/op/ks/profile/Centos-7.1-x86_64"
    received on stdout: 
    received on stderr: 
    Potential templating errors:
    Unknown variable found at line 16, column 39: '$aHNrsaOGl.YCOH4'
    *** all kickstarts seem to be ok ***
    *** TASK COMPLETE ***
    [root@node5 kickstarts]#     
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    4.3 修改指定的Kickstart文件
    查看当前cobbler有哪些配置文件
    [root@node5 kickstarts]# cobbler profile list
       Centos-7.1-x86_64
    
    
    修改profile,将我们新建的ks文件设为默认的kickstarts安装文件
    [root@node5 kickstarts]# cobbler profile edit --name=Centos-7.1-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS-7.1-x86_64.ks
    
    配置网卡名称为传统网卡名称eth0
    [root@node5 kickstarts]# cobbler profile edit --name Centos-7.1-x86_64 --kopts='net.ifnames=0 biosdevname=0'
    [root@node5 kickstarts]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    4.4 检查当前系统cobbler配置文件信息
    [root@node5 kickstarts]# cobbler profile report
    Name                           : Centos-7.1-x86_64
    TFTP Boot Files                : {}
    Comment                        : 
    DHCP Tag                       : default
    Distribution                   : Centos-7.1-x86_64  //仓库名字
    Enable gPXE?                   : 0
    Enable PXE Menu?               : 1
    Fetchable Files                : {}
    Kernel Options                 : {'biosdevname': '0', 'net.ifnames': '0'}  //网卡设为传统命名方式
    Kernel Options (Post Install)  : {}
    Kickstart                      : /var/lib/cobbler/kickstarts/CentOS-7.1-x86_64.ks   /使用的kickstarts配置文件的路径,必须为我们新建的ks文件的路径
    Kickstart Metadata             : {}
    Management Classes             : []
    Management Parameters          : <<inherit>>
    Name Servers                   : []
    Name Servers Search Path       : []
    Owners                         : ['admin']
    Parent Profile                 : 
    Internal proxy                 : 
    Red Hat Management Key         : <<inherit>>
    Red Hat Management Server      : <<inherit>>
    Repos                          : []
    Server Override                : <<inherit>>
    Template Files                 : {}
    Virt Auto Boot                 : 1
    Virt Bridge                    : xenbr0
    Virt CPUs                      : 1
    Virt Disk Driver Type          : raw
    Virt File Size(GB)             : 5
    Virt Path                      : 
    Virt RAM (MB)                  : 512
    Virt Type                      : kvm
    
    [root@node5 kickstarts]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    4.5 同步Cobbler
    [root@node5 ~]# cobbler sync
    task started: 2022-08-11_232033_sync
    task started (id=Sync, time=Thu Aug 11 23:20:33 2022)
    running pre-sync triggers
    cleaning trees
    removing: /var/www/cobbler/images/Centos-7.1-x86_64
    removing: /var/lib/tftpboot/pxelinux.cfg/default
    removing: /var/lib/tftpboot/grub/images
    removing: /var/lib/tftpboot/grub/efidefault
    removing: /var/lib/tftpboot/images/Centos-7.1-x86_64
    removing: /var/lib/tftpboot/s390x/profile_list
    copying bootloaders
    copying distros to tftpboot
    copying files for distro: Centos-7.1-x86_64
    trying hardlink /var/www/cobbler/ks_mirror/Centos-7.1-x86_64/images/pxeboot/vmlinuz -> /var/lib/tftpboot/images/Centos-7.1-x86_64/vmlinuz
    trying hardlink /var/www/cobbler/ks_mirror/Centos-7.1-x86_64/images/pxeboot/initrd.img -> /var/lib/tftpboot/images/Centos-7.1-x86_64/initrd.img
    copying images
    generating PXE configuration files
    generating PXE menu structure
    copying files for distro: Centos-7.1-x86_64
    trying hardlink /var/www/cobbler/ks_mirror/Centos-7.1-x86_64/images/pxeboot/vmlinuz -> /var/www/cobbler/images/Centos-7.1-x86_64/vmlinuz
    trying hardlink /var/www/cobbler/ks_mirror/Centos-7.1-x86_64/images/pxeboot/initrd.img -> /var/www/cobbler/images/Centos-7.1-x86_64/initrd.img
    Writing template files for Centos-7.1-x86_64
    rendering DHCP files
    generating /etc/dhcp/dhcpd.conf
    rendering TFTPD files
    generating /etc/xinetd.d/tftp
    processing boot_files for distro: Centos-7.1-x86_64
    cleaning link caches
    running post-sync triggers
    running python triggers from /var/lib/cobbler/triggers/sync/post/*
    running python trigger cobbler.modules.sync_post_restart_services
    running: dhcpd -t -q
    received on stdout: 
    received on stderr: 
    running: service dhcpd restart
    received on stdout: 
    received on stderr: Redirecting to /bin/systemctl restart dhcpd.service
    
    running shell triggers from /var/lib/cobbler/triggers/sync/post/*
    running python triggers from /var/lib/cobbler/triggers/change/*
    running python trigger cobbler.modules.manage_genders
    running python trigger cobbler.modules.scm_track
    running shell triggers from /var/lib/cobbler/triggers/change/*
    *** TASK COMPLETE ***
    [root@node5 ~]# 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46

    5. 验证

    5.1 将服务端所有服务重启
    [root@node5 ~]# systemctl restart xinetd.service
    [root@node5 ~]# systemctl restart cobblerd.service
    [root@node5 ~]# systemctl restart httpd.service
    
    • 1
    • 2
    • 3
    5.2 新建一台虚拟机
    • 选择第二行,回车

    • 在这里插入图片描述

    • 在这里插入图片描述

    • 重启之后按tab

    • 在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    SpringBoot项目:Cannot find declaration to go to
    由SoftRefLRUPolicyMSPerMB=0引起的频繁Full GC问题排查实战
    产品周报第35期|APP端学习门户上线、每日一练新增编程题型、专栏显示订阅来源……
    mmlab实现图像分类
    Functional equation (L-function)
    Java基于SSM框架的教室预约申请管理系统 毕业设计
    存储基础知识入门
    Elasticsearch 入门
    Python - PyQt6、QDesigner、pyuic5-tool 安装使用
    使用基于Web的交互式开发工具Zeppelin
  • 原文地址:https://blog.csdn.net/mushuangpanny/article/details/126295395