1. 程式人生 > >tinycore 的基本搭建,開機時間只需要1-3秒

tinycore 的基本搭建,開機時間只需要1-3秒

具體步驟不全,不一一寫下來,寫下來看這很亂,命令較多。
在操作的具體過程中將所需要注意的事項和遇到問題的解決方法一步一步的寫下來
如何:使用CentOS PXE啟動TinyCore

首先關閉防火牆、關閉selinux
第1步:設定tftp伺服器
yum install tftp-server
vi /etc/xinetd.d/tftp

disable = no (按正常應該是執行兩個服務,只執行其中一個)
server_args = -s / tftpboot (tftp的根目錄的路徑)
service xinetd restart (重啟xinetd服務,與tftp相關聯)

yum install syslinux
mkdir / tftpboot (將syslinux目錄下的啟動映象和掛載檔案系統複製到tftp的跟目錄下)
cp /usr/share/syslinux/pxelinux.0 / tftpboot
cp /usr/share/syslinux/menu.c32 / tftpboot
cp / usr / share / syslinux / memdisk / tftpboot
cp / usr / share / syslinux / mboot.c32 / tftpboot
cp /usr/share/syslinux/chain.c32 / tftpboot

第2步:設定DHCP
Windows:如果您已在Windows上執行DHCP,請新增選項66(pxe伺服器IP)和67(pxelinux.0)。
Centos:
yum install dhcp
vi /etc/dhcp/dhcpd.conf

allow booting;
allow bootp;
option option-128 code 128 = string;
option option-129 code 129 = text;
next-server 10.0.0.100; (本地主機的IP)
filename "/pxelinux.0"; (映像名稱,必須是pexlinux.0)

subnet 10.0.0.0 netmask 255.255.255.0 {
range dynamic-bootp 10.0.0.1 10.0.0.10;
} (網段以及子網掩碼,10.0.0.1-10.0.0.10 DHCP分發IP範圍)
Systemctl restart dhcpd
Systemctl enable dhcpd(重啟服務)

第3步:設定TinyCore
wget http://distro.ibiblio.org/tinycorelinux/5.x/x86/release/TinyCore-current.iso
mkdir -p / tftpboot / images / TC
(下載作業系統的映像,如果已經做完作業系統,這步可以省略)

mount -o loop tinycore-current.iso / mnt / TC (掛載映像檔案)

cp - R / mnt / TC / boot / tftpboot / images / TC /
cp -R / mnt / TC / cde / tftpboot / images / TC /
(將下載的映像tinycore裡面的boot目錄和cde拷貝到tftp的根目錄下)

第4步:將TinyCore條目新增到PXE選單
vi /tftpboot/pxelinux.cfg/default
default menu.c32
prompt 0
timeout 300
ONTIMEOUT local
MENU TITLE PXE Menu (選單標題)
LABEL tinycore
MENU LABEL TinyCore (標籤)
kernel images/TC/boot/vmlinuz (核心映像)
append initrd=/images/TC/boot/core.gz tce=/cde
(延時時間,啟動系統名字,開機自動載入的目錄以及啟動映像)

第5步:Remaster TinyCore(所以它可以找到cde資料夾)
將資料夾從TinyCore-current.iso複製到USB驅動器
使用TinyCore-current.iso引導進入TinyCore(沒有硬碟的VM就可以了)
使用安裝工具在TinyCore中安裝USB驅動器
將core.gz從USB驅動器上的boot資料夾複製到/ tmp
使用應用工具安裝core-remaster.tcz
執行core-remaster從core.gz中提取檔案
將cde資料夾從USB驅動器複製到/ tmp / core_extract
執行core-remaster將包檔案重新包裝回core.gz
複製/ tmp / core_package /core.gz到USB驅動器
將新的core.gz從USB驅動器 複製到CentOS機器上的/ tftpboot / images / TC / boot

製作時要注意的事項:
伺服器:1臺(我用的是一臺,tftp和dhcp只在一臺機器上做)
客戶端:2臺(基本上只需要1臺就夠了,不需要配置IP)
製作tinycore啟動盤需要大於16G的U盤。
Firewalld和Selinux必須關閉,進入selinux配置檔案設定成disable狀態,然後重啟,如果不想重啟的情況下設定setenfore 0,需要配置好yum源的,可以配置本地yum源,但是可能出現軟體包不全的情況,還需要在網上下載rpm包,最好在可以連網的情況下配置網路源,節省時間,U盤的儲存空間必須要在16G以上,因為一個核心解壓基本上都在11-13G左右,但是在解壓之前可以將不需要的目錄檔案進行排除。系統空間也必須在20-30G左右,當編譯或者解壓的時候的核心檔案以及其他亂七八糟的檔案和壓縮包可能大於你的記憶體,但是這種情況下是不會報錯的,當你安裝或者編譯的時候就會出現錯誤,原因就是記憶體不夠,解壓的包和檔案丟失。(我在這個問題上卡了兩天的時間才解決注意事項太多想不起來了,想到哪了再補充)

過程中遇到的問題:
1、tftp傳輸不能正常連線,(重啟之後)put get 都不能正常使用
答:tftp可能沒有正常啟動,沒有設定開機自啟,tftp和tftp-hap 版本不一樣。

2、製作tinycore系統 不成功
答:選擇啟動模式,掛載的U盤還是硬碟,路徑必須選擇core.gz,否則就送你一首涼涼。

3、系統為什麼不能正常識別中文都是亂碼呢?
答:在安裝的過程中有一個讓新增需要的條件,直接新增zheng_UTF-8 即可。

4、在安裝完畢後tinycore系統重啟就還原的問題?
答:首先需要本地有一個儲存介質,關機的時候exit裡面有個backup是儲存在本地介質。

5、系統的儲存到底是在本地儲存還是遠端nfs啟動掛接?
答 選擇的是遠端nfs啟動掛接,nfs遠端的話可以在伺服器上完成統一的配置和部署,更快。