电竞比分网-中国电竞赛事及体育赛事平台

分享

制作&&修改CentOS Livecd

 syden1981 2014-01-22

      在centos中可以用kickstart進行裝機自動化,也可以定制一些軟件包,公司的需要的基礎(chǔ)系統(tǒng)里面很多軟件參數(shù)、選項、內(nèi)核都經(jīng)過優(yōu)化,所以用kickstart裝起來雖然方便但是后期調(diào)整很麻煩,所以打算換種方法,思路如下:

    把經(jīng)過優(yōu)化的系統(tǒng)整體打包,做成一個原始的tar包,由于linux是文件系統(tǒng),所以只要在新硬盤上劃好分區(qū)好以后,解壓打好的tar系統(tǒng)包就可以了,然后安裝grub,這樣一個系統(tǒng)就完成了,但是本人有點懶,分區(qū),grub都不想自己動手,所以可以寫個腳本自動執(zhí)行。

    1 打包系統(tǒng)

1tar czvfp Centos5_x86_64.tgz bin/ boot/ dev/ etc/ home/ lib/ lib64/ lost+found/ media/ mnt/ opt/ \
2--exclude=proc/* proc/ root/ sbin/ selinux/ srv/ --exclude=tmp/* tmp/ usr/ var/ --exclude=sys/* sys/

   2 制作centos livecd

     2.1 安裝制作環(huán)境

1yum install livecd-tools syslinux anaconda-runtime

     2.2 編寫kickstart腳本      

01lang en_US.UTF-8
02keyboard us
03timezone US/Eastern
04auth --useshadow --enablemd5
05selinux --disabled
06firewall --disabled
07 
08repo --name=a-base  --baseurl=http://mirrors.163.com/centos/5/os/$basearch/
09repo --name=a-addons   --baseurl=http://mirrors.163.com/centos/5/addons/$basearch/
10repo --name=a-extras   --baseurl=http://mirrors.163.com/centos/5/extras/$basearch/
11repo --name=a-centosplus --baseurl=http://mirrors.163.com/centos/5/centosplus/$basearch/
12repo --name=a-contrib  --baseurl=http://mirrors.163.com/centos/5/contrib/$basearch/
13repo --name=a-live    --baseurl=http://www.nanotechnologies./propos/linux/centos-live/$basearch/live
14 
15%packages
16bash
17kernel
18syslinux
19passwd
20policycoreutils
21perl
22chkconfig
23authconfig
24rootfiles
25comps-extras
26xkeyboard-config
27grub
28coreutils
29parted

     2.3 開始制作Livecd

1LANG=C livecd-creator --config=centos-livecd-minimal.ks --cache=/home/livecd/cache --tmpdir=/home/livecd/tmp \
2--fslabel=CentOS-minimal

  這一步完成后會在當(dāng)前目錄生成一個CentOS-minimal.iso文件,centos-livecd-minimal.ks是編寫好的kickstart腳本,至此Livecd已經(jīng)生成,接下來開始修改。

   3 定制Livecd

     3.1 安裝工具

1yum install squashfs-tools

    或者使用squashfs4版本,下載源碼包后,進入squashfs-tools目錄,make&&make install 即可安裝完成,

默認命令安裝在/usr/local/bin,可以copy到/bin中。

3.2 掛載ISO鏡像

1mkdir -p /home/livecd
2mount -o loop -t iso9660 CentOS-minimal.iso /home/livecd

        3.3  copy鏡像

1mkdir -p /home/img
2cp -R /home/livecd/* /home/img

       3.4  解壓squashfs.img 

              進入/home/img/LiveOS 目錄,會看見squashfs.img文件,

1unsquashfs squashfs.img

             會產(chǎn)生squashfs-root目錄,進入其子目錄LiveOS中,會有一個ext3fs.img文件,掛載該文件

1mount -o loop,rw ext3fs.img /tmp

            在做完各種修改后,卸載該文件,重新回到/home/img/LiveOS目錄,生成新的squashfs.img文件

           我的需求是:修改rc.local文件,加入一系列劃分分區(qū)、格式化、掛載、解壓命令后,并把前面打的tar包傳入/tmp的制定目錄下,這樣用livecd啟動時會執(zhí)行rc.local中的命令,這樣等livecd完全啟動后,宿主機的硬盤上就會有一個我們剛才打包好的系統(tǒng)了。

1mksquashfs squashfs-root squashfs.img

           刪除squashfs-root目錄,回到上級目錄,生成新的ISO

1mkisofs -R -b isolinux/isolinux.bin -c isolinux/boot.cat -o /tmp/test.iso -V "CentOS-minima" \
1-no-emul-boot -boot-load-size 4 -boot-info-table .

     這樣經(jīng)過修改的鏡像文件就會生成,刻入CD中,就可以自動裝機了。

     注:這只是適應(yīng)我們部分小的需求,也沒什么創(chuàng)新,google了幾遍文檔,糅雜在一起的。

     相關(guān)參照:

     https://projects./trac/livecd/

1                                       

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多