• arm64架构 统信UOS搭建PXE无盘启动Linux系统(麒麟桌面为例)


    arm64架构 统信UOS搭建PXE无盘启动Linux系统(麒麟桌面为例) 搞了好久搞得头疼哎

    1、准备服务器UOS服务器

    准备服务IP 这里是192.168.1.100

    1.1、安装程序

        yum install -y dhcp tftp tftp-server xinetd nfs-utils rpcbind 
    

    2、修改配置

    2.1、修改dhcpd.conf

     vi /etc/dhcp/dhcpd.conf
    
    
    #
    # DHCP Server Configuration file.
    #   see /usr/share/doc/dhcp-server/dhcpd.conf.example
    #   see dhcpd.conf(5) man page
    #
    #(DHCP-DNS互动)
    ddns-update-style none;
    #(忽略客户端更新)
    ignore client-updates;
    default-lease-time 600;
    max-lease-time 7200;
    log-facility local7;
    option space PXE;
    option client-system-arch code 93 = unsigned integer 16;
    allow booting;
    allow bootp;
    option root-path "192.168.1.100:/data/share/html/workstation/";
    subnet 192.168.1.0 netmask 255.255.255.0 {
        range 192.168.1.101 192.168.1.239;
        option broadcast-address 192.168.1.255;
        option routers 192.168.1.1;
        default-lease-time 600;
        max-lease-time 7200;
        next-server 192.168.1.100;
        if option client-system-arch = 00:07 or option client-system-arch = 00:09 {
            filename "efi/grub_kl.efi";
        } elsif option client-system-arch = 00:0B {
            filename  "efi/grubnetaa64.efi";
        }
    }
    

    2.2、修改tftp配置

    vi /etc/xinetd.d/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
    }
    

    2.3、修改nfs

    nfs配置

    3、启动、开启启动和重启

    #启动
    systemctl start dhcpd
    systemctl start xinetd
    systemctl start tftp
    systemctl start nfs-server
    systemctl start rpcbind
    #开机启动
    systemctl enable dhcpd
    systemctl enable xinetd
    systemctl enable tftp
    systemctl enable nfs-server
    systemctl enable rpcbind
    #重启
    systemctl restart dhcpd
    systemctl restart xinetd
    systemctl restart tftp
    systemctl restart nfs-server
    systemctl restart rpcbind
    
    

    4、系统准备

    ## 虚拟机安装麒麟系统然后把系统放到/data/system下
    rsync -Pa / /data/system --exclude=/media/* --exclude=/sys/* --exclude=/proc/* --exclude=/mnt/* --exclude=/tmp/* --exclude=/data/*
    

    5、配置启动菜单

    cd /var/lib/tftpboot/
    mkdir efi
    vi efi/grub.cfg
    
    #
    # DO NOT EDIT THIS FILE
    #
    # It is automatically generated by grub-mkconfig using templates
    # from /etc/grub.d and settings from /etc/default/grub
    #
    
    ### BEGIN /etc/grub.d/00_header ###
    set is_preload=true
    ###grub-password begin
    ###grub-password end
    set have_grubenv=true
    load_env
    set timeout="1"
    font=$prefix/fonts/unicode.pf2
    insmod font
    set locale_dir=$prefix/locale
    set lang=en_US
    insmod gettext
    ### END /etc/grub.d/00_header ###
    
    ### BEGIN /etc/grub.d/01_sw_settings ###
    ### END /etc/grub.d/01_sw_settings ###
    
    ### BEGIN /etc/grub.d/05_debian_theme ###
    set menu_color_normal=white/black
    set menu_color_highlight=black/light-gray
    ### END /etc/grub.d/05_debian_theme ###
    
    ### BEGIN /etc/grub.d/06_ubuntukylin_theme ###
    insmod part_gpt
    insmod ext2
    insmod gfxmenu
    insmod png
    export theme
    insmod gzio
    ### END /etc/grub.d/06_ubuntukylin_theme ###
    
    ### BEGIN /etc/grub.d/10_linux ###
    menuentry 'Kylin V10 SP1 5.4.18-85-generic' --unrestricted --class kylin --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-0701d1e8-c29c-4bad-b96a-e02af022085f' {
            set gfxpayload=keep
            echo    'Loading Linux menuentry 5.4.18-85-generic ...'
            linux   /vmlinuz boot=nfs netboot=nfs nfsroot=192.168.1.100:/data/system rootwait rw locale=zh_CN KEYBOARDTYPE=pc KEYTABLE=us ignore_uuid quiet splash ip=dhcp  audit=0 live
            initrd  /initrd.lz
    }
    

    5.1、initrd.lz 和vmlinuz地址

    # initrd.lz地址
    mkdir /kylin/data/
    mount Kylin-Desktop-V10-SP1-General-Release-2303-ARM64.iso /kylin/data/
    cp /kylin/data/casper/initrd.lz /var/lib/tftpboot/
    # vmlinuz地址,TODO 在虚拟机系统上执行
    sudo cp /boot/vmlinuz-`uname -r` ~/vmlinuz
    #然后在把vmlinuz 放到192.168.1.100服务器下 /var/lib/tftpboot/下 重启tftp
    systemctl restart tftp
    

    6、客户端

    设置boot 
    boot Manage 设置UEFI PXEv4启动
    
  • 相关阅读:
    Python 插入、替换、提取、或删除Excel中的图片
    代码随想录Day42 | 01背包问题| 416. 分割等和子集
    Coremail邮件安全:2022重保最新钓鱼案件典型攻击手法复盘
    MySQL——练习
    网络安全(黑客)自学
    《Go语言精进之路,从新手到高手的编程思想、方法和技巧1》读书笔记和分享
    理工ubuntu20.04电脑配置记录
    PowerShell 内网不能直接安装SqlServer模块的处理办法
    SSM(Spring+SpringMVC+MyBatis)框架集成
    springboot毕设项目大学生创新创业项目管理60qsr(java+VUE+Mybatis+Maven+Mysql)
  • 原文地址:https://blog.csdn.net/helenyqa/article/details/139637044