湖濱散記部落格的樹心幽徑[login][主頁]
477:20190124用iPXE原始碼編譯製作並使用ipxe開機隨身碟ok

REF:http://ipxe.org/start

REF:https://www.itread01.com/content/1516955979.html

(1)下載預先建妥的二進位版ipxe.iso

wget http://boot.ipxe.org/ipxe.iso

(2)$ lsblk
NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
:

sdd       8:48   1  57.9G  0 disk
├─sdd1    8:49   1 476.9M  0 part /run/media/treehrt/fat
├─sdd2    8:50   1     1K  0 part
├─sdd5    8:53   1   4.7G  0 part /run/media/treehrt/cdc78728-9b69-415f-8029-e9a
├─sdd6    8:54   1   4.7G  0 part /run/media/treehrt/86a0e3b0-ef7b-4d65-8340-874
├─sdd7    8:55   1   953M  0 part /run/media/treehrt/a624da69-9c7d-45c6-8f58-e04
├─sdd8    8:56   1   8.4G  0 part /run/media/treehrt/1012f56f-f864-4552-8622-6e7
├─sdd9    8:57   1   4.7G  0 part /run/media/treehrt/b8ab1e6f-7c6c-4e5d-845e-913
├─sdd10   8:58   1   1.9G  0 part
└─sdd11   8:59   1  32.2G  0 part /run/media/treehrt/298f4731-ba80-4c91-9873-3eb
:

(3)

$ umount /run/media/treehrt/fat
$ lsblk

:

sdd                             8:48   1  57.9G  0 disk
├─sdd1                          8:49   1 476.9M  0 part
├─sdd2                          8:50   1     1K  0 part
├─sdd5                          8:53   1   4.7G  0 part /run/media/treehrt/cdc78728-9b69-415f-8029-e9a38116d98c
├─sdd6                          8:54   1   4.7G  0 part /run/media/treehrt/86a0e3b0-ef7b-4d65-8340-87411e14175b
├─sdd7                          8:55   1   953M  0 part /run/media/treehrt/a624da69-9c7d-45c6-8f58-e04025123056
├─sdd8                          8:56   1   8.4G  0 part /run/media/treehrt/1012f56f-f864-4552-8622-6e7544824e53
├─sdd9                          8:57   1   4.7G  0 part /run/media/treehrt/b8ab1e6f-7c6c-4e5d-845e-913cfa882f18
├─sdd10                         8:58   1   1.9G  0 part
└─sdd11                         8:59   1  32.2G  0 part /run/media/treehrt/298f4731-ba80-4c91-9873-3ebc10c44fc7
:

(4)$ sudo dd if=ipxe.iso of=/dev/sdd bs=1M
[sudo] password for treehrt:
0+1 records in
0+1 records out
714752 bytes (715 kB, 698 KiB) copied, 0.0490677 s, 14.6 MB/s

 

(5)安裝git

$ sudo apt install -y git

(6)用git取得iPXE 的原始碼:

$git clone git://git.ipxe.org/ipxe.git


(7)編譯產生ipxe.usb

$ cd ipxe/src

$ make

$ make bin/ipxe.usb


(8)列出編譯的結果集:

$ ls bin/ipxe.usb -l
-rw-rw-r-- 1 treehrt treehrt 1409024  1月 25 19:07 bin/ipxe.usb

$ ls bin/ipxe.* -l
-rw-rw-r-- 1 treehrt treehrt  330752  1月 25 19:07 bin/ipxe.dsk
-rwxrwxr-x 1 treehrt treehrt 7925192  1月 25 19:07 bin/ipxe.dsk.tmp
-rw-rw-r-- 1 treehrt treehrt 2018961  1月 25 19:07 bin/ipxe.dsk.tmp.map
-rwxrwxr-x 1 treehrt treehrt 7924788  1月 25 19:07 bin/ipxe.hd.tmp
-rw-rw-r-- 1 treehrt treehrt 2018060  1月 25 19:07 bin/ipxe.hd.tmp.map
-rw-rw-r-- 1 treehrt treehrt   34816  1月 25 19:07 bin/ipxe.iso
-rw-rw-r-- 1 treehrt treehrt  331390  1月 25 19:07 bin/ipxe.lkrn
-rwxrwxr-x 1 treehrt treehrt 7932788  1月 25 19:07 bin/ipxe.lkrn.tmp
-rw-rw-r-- 1 treehrt treehrt 2022448  1月 25 19:07 bin/ipxe.lkrn.tmp.map
-rw-rw-r-- 1 treehrt treehrt  332017  1月 25 19:07 bin/ipxe.pxe
-rwxrwxr-x 1 treehrt treehrt 7942776  1月 25 19:07 bin/ipxe.pxe.tmp
-rw-rw-r-- 1 treehrt treehrt 2027927  1月 25 19:07 bin/ipxe.pxe.tmp.map
-rw-rw-r-- 1 treehrt treehrt 1409024  1月 25 19:07 bin/ipxe.usb

(9)察看檔案系統現況:

$ df
檔案系統         1K-區段      已用      可用 已用% 掛載點

:

/dev/sdd             698       698         0  100% /media/treehrt/iPXE


(10)用dd指令將編妥的bin/ipxe.usb展開寫入usb隨身碟(/dev/sdd)。

$ dd if=bin/ipxe.usb of=/dev/sdd
輸入 2752+0 個紀錄
輸出 2752+0 個紀錄
1409024 bytes (1.4 MB, 1.3 MiB) copied, 0.187105 s, 7.5 MB/s

 

(11)以usb中的ipxe開機成功。

 


select id,article_id,topic,text from lt_articles_text where article_id =477; ok. update lt_articles set num_reads=num_reads +1 where id=477; ok.