LFS 自制linux系統(tǒng).doc_第1頁
LFS 自制linux系統(tǒng).doc_第2頁
LFS 自制linux系統(tǒng).doc_第3頁
LFS 自制linux系統(tǒng).doc_第4頁
LFS 自制linux系統(tǒng).doc_第5頁
已閱讀5頁,還剩53頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

標(biāo)題: 原創(chuàng)手把手教你如何建立自己的Linux系統(tǒng)(LFS速成手冊) 更新日志2006年9月11日:加入對tar xvf的解釋。2006年9月11日:修改筆誤一處2006年8月11日:加入漏掉的一條命令2006-03-27:修改文件名錯(cuò)誤一處2006-03-25:修改大小寫問題若干處2006-03-24:修改筆誤兩處。2006-03-20:將linux-Lib-Headers-改為linux-lib-headers-2006-03-17:修改三條命令的表達(dá)方式。2006-03-14:加入漏掉的兩條命令。前言:LFS是一部非常好的制作一個(gè)完整的操作系統(tǒng)的手冊,但LFS是屬于指導(dǎo)性的手冊,因此它默認(rèn)的前提條件是具備一定的Linux使用經(jīng)驗(yàn)的用戶群,所以它在每個(gè)軟件包的安裝部分只給出了在目錄中的全部操作指令,而對于解壓縮之類的則交給用戶自己去解決,但對于很多第一次使用LFS的用戶往往會(huì)出現(xiàn)一些不清楚某條命令應(yīng)該是在哪里執(zhí)行的問題,本文力圖從實(shí)例上來解釋這些問題。本文雖然是采用VMWare Workstation 5.0的環(huán)境下制作的,但仍然符合使用真實(shí)機(jī)器上的過程,只是會(huì)在某些地方要根據(jù)具體機(jī)器進(jìn)行更改,文中會(huì)在這些地方做出說明。使用WMWare來寫這篇文章是為了說明方便,因?yàn)閂MWare在各種不同機(jī)器環(huán)境下模擬的虛擬設(shè)備幾乎相同,所以用它來說明一些需要實(shí)際例子才說的清楚的地方非常合適,而且用VMWare來做即使出錯(cuò)也不會(huì)對真實(shí)的系統(tǒng)造成破壞,很適合新手使用,唯一的缺點(diǎn)就是速度慢了些,一般只有真實(shí)機(jī)器的一半左右的速度。本文力爭完成一個(gè)完整的制作命令,可以根據(jù)本文提供的命令順序輸入就可以完成LFS了,通常命令表示為 代碼:命令由于制作過程比較漫長,特別是在一些比較慢的機(jī)器上,關(guān)于在制作過程中重新啟動(dòng)后恢復(fù)到工作狀態(tài)的方法在文中有詳細(xì)的介紹,但由于篇幅比較長可能看起來比較麻煩,可以看我專門將這部分提取出來后完成的一篇制作LFS過程中各個(gè)階段恢復(fù)工作狀態(tài)的方法,內(nèi)容比較集中容易查看。更新,由于篇幅比較長所以難免出現(xiàn)一些錯(cuò)誤或者筆誤,也有可能加入新內(nèi)容,因此難免會(huì)進(jìn)行修正或增刪一些內(nèi)容,如果本文被轉(zhuǎn)載可以在的LFS版中或者在本人的Blog中查看最新版本。linuxsir:/bbs/showthread.php?t=244052我的Blog:如須轉(zhuǎn)載請注明作者為沖天飛豹(youbest),并提供轉(zhuǎn)載出處。準(zhǔn)備工作:下載LiveCD的ISO文件(因?yàn)樵谥谱鞅疚臅r(shí)最新正式版只有6.1.1-3下載):/pub/lfs-livecd.86-6.1.1-3.iso刻錄ISO文件到光盤上,如果你是用真實(shí)機(jī)器當(dāng)然少不了這步,不過如果你用VMWare的話,就可以直接使用ISO文件了。以VMWare Workstation 5.0為例(真實(shí)機(jī)器可跳過此部分)選擇File-New-Virtual Machine.啟動(dòng)向?qū)нx擇Custom,然后在選擇Guest operating system里選擇Linux,在Version里選擇Other Linux存放目錄和內(nèi)存大小根據(jù)實(shí)際情況,建議內(nèi)存不得小于128M,最好256M以上相關(guān)知識(shí)點(diǎn):如果使用128M在編譯GCC3.x沒什么問題,但如果要編譯GCC4.0.x話就需要使用swap了,但如果配置了256M就可以在沒有swap的情況下完成編譯。Network connection里選擇Use network address translation(NAT)SCSI Adpters按照默認(rèn)選擇Buslogic就可以了選擇Create a new virtual disk在Virtual Disk Type這步比較重要,你可以選擇IDE也可以選擇SCSI,但這里的選擇直接影響到最后編譯內(nèi)核時(shí)的選項(xiàng)。這里以選擇SCSI為例子。相關(guān)知識(shí)點(diǎn):如果選擇了IDE,則內(nèi)核的默認(rèn)設(shè)置就可以支持,但如果選擇了SCSI,就必須在內(nèi)核中加入對SCSI Adpters的支持,因?yàn)榍懊孢x擇了Buslogic,所以內(nèi)核中就必須加入對Buslogic的支持,否則將無法啟動(dòng),相關(guān)部分在最后的內(nèi)核編譯部分有詳細(xì)說明。對于磁盤大小,使用默認(rèn)的4G足夠編譯LFS了,但如果你打算編譯更多的BLFS,這里可以考慮適當(dāng)?shù)脑黾右恍┐笮?。完成向?qū)Ш笤谔摂M機(jī)的界面里選擇Edit virtual machine settings,將CD-ROM改為Use ISO image,然后選擇LiveCD的ISO文件,如果你已經(jīng)刻錄好了光盤,將光盤放入光驅(qū)就行了。點(diǎn)Start this virtual machine開是虛擬機(jī)由于虛擬盤上沒有任何信息,因此將自動(dòng)從LiveCD中啟動(dòng),在啟動(dòng)過程中會(huì)出現(xiàn)選擇時(shí)區(qū)等信息,你可以按照實(shí)際情況選擇,也可以按照默認(rèn)選擇,簡單點(diǎn)就是等待一會(huì)系統(tǒng)會(huì)自動(dòng)進(jìn)行選擇。這里我選擇時(shí)區(qū)為Asia/Shanghai,其它的都按默認(rèn)選擇了。啟動(dòng)完成LiveCD后就開始建造自己的LFS的歷程了。這里先介紹以下兩個(gè)LiveCD下的重要目錄/usr/share/LFS-BOOK-6.1.1-HTML目錄存放的就是LFS手冊了/lfs-sources里面存放的就是建造LFS所需要的源碼包,不需要到處下軟件了。磁盤分區(qū):輸入命令:代碼:cfdisk將出現(xiàn)分區(qū)界面這里可以按照你自己的需要的分區(qū),這里我按照設(shè)置一個(gè)根分區(qū)和一個(gè)交換分區(qū)為例,交換分區(qū)占用512M,其余的全部分給根分區(qū)。磁盤分區(qū) 作用/dev/sda1swap/dev/sda2 作為目標(biāo)系統(tǒng)根目錄保存退出后進(jìn)行磁盤分區(qū)的格式化代碼:mkswap /dev/sda1mkfs.xfs /dev/sda2相關(guān)知識(shí)點(diǎn):磁盤格式化一定要在磁盤分區(qū)未進(jìn)行加載前進(jìn)行。mkswap是用于將磁盤分區(qū)格式化為交換分區(qū)的命令。這里我將/dev/sda2格式化了為Xfs格式,如果你喜歡其它格式的文件系統(tǒng),你可以使用相應(yīng)的命令來格式化。注意:這里要根據(jù)實(shí)際情況建立和設(shè)置分區(qū),如果你不太清楚這個(gè)問題,請先不要開始,否則可能造成難以恢復(fù)的損失!(這里只是根據(jù)VMWare里面的情況做的例子,在VMWare中相對安全些,建議初學(xué)者在虛擬機(jī)中開始。)如果你的內(nèi)存不太大,想在編譯期間就使用上交換分區(qū)的話,可使用下面的命令激活交換分區(qū)swapon /dev/sda1相關(guān)知識(shí)點(diǎn):swapon用于激活交換分區(qū)swapoff用于將激活的交換分區(qū)停用可以通過free命令來查看當(dāng)前的內(nèi)存使用情況創(chuàng)建LFS的“創(chuàng)作基地”代碼:export LFS=/mnt/lfsmkdir -pv $LFS相關(guān)知識(shí)點(diǎn):export LFS=/mnt/lfs這條命令的作用是為了后面引用“創(chuàng)作基地”的絕對路徑方便而設(shè)置LFS這樣的環(huán)境變量。加載/dev/sda2到“創(chuàng)作基地”代碼:mount /dev/sda2 $LFS創(chuàng)建必要的目錄并設(shè)置屬性創(chuàng)建源代碼編譯用目錄代碼:mkdir -v $LFS/sourceschmod -v a+wt $LFS/sources相關(guān)知識(shí)點(diǎn):chmod a+wt是將目錄或文件的屬性設(shè)置為777,這樣任何人都可以對其進(jìn)行讀寫。創(chuàng)建工具鏈目錄代碼:mkdir -v $LFS/toolsln -sv $LFS/tools /相關(guān)知識(shí)點(diǎn):上面這兩句就建立了神奇的工具鏈目錄(是工具鏈目錄不是工具鏈),這樣的創(chuàng)建方式是為了在創(chuàng)建工具鏈和使用工具鏈創(chuàng)建目標(biāo)系統(tǒng)的時(shí)候?qū)τ诠ぞ哝湹奈恢枚际?tools,這樣可保證工具鏈的正常使用創(chuàng)建lfs用戶代碼:groupadd lfsuseradd -s /bin/bash -g lfs -m -k /dev/null lfs設(shè)置lfs密碼,設(shè)置為空就行了,也就是輸入密碼的時(shí)候直接回車就成。代碼:passwd lfs將tools和sources目錄的用戶改為lfs,以便后面使用lfs來操作這兩個(gè)目錄代碼:chown -v lfs $LFS/toolschown -v lfs $LFS/sources登陸到lfs用戶代碼:su - lfs這時(shí)候你會(huì)發(fā)現(xiàn)命令行提示符已經(jīng)由#改為了$相關(guān)知識(shí)點(diǎn):其實(shí)如果不使用lfs用root也是能完成工具鏈的,不過需要對root的環(huán)境變量進(jìn)行修改,還要防止因?yàn)檩斎脲e(cuò)誤而導(dǎo)致覆蓋主系統(tǒng)下的文件,所以LFS手冊中制作工具鏈部分就是為了解決這種意外的發(fā)生而用lfs用戶來建立工具鏈建立lfs用戶的環(huán)境代碼:cat /.bash_profile /.bashrc /.bash_profile /.bashrc tempspecfile &mv -f tempspecfile $SPECFILE &unset SPECFILErm -vf /tools/lib/gcc/*/*/include/pthread.h,bits/sigthread.h相關(guān)知識(shí)點(diǎn):如果之前不小心把binutils-build給刪掉了,那么也不要緊張,不執(zhí)行make -C ld install也可以。工具鏈的調(diào)整方法有好幾種,而且不同版本GCC的specs可能會(huì)有不同,但實(shí)際上都是把specs文件中的/lib/ld-linux.so.2替換成了/tools/lib/ld-linux.so.2,所以即使有些文章在調(diào)整工具鏈上的命令和LFS手冊上的不一樣也不用太奇怪,當(dāng)然手工直接編輯specs文件也可以。但如果是GCC4.0.x的話可能不會(huì)自動(dòng)產(chǎn)生specs文件,這時(shí)候可以先生成specs文件然后在修改,可參考用GCC4.0.1編譯LFS測試工具鏈的調(diào)整echo main() dummy.ccc dummy.creadelf -l a.out | grep : /tools如果輸出大致如下Requesting program interpreter: /tools/lib/ld-linux.so.2則表示調(diào)整成功,因?yàn)樗械膸煲呀?jīng)連接到了/tools/lib下。rm -rf a.out dummy.c測試工具安裝說明:這部分將安裝3個(gè)用于第六章各種源碼包編譯后的測試的工具,所以如果你不打算做make check之類的事情,那么這3個(gè)包可以不裝。Tcl-8.4.9 Expect-5.43.0 DejaGNU-1.4.4代碼:tar xvf /lfs-sources/tcl8.4.9-src.tar.bz2cd tcl8.4.9/unix./configure -prefix=/toolsmakemake installcd .export TCLPATH=$(pwd)ln -sv tclsh8.4 /tools/bin/tclshcd .tar xvf /lfs-sources/expect-5.43.0.tar.bz2cd expect-5.43patch -Np1 -i /lfs-sources/expect-5.43.0-spawn-1.patch./configure -prefix=/tools -with-tcl=/tools/lib -with-tclinclude=$TCLPATH -with-x=nomakemake SCRIPTS= installunset TCLPATHcd .tar xvf /lfs-sources/dejagnu-1.4.4.tar.bz2cd dejagnu-1.4.4./configure -prefix=/toolsmake installcd .rm -rf tcl8.4.9rm -rf expect-5.43rm -rf dejagnu-1.4.4GCC-3.4.3 - Pass 2代碼:tar xvf /lfs-sources/gcc-3.4.3.tar.bz2cd gcc-3.4.3patch -Np1 -i /lfs-sources/gcc-3.4.3-no_fixincludes-1.patchpatch -Np1 -i /lfs-sources/gcc-3.4.3-specs-2.patchmkdir -v ./gcc-buildcd ./gcc-build./gcc-3.4.3/configure -prefix=/tools -libexecdir=/tools/lib -with-local-prefix=/tools -enable-clocale=gnu -enable-shared -enable-threads=posix -enable-_cxa_atexit -enable-languages=c,c+ -disable-libstdcxx-pchmakemake installcd .rm -rf gcc-buildrm -rf gcc-3.4.3Binutils-.2.2 - Pass 2代碼:tar xvf /lfs-sources/binutils-.2.2.tar.bz2mkdir -v binutils-buildcd binutils-build./binutils-.2.2/configure -prefix=/tools -disable-nls -enable-shared -with-lib-path=/tools/libmakemake installmake -C ld cleanmake -C ld LIB_PATH=/usr/lib:/libcd .注意:這里不要?jiǎng)h除binutils-build,因?yàn)榈街谱髂繕?biāo)系統(tǒng)的時(shí)候需要用到它。Gawk-3.1.4代碼:tar xvf /lfs-sources/gawk-3.1.4.tar.bz2cd gawk-3.1.4./configure -prefix=/toolsmakemake installcd .rm -rf gawk-3.1.4Coreutils-5.2.1代碼:tar xvf /lfs-sources/coreutils-5.2.1.tar.bz2cd coreutils-5.2.1DEFAULT_POSIX2_VERSION=199209 ./configure -prefix=/toolsmakemake installcd .rm -rf coreutils-5.2.1Bzip2-1.0.3代碼:tar xvf /lfs-sources/bzip2-1.0.3.tar.bz2cd bzip2-1.0.3makemake PREFIX=/tools installcd .rm -rf bzip2-1.0.3Gzip-1.3.5代碼:tar xvf /lfs-sources/gzip-1.3.5.tar.bz2cd gzip-1.3.5./configure -prefix=/toolsmakemake installcd .rm -rf gzip-1.3.5Diffutils-2.8.1代碼:tar xvf /lfs-sources/diffutils-2.8.1.tar.bz2cd diffutils-2.8.1./configure -prefix=/toolsmakemake installcd .rm -rf diffutils-2.8.1Findutils-4.2.23代碼:tar xvf /lfs-sources/findutils-4.2.23.tar.bz2cd findutils-4.2.23./configure -prefix=/toolsmakemake installcd .rm -rf findutils-4.2.23Make-3.80代碼:tar xvf /lfs-sources/make-3.80.tar.bz2cd make-3.80./configure -prefix=/toolsmakemake installcd .rm -rf make-3.80Grep-2.5.1a代碼:tar xvf /lfs-sources/grep-2.5.1a.tar.bz2cd grep-2.5.1a./configure -prefix=/tools -disable-perl-regexpmakemake installcd .rm -rf grep-2.5.1aSed-4.1.4代碼:tar xvf /lfs-sources/sed-4.1.4.tar.bz2cd sed-4.1.4./configure -prefix=/toolsmakemake installcd .rm -rf sed-4.1.4Gettext-0.14.3代碼:tar xvf /lfs-sources/gettext-0.14.3.tar.bz2cd gettext-0.14.3./configure -prefix=/tools -disable-libasprintf -without-csharpmakemake installcd .rm -rf gettext-0.14.3Ncurses-5.4代碼:tar xvf /lfs-sources/ncurses-5.4.tar.bz2cd ncurses-5.4./configure -prefix=/tools -with-shared -without-debug -without-ada -enable-overwritemakemake installcd .rm -rf ncurses-5.4Patch-2.5.4代碼:tar xvf /lfs-sources/patch-2.5.4.tar.bz2cd patch-2.5.4CPPFLAGS=-D_GNU_SOURCE ./configure -prefix=/toolsmakemake installcd .rm -rf patch-2.5.4Tar-1.15.1代碼:tar xvf /lfs-sources/tar-1.15.1.tar.bz2cd tar-1.15.1./configure -prefix=/toolsmakemake installcd .rm -rf tar-1.15.1Texinfo-4.8代碼:tar xvf /lfs-sources/texinfo-4.8.tar.bz2cd texinfo-4.8./configure -prefix=/toolsmakemake installcd .rm -rf texinfo-4.8Bash-3.0代碼:tar xvf /lfs-sources/bash-3.0.tar.bz2cd bash-3.0patch -Np1 -i /lfs-sources/bash-3.0-avoid_WCONTINUED-1.patch./configure -prefix=/tools -without-bash-mallocmakemake installln -vs bash /tools/bin/shcd .rm -rf bash-3.0M4-1.4.3代碼:tar xvf /lfs-sources/m4-1.4.3.tar.bz2cd m4-1.4.3./configure -prefix=/toolsmakemake installcd .rm -rf m4-1.4.3Bison-2.0代碼:tar xvf /lfs-sources/bison-2.0.tar.bz2cd bison-2.0./configure -prefix=/toolsmakemake installcd .rm -rf bison-2.0Flex-2.5.31代碼:tar xvf /lfs-sources/flex-2.5.31.tar.bz2cd flex-2.5.31patch -Np1 -i /lfs-sources/flex-2.5.31-debian_fixes-3.patchtouch doc/flex.1./configure -prefix=/toolsmakemake installcd .rm -rf flex-2.5.31Util-linux-2.12q代碼:tar xvf /lfs-sources/util-linux-2.12q.tar.bz2cd util-linux-2.12qsed -i s/usr/include/tools/includeg configure./configuremake -C libmake -C mount mount umountmake -C text-utils morecp mount/,umount text-utils/more /tools/bincd .rm -rf util-linux-2.12q知識(shí)點(diǎn):util-linux-2.12q這個(gè)版本如果在GCC4下編譯需要打補(bǔ)丁,否則雖然能編譯通過,但其中的cfdisk程序會(huì)有問題,目前已經(jīng)有util-linux-2.12r這個(gè)版本已經(jīng)修正了這個(gè)問題,建議使用。Perl-5.8.7代碼:tar xvf /lfs-sources/perl-5.8.7.tar.bz2cd perl-5.8.7patch -Np1 -i /lfs-sources/perl-5.8.7-libc-1.patch./configure.gnu -prefix=/tools -Dstatic_ext=IO Fcntl POSIXmake perl utilitiescp -v perl pod/pod2man /tools/binmkdir -pv /tools/lib/perl5/5.8.7cp -Rv lib/* /tools/lib/perl5/5.8.7cd .rm -rf perl-5.8.7Stripping這步是可有可無的,如果你打算今后還要用/tools里面的東西,那么可以strip一下來減少占用的磁盤空間,但如果做完目標(biāo)系統(tǒng)后就刪除了,Strip就可有可無了,反正最后也是要?jiǎng)h掉的。代碼:strip -strip-debug /tools/lib/*strip -strip-unneeded /tools/,sbin/*info和man里面的內(nèi)容在制作過程中沒什么用處,所以刪掉也沒啥關(guān)系。rm -rf /tools/info,man退出lfs用戶(這步不要少了)代碼:exit到目前為止,工具鏈已經(jīng)制作完成了,接著就要開始制作真正的目標(biāo)系統(tǒng)了,如果你到目前為止沒出什么問題,那么恭喜你成功的通過了一關(guān),不過接著還有相當(dāng)長的路?,F(xiàn)在你應(yīng)該是處于root用戶狀態(tài)的,看看你的命令行提示符是不是回到了#。創(chuàng)建兩個(gè)重要目錄代碼:mkdir -pv $LFS/proc,sys這個(gè)時(shí)候也許你想睡覺關(guān)機(jī)了,那么重新開機(jī)后回到工作狀態(tài)的步驟是:1.重新啟動(dòng)計(jì)算機(jī),并從LiveCD啟動(dòng)2.加載分區(qū)export LFS=/mnt/lfsmkdir -pv $LFSmount /dev/sda2 $LFS3.加載交換分區(qū)(如果不想用交換分區(qū)或者沒有交換分區(qū)可跳過此步驟)swapon /dev/sda1相關(guān)知識(shí)點(diǎn):這時(shí)候已經(jīng)制作好了工具鏈,因此可以不需要建立根目錄下的tools鏈接了。利用主系統(tǒng)加載幾個(gè)重要的文件系統(tǒng)代碼:mount -vt proc proc $LFS/procmount -vt sysfs sysfs $LFS/sysLFS手冊里下面這三條命令不執(zhí)行也行,因?yàn)槟夸洸]有準(zhǔn)備好。代碼:mount -vft tmpfs tmpfs $LFS/devmount -vft tmpfs tmpfs $LFS/dev/shmmount -vft devpts -o gid=4,mode=620 devpts $LFS/dev/pts相關(guān)知識(shí)點(diǎn):mount命令加載的分區(qū)在重新啟動(dòng)后就失效了,所以在這其中重新啟動(dòng)則需要重新加載。這里為了方便使用源碼包,我將光盤加載到目標(biāo)系統(tǒng)里mkdir $LFS/cdrommount /dev/cdrom $LFS/cdrom這個(gè)步驟不是必須的,如果你想使用,那么在重新啟動(dòng)后進(jìn)入工作狀態(tài)的步驟中在相應(yīng)的位置上加入。這里有一個(gè)更簡單的辦法,將lfs-sources里面所有源碼包復(fù)制到$LFS/sources目錄中。代碼:cp -a /lfs-sources/* $LFS/sourcesChroot到目標(biāo)系統(tǒng)的目錄下,以便不受主系統(tǒng)的影響來制作目標(biāo)系統(tǒng)代碼:chroot $LFS /tools/bin/env -i HOME=/root TERM=$TERM PS1=u:w$ PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin /tools/bin/bash -login +h這個(gè)時(shí)候如果你關(guān)機(jī)或重新啟動(dòng),那么重新開機(jī)后回到工作狀態(tài)的步驟是:1.重新啟動(dòng)計(jì)算機(jī),并從LiveCD啟動(dòng)2.加載分區(qū)export LFS=/mnt/lfsmkdir -pv $LFSmount /dev/sda2 $LFS3.加載交換分區(qū)(如果不想用交換分區(qū)或者沒有交換分區(qū)可跳過此步驟)swapon /dev/sda14.加載必要的文件系統(tǒng)mount -vt proc proc $LFS/procmount -vt sysfs sysfs $LFS/sys5.Chroot到目標(biāo)系統(tǒng)下chroot $LFS /tools/bin/env -i HOME=/root TERM=$TERM PS1=u:w$ PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin /tools/bin/bash -login +h因?yàn)橹岸际怯胠fs用戶制作的工具鏈,所以現(xiàn)在要將工具鏈下的所有文件轉(zhuǎn)換成root用戶的文件,但因?yàn)楝F(xiàn)在目標(biāo)系統(tǒng)下還沒有任何用戶,因此用0來表示root用戶。代碼:chown -R 0:0 /tools建立目標(biāo)系統(tǒng)的目錄結(jié)構(gòu)代碼:install -dv /bin,boot,dev,etc/opt,home,lib,mntinstall -dv /sbin,srv,usr/local,var,optinstall -dv /root -m 0750install -dv /tmp /var/tmp -m 1777install -dv /media/floppy,cdrominstall -dv /usr/bin,include,lib,sbin,share,srcln -sv share/man,doc,info /usrinstall -dv /usr/share/doc,info,locale,maninstall -dv /usr/share/misc,terminfo,zoneinfoinstall -dv /usr/share/man/man1,2,3,4,5,6,7,8install -dv /usr/local/bin,etc,include,lib,sbin,share,srcln -sv share/man,doc,info /usr/localinstall -dv /usr/local/share/doc,info,locale,maninstall -dv /usr/local/share/misc,terminfo,zoneinfoinstall -dv /usr/local/share/man/man1,2,3,4,5,6,7,8install -dv /var/lock,log,mail,run,spoolinstall -dv /var/opt,cache,lib/misc,locate,localinstall -dv /opt/bin,doc,include,infoinstall -dv /opt/lib,man/man1,2,3,4,5,6,7,8創(chuàng)建幾個(gè)必要的鏈接,因?yàn)樵谀繕?biāo)系統(tǒng)的編譯過程中,部分編譯程序會(huì)用絕對路徑來尋找命令或文件。代碼:ln -sv /tools/bin/bash,cat,pwd,stty /binln -sv /tools/bin/perl /usr/binln -sv /tools/lib/libgcc_s.so,.1 /usr/libln -sv bash /bin/sh創(chuàng)建root用戶和必要的組代碼:cat /etc/passwd /etc/group EOFroot:x:0:bin:x:1:sys:x:2:kmem:x:3:tty:x:4:tape:x:5

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論