利用Ubuntu Cobbler進行系統遷移的步驟
在目標Ubuntu服務器上安裝Cobbler及依賴組件,確?;A服務可用:
sudo apt update
sudo apt install cobbler cobbler-web dhcp3-server tftpd-hpa xinetd -y
啟動并啟用Cobbler服務:
sudo systemctl start cobblerd
sudo systemctl enable cobblerd
運行cobbler check檢查配置完整性,根據提示修復問題(如server字段需設置為服務器IP而非localhost,next_server需指向Cobbler服務器IP)。
修改/etc/cobbler/settings文件,重點配置以下參數:
server: Cobbler服務器IP(如192.168.1.100);next_server: TFTP服務器IP(通常與Cobbler服務器IP一致);default_password_crypted: 設置默認root密碼(通過openssl passwd -1生成,如openssl passwd -1 -salt "ubuntu" "yourpassword")。sudo cobbler sync
編輯/etc/cobbler/dhcp.template文件,添加子網、地址范圍、網關、DNS及PXE啟動參數:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8, 8.8.4.4;
filename "pxelinux.0";
next-server 192.168.1.100; # Cobbler服務器IP
}
若manage_dhcp設置為yes(默認),同步Cobbler配置后會自動更新DHCP服務;若為no,需手動修改/etc/dhcp/dhcpd.conf并重啟DHCP服務:
sudo systemctl restart isc-dhcp-server
將待遷移的Ubuntu系統鏡像(如ISO文件)掛載至服務器,或直接指定鏡像路徑導入:
# 掛載ISO示例
sudo mount -o loop /path/to/ubuntu-22.04.iso /mnt
# 導入鏡像(--path為鏡像路徑,--name為鏡像標識)
sudo cobbler import --path=/mnt --name=ubuntu-22.04 --arch=x86_64
# 卸載ISO
sudo umount /mnt
導入后,鏡像會存儲至/var/www/cobbler/ks_mirror/目錄,包含內核(vmlinuz)、初始化內存盤(initrd.img)等文件。
Kickstart文件用于自動化遷移過程,需包含分區、用戶、軟件包等配置??苫贑obbler模板創建(如/var/lib/cobbler/kickstarts/ubuntu.ks),關鍵內容示例如下:
# 分區配置(適配目標系統磁盤大?。?part /boot --fstype=ext4 --size=500
part swap --fstype=swap --size=2048
part / --fstype=ext4 --grow --size=1
# 用戶與密碼(設置遷移后的root密碼)
rootpw --iscrypted $6$your_encrypted_password
user --name=migrated_user --password=$6$your_encrypted_password --groups=adm,sudo
# 軟件包選擇(保留原系統常用軟件)
%packages
openssh-server vim net-tools
%end
# 網絡配置(靜態IP或DHCP)
network --bootproto=dhcp --device=eth0 --onboot=yes
# 系統服務(啟用SSH等)
services --enabled=ssh,sshd
將Kickstart文件上傳至Cobbler服務器(如/var/lib/cobbler/kickstarts/)。
Profile關聯鏡像與Kickstart文件,定義遷移時的系統配置:
sudo cobbler profile add \
--name=ubuntu-22.04-migrate \ # Profile名稱
--distro=ubuntu-22.04-x86_64 \ # 導入的鏡像名稱(通過`cobbler distro list`查看)
--kickstart=/var/lib/cobbler/kickstarts/ubuntu.ks
為目標遷移系統創建系統記錄,指定MAC地址(用于PXE識別)及其他網絡參數:
sudo cobbler system add \
--name=target-system \ # 目標系統名稱
--profile=ubuntu-22.04-migrate \ # 關聯的Profile
--interface=eth0 \ # 網絡接口
--mac=AA:BB:CC:DD:EE:FF # 目標系統MAC地址(通過`ip link show`獲?。?/span>
同步Cobbler配置至TFTP、DHCP等服務,使變更生效:
sudo cobbler sync
ubuntu-22.04-migrate)。/home目錄)、軟件包是否正常(如ssh服務是否啟動)、網絡配置是否符合預期。/home、/etc),避免數據丟失;/var/log/cobbler/cobbler.log查看詳細錯誤信息。