1. Cobbler常用命令 1.1 查看cobbler幫助 # cobbler --help usage cobbler <distro|profile|system|repo|image|mgmtclass|package|file> ... [add|edit|copy|getks*|list ...
1. Cobbler常用命令
1.1 查看cobbler幫助
# cobbler --help
usage
=====
cobbler <distro|profile|system|repo|image|mgmtclass|package|file> ...
[add|edit|copy|getks*|list|remove|rename|report] [options|--help]
cobbler <aclsetup|buildiso|import|list|replicate|report|reposync|sync|validateks|version|signature|get-loaders|hardlink> [options|--help]
distro,profile,system是cobbler三大核心組件。
Distro
主要用來定義和設置系統發行版本,里包含了系統的內核,引導文件,以及安裝包等內容,就相當於一個LINUX系統的ISO鏡像。如:多個發行版本,同一發行版不同版本號。
Profile
主要用來定義kickstart配置文件,安裝時依據配置文件進行定製化安裝。
System
主要用來定義內核參數,電源管理,電腦名,網路介面參數等(客戶機),如:根據mac地址配置IP地址,或者通過配置文件指定其它網路信息。
Repo
主要用來配置yum鏡像源。
Cobbler的幫助信息查看都是這個格式:cobbler 子命令 –help
如:
1 # cobbler distro --help 2 3 usage 4 5 ===== 6 7 cobbler distro add 8 9 cobbler distro copy 10 11 cobbler distro edit 12 13 cobbler distro find 14 15 cobbler distro list 16 17 cobbler distro remove 18 19 cobbler distro rename 20 21 cobbler distro report
1.2 Cobbler distro命令
該命令主要用於對distro進行增加,編輯,拷貝,查找,移除,重命名操作。
使用格式為(以add為例):
cobbler distro add --name=string --kernel=path --initrd=path
[--kopts=string] [--kopts-post=string] [--ksmeta=string]
[--arch=x86|x86_64|ia64] [--breed=redhat|debian|suse]
[--template-files=string]
其中:
Name |
用來指定系統的版本。如:RHEL7 |
Kernel |
用來指定一個內核鏡像文件的絕對路徑。 |
Initrd |
用來指定一個RAM鏡像文件的絕對路徑。 |
Kopts |
用來指定內核命令行參數 |
Kopts-post |
同上 |
Arch |
用來指定操作系統版本平臺,如:X86_64 |
Ksmeta |
是用來替代kickstart變數的高級特性 |
Breed |
用來指定操作系統廠家,如:redhat Ubuntu,centos等 |
舉例:
1 # cobbler distro add --name=Centos6.6-x86_64 --kernel=/mnt/isolinux --initrd=/mnt/isolinux --arch=x86_64 --breed=redhat 2 3 # cobbler distro list 4 5 Centos6.6-x86_64 6 7 Centos7-dvd-x86_64 8 9 # cobbler distro rename –name=Centos6.6-x86_64 –newname=Centos6.9-x86_64 10 11 #cobbler distro list 12 13 Centos6.9-x86_64 14 15 Centos7-dvd-x86_64
1.3 Cobbler profile命令
該命令主要用於對profile進行增加,編輯,拷貝,查找,移除,重命名等操作。
使用格式為(以add為例):
cobbler profile add --name=string --distro=string [--kickstart=path]
[--kopts=string] [--ksmeta=string] [--virt-file-size=gigabytes]
[--virt-ram=megabytes] [--virt-type=string] [--virt-cpus=integer]
[--virt-path=string] [--virt-bridge=string] [--server]
[--parent=profile]
Name |
用來指定一個配置文件的描述名稱 |
Distro |
用來關聯distro |
|
|
Kickstart |
用來指定kickstart文件路徑 |
Virt-* |
與虛擬化有關的設置 |
Server |
當客戶機所在子網無法訪問cobbler伺服器的時候,這個設置才用得著。 |
Parent |
這是一個高級特性,用來指定上一級的配置文件,可以繼承父級指定的參數 |
舉例:
1 # cobbler profile add --name=Centos6.9-x86_64 --distro=Centos6.9-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos6.9-x86_64.cfg 2 3 # cobbler profile list 4 5 Centos6.9-x86_64 6 7 Centos7-dvd-x86_64
1.4 Cobbler system命令
此命令主要用於定義客戶機的網路介面參數,如指定IP MASK GATEWAY等。
cobbler system add --name=string --profile=string [--mac=macaddress]
[--ip-address=ipaddress] [--hostname=hostname] [--kopts=string]
[--ksmeta=string] [--kickstart=path] [--netboot-enabled=Y/N]
[--server=string] [--gateway=string] [--dns-name=string]
[--static-routes=string] [--power-address=string]
[--power-type=string] [--power-user=string] [--power-pass=string]
[--power-id=string]
Name |
指定一個名字 |
Profile |
指定一個profile |
Mac |
指定客戶機的MAC地址,這是實現自動化安裝的必要參數,否則客戶機通過網路引導後會停留在引導菜單那一步。 |
Ip-address |
配置客戶機的IP地址 |
Hostname |
配置客戶機的電腦名 |
Kickstart |
指定kickstart配置文件的路徑 |
Netboot-enable |
是否開啟網路啟動 |
Server |
指定cobbler伺服器的地址 |
Gateway |
指定客戶機的網關 |
Dns-name |
指定客戶機的DNS功能變數名稱 |
Static-routers 無需關心,大部分機器不需設置此項
[--power-address=string] [--power-type=string] [--power-user=string] [--power-pass=string] [--power-id=string]這些參數與電源管理相關。
舉例:
1 # cobbler system add --name=Centos6.9-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos6.9-x86_64.cfg --mac=00:0C:29:41:FC:6C --hostname=backup --profile=Centos6.9-x86_64 --interface ens33 2 3 # cobbler list 4 5 distros: 6 7 Centos6.9-x86_64 8 9 Centos7-dvd-x86_64 10 11 12 13 profiles: 14 15 Centos6.9-x86_64 16 17 Centos7-dvd-x86_64 18 19 systems: 20 21 Centos6.9-x86_64 22 23 repos: 24 25 images: 26 27 mgmtclasses: 28 29 packages: 30 31 files: 32 33 # cobbler system edit --name=Centos6.9-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos6.9-x86_64.cfg --mac=00:0C:29:41:FC:6C --hostname=backup --profile=Centos6.9-x86_64 --interface eth0
1.5 Cobbler repo命令
此命令主要用於指定一個倉庫源鏡像,不僅僅用import方式導入的安裝樹中的源,還可以是rsync://URL,SSH 本地源,http://URL,FTP://URL,或者是本地源。
命令格式:
cobbler repo add --mirror=url --name=string [--rpmlist=list]
[--creatrepo-flags=string] [--keep-updated=Y/N] [--priority=number]
[--arch=string] [--mirror-locally=Y/N] [--breed=yum|rsync|rhn]
Mirror |
指定鏡像倉庫源的地址 |
Name |
定義名稱 |
Rpmlist |
後面跟的是以空格分隔的軟體包的名稱列表,僅在http://url,ftp://url模式下生效。這種方式可以節省時間,空間和帶寬。因為在這個列表中的包會被安裝,其它的都不安裝。 |
Createrepo-flags |
當cobbler reposync運行時向其傳遞一個特殊的參數,預設為“-c cache” |
Keep-updated |
是否時刻保持repo的更新 |
Priority |
優先順序,數字越小優先順序越高,預設99.作用於所有cobbler鏡像源。 |
Arch |
定義倉庫使用什麼樣的架構,預設使用當前系統架構 |
Mirror-locally |
定義使用本地源還是互聯網源 |
Breed |
通常無需定義,系統就知道我們想乾什麼,當然你也以指定特殊的。 |
舉例:
1 # cobbler repo add --mirror=https://mirrors.aliyun.com/centos/7.3.1611/os/x86_64/ --name=centos7.3-x86_64 2 3 # cobbler repo list 4 5 centos7.3-x86_64 6 7 # cobbler reposync #同步repo,會從網上下載centos7.3.1611的安裝樹到這個位置/var/www/cobbler/repo_mirror 8 9 命令介紹到這裡我想應該夠用的了。其它的自己看man cobbler吧。
看看最終的配置:
1 # cobbler list 2 3 distros: 4 5 Centos6.9-x86_64 6 7 Centos7-dvd-x86_64 8 9 profiles: 10 11 Centos6.9-x86_64 12 13 Centos7-dvd-x86_64 14 15 systems: 16 17 Centos6.9-x86_64 18 19 repos: 20 21 centos7.3-x86_64 22 23 images: 24 25 mgmtclasses: 26 27 packages: 28 29 files:
1.6 CentOS 6的光碟目錄介紹
(1)Packages目錄:包含安裝所需的所有二進位RPM包。
(2)EFI目錄:用於64位的基於EFI的系統引導。其中BOOT目錄下的BOOTX64.conf為grub的配置文件,用於顯示引導菜單。
(3)TRANS.TBL文件:記錄當前目錄的列表,用mkisofs的-T參數重新生成,主要是為了長文件名稱。
(4).discinfo文件是安裝介質的識別信息。.treeinfo文件記錄不同安裝方式安裝程式所在的目錄結構,如PXE方式時,內核kernel=images/pxeboot/vmlinuz,根文件系統initrd=images/pxeboot/initrd.img。
(5)isolinux目錄:有開機引導系統安裝的內核(vmlinuz)及RAM鏡像(initrd.img),在引導系統時會載入記憶體,給系統的安裝提供一個Linux安裝引導平臺,文件夾中還有在不同模式下顯示信息的boot.msg文件,splash.jpg是特殊格式的引導過程背景圖片(640*480)。安裝時這個畫面上的引導菜單內容在isolinux/isolinux.cfg文件中指定。按Enter會自動進入圖形界面安裝模式,若按Esc,會顯示”boot: “命令提示符,進入用戶交互模式,界面上會有各種模式操作提示。鍵入”linux text”,會進入文本安裝模式。
(6)images目錄:包含有各種引導鏡像。最重要的是引導第二階段安裝需要用到的鏡像文件install.img(CentOS 5中是stage2.img),anaconda程式就在這個鏡像文件中。另外還有用於製作微型啟動光碟的boot.iso(為節省空間CentOS 6中已經刪除了,在CentOS 5中是有的),有可放置於USB或其他大容量可引導介質的VFAT分區上,製作引導工具的鏡像diskboot.img(CentOS 5中有),也有用於製作PXE安裝方式引導介質的pxeboot文件夾等。