centos7使用cobbler(2.8)批量部署操作系統之二

来源:http://www.cnblogs.com/mfyang/archive/2017/05/10/6837926.html
-Advertisement-
Play Games

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文件夾等。

 

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • PXC三節點安裝: node1:10.157.26.132 node2:10.157.26.133 node3:10.157.26.134 配置伺服器ssh登錄無密碼驗證 ssh-keygen實現三台主機之間相互免密鑰登錄,保證三台主機之間能ping通 1)在所有的主機上執行: # ssh-keyg ...
  • 背景簡介: 本文為針對一次windows平臺RAC資料庫遷移至Linux平臺RAC的筆記,基本步驟為: 1.搭建windows RAC到Linux 單實例資料庫的DataGuard 2.做switchover,將備庫IP修改為原RAC資料庫的scanip 3.搭建單實例到Linux RAC的Data ...
  • ZooKeeper是一個分散式開源框架,提供了協調分散式應用的基本服務,它向外部應用暴露一組通用服務——分散式同步(Distributed Synchronization).命名服務(Naming Service).集群維護(Group Maintenance)等,簡化分散式應用協調及其管理的難度, ...
  • ElasticSearch 2.4版本支持Java正則表達式查詢,但是,在對大段的文本(Text Block)進行挖掘之前,必須瞭解正則表達式查詢的特殊之處。由於分析器會對文本欄位進行分詞,移除停用詞,小寫轉換等操作,最終存儲在倒轉索引中的是小寫的標記流(Token Stream),預設情況下,每一... ...
  • 以下摘自官方文檔: 語法: Or: If you declare an alias for a table, you must use the alias when referring to the table: Correct: ...
  • 一、最小化安裝 1、進入系統之後,要配置network網路。 首先ping www.baidu.com (Ctrl+z 推出正在執行的命令) 如果ping不通,則修改: vi /etc/sysconfig/network-scripts/ifcfg-ens33 ONBOOT=yes 修改之後重啟ne ...
  • 先說說他們的關係,Nginx和uWSGI都是Web伺服器,Nginx負責靜態內容,uWSGI負責Python這樣的動態內容,二者配合共同提供Web服務以實現提高效率和負載均衡等目的。uWSGI實現了多個協議,如WSGI,HTTP協議,還有它自己的uwsgi協議,想瞭解更多關於uWSGI和uwsgi協... ...
  • 一 安裝FTP 1 檢測是否已經安裝FTP 2 若沒有,則進行安裝 二 設置vsftpd開機啟動 三 配置FTP伺服器(開啟基於用戶的訪問控制) 1 配置文件的修改 2 修改selinux 若報錯,getsebool: SELinux is disabled。則 修改 SELINUX=1。 然後重啟 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...