无忧启动论坛

标题: 20220507:RyanBoot 小白「云端系統」iPXE usb/iso Secure/Bios 安裝/救援 Linux/Winpe [打印本页]

作者: hkkitlee    时间: 2019-7-7 00:55
标题: 20220507:RyanBoot 小白「云端系統」iPXE usb/iso Secure/Bios 安裝/救援 Linux/Winpe
本帖最后由 hkkitlee 于 2022-5-7 09:37 编辑

Ryanboot - 小白「云端系统」
拒絕病毒!拒絕流氓!拒絕廣告!


本軟件的由來:出於幫朋友重灌,掃毒,恢復文件誤刪之類的操作。往往需要在機器面前才可以操作。因此本人「組合」成這個只有不足40MB的usb影像檔。用來遠程控制解決大部份的操作以節省交通時間。

本分享帖是以本軟件由編譯,組合,制作影像檔;伺服器軟件設定。

本影像檔由以下軟件組成/鳴謝
ValdikSS
iPXE

請注意!請注意!請注意!


首頁: https://hkkitlee.ddns.net:9000 Github Gitee
Ryanboot Github Gitee wuyou ecoo.top以Apache License 2.0發佈
Ryanboot-offical-linux-netbooter Github Gitee wuyou
ecoo.top 以GNU General Public License v3.0發佈
RPBL Ryanboot P2P/BitTorrent Boot Linux Github Gitee wuyou
ecoo.top 以GNU General Public License v3.0發佈

[教學]網絡啟動RyanTC—Tinycore臨時PXE server wuyou ecoo.top
16MB RyanTC Linux RamOS PXE Server wuyou ecoo.top

網啟的RyanTC/Debian buster來救援誤刪檔案/壞軌 wuyou ecoo.top


編譯時間作更新參考:Github Gitee

下載:主伺服器 備用 Github Gitee mirror0 mirror1 SourceForge

啟動總覽Map: Github Gitee
日志Changelog: Github Gitee

詳細圖文教學使用 Github Gitee
從你的iPXE伺服器連接至小白雲端啟動系統。
  1. #!ipxe
  2. dhcp
  3. goto start
  4. :start
  5. chain --autofree [url]https://github.com/hkkitlee/Ryanboot/raw/main/chain.ipxe[/url] || chain --autofree [url]https://gitee.com/hkkitlee/Ryanboot/raw/main/chain.ipxe[/url] || chain --autofree [url]http://hkkitlee.ddns.net:8999/chain.ipxe[/url] || goto start
复制代码


iso制作方法 by mygamexxx 感激!!

軟件簡介:本軟件適用於
名稱:wuyou  密碼:本人的無懮論壇名稱

https://distrowatch.com/dwres-mobile.php?resource=links
有空幫忙按下Ryanboot-offical-linux-netbooter 旁邊的recommend 鍵支持一下

我只是想搞搞電腦技術,想著寫個工具途個方便工作;分享出來也無傷大雅。
對於那些我看不懂的言語、對技術沒關係之類的言論,從此表示「沒有回應」。如此沒意思;倒不如努力學習增強能力來得更有意義。



作者: hkkitlee    时间: 2019-7-7 00:55
本帖最后由 hkkitlee 于 2019-7-10 23:08 编辑

伺服器軟件/設定編:

10/07/2019更新:下面比較沉長。希望大家先閱讀原理,軟件之間關係,明白了再了解配置
原理會不變,軟件配置就是因應不同的情況而有改變。所以最後最後才看配置文件。否則便很難明白配置了些什麼出來。希望大家明白我的用心。

其實在我學習建立pxe伺服器的時候碰了數不盡的釘子;無菜單到有菜單,有菜單又啟動不了;啟動了又核心錯誤;之後才發現bios/uefi是兩種不同的啟動;自動連線;研究secure boot啟動(最後用現成工具ValdikSS合併);不是向大家炫耀(我也菜鳥!曾經不明白過!比我捧的也大有人在),而是希望給大家信心/恆心。

因為以前學習時找的教學帖、文件,只會叫你裝什麼,什麼指令啟動;當學習者環境情況有變時,即使一對一做也有網絡/啟動問題(我就是從這情況中跌跌碰碰才學出來)。所以,有心學建立(尤其是linux)伺服器希望不要怕多字,學懂原理,因環境作適當配置,一步一步明白實踐建立出你們自己的pxe server。

有問題會盡量解答。



Centos7 minimal install
DNSMASQ---dhcp proxy
xinetd-tftp
httpd/nginx
firewalld port


Pxe server啟動流程原理:
1網卡啟動pxe

2客戶機執行網卡內的pxe rom向dhcp server經udp port 67/4011發廣播請求3個東西[1自身ip][2bootserver ip(即為xinetd-tftp server ip地址)][3bootserver啟動文件的路徑與名稱]

3客戶網卡得到以上資料,從bootserver經udp port 69下載得到 ipxe引導檔

4ipxe在《客戶機》啟動後用https 向伺服器(httpd/nginx)請求下載操作系統檔並存到內存Ram中,下載完成後啟動

即客戶機網卡pxe ---(udp 67/4011)--->向dhcp伺服器(dnsmasq)發送請求,得到bootserver ip後,客戶機網卡的pxe經udp port 69向bootserver下載引導並執行—->ipxe啟動再向web server下載操作系統並啟動---(https<tcp>)--->OS




本usb影像檔啟動流程原理:
1Bios/UEFI啟動並讀取usb影像啟動ipxe

2客戶機載入網卡驅動向dhcp server發廣播請求自身ip

3客戶網卡得到以上資料,向伺服器(httpd/nginx)請求下載操作系統檔並存到內存Ram中,下載完成後啟動

即usb—->網卡載入執行ipxe(不是原網卡內的pxe rom)---(https<tcp>)--->OS











綜合以上
純pxe server需要dnsmasq,xinetd這兩個軟件作udp傳送引導檔用途。而引導檔即ipxe只是《客戶機》自行下載並執行,伺服器的是完完全全沒有執行過的,最多只是傳送到客戶機。打個比喻,如果你的操作系統檔放在tftp給客戶機下載,那就不需要有httpd伺服了。但udp缺點就是慢。

順帶一提,引導檔有多款的,例如syslinux , grub2等等。如果你已完成dnsmasq, xinetd的設定,也可加入其他引導檔一同選擇。

有個思考的問題:
由於本影像檔不經pxe網絡得到可引導檔,所以就不再需要xinetd了。
那dhcp server(dnsmasq)呢?
答:即使你不需要以下全部3項作啟動用途[1自身ip][2bootserver ip(即為xinetd-tftp server ip地址)][3bootserver啟動文件的路徑與名稱],但第1的自身ip即使你的網絡也是需要的。試想想你家用公司網絡,不只是手機,平板電腦,還有訪客都需要dhcp的。總不能每每手動設定吧!
那就帶出了下面的設定檔為何是dhcp-proxy而不是完整的dhcp設定了

路由器/router一般自帶dhcp server。如果兩個dhcp server在同一個網段是會相撞的,輕則部份電腦網絡癱瘓,重則全網癱瘓。dhcp的功能就是如客戶機ip,網關和網段。而dhcp-proxy就是可以不改變既有的dhcp-option上補齊[2bootserver ip(即為xinetd-tftp server ip地址)][3bootserver啟動文件的路徑與名稱]

Dhcp —-ip分派,網關,網段
Dhcp-proxy—-[2bootserver ip(即為xinetd-tftp server ip地址)][3bootserver啟動文件的路徑與名稱]

當然你也可以在一個dhcp server內設定好所有的dhcp-option,但路由器的dhcp多是閹割版,大部份沒了啟動功能;或者
停用路由的dhcp長期開啟電腦等待一個普通的dhcp請求?



希望各位看完以上明白各軟件之間的責任和流程。
下面就是軟件的設定檔,會因應上面的流程給解說














================================dnsmasq.conf=======================================


#Don't function as a DNS server:
port=0 #不以DNS server作啟動

#Log lots of extra information about DHCP transactions.
log-dhcp #以log在伺服器作記錄

#enable-tftp #以#為記號即此行設定不成立,我的設定是以xinetd-tftp作為tftp伺服,所以這裡無而dnsmasq兼任tftp。
#tftp-root=/var/lib/tftpboot #tftp的設定路徑

#Disable re-use of the DHCP servername and filename fields as extra
#option space. That's to avoid confusing some old or broken DHCP clients.
dhcp-no-override #簡單而言,就是避免與太老舊的網卡相撞。


#以下深藍色的就是設定客戶機所需的PXE啟動檔,在tftp中的名稱與路徑請求,予以回報給客戶機下載的設定路徑,只是路徑,bootserver(tftp)的伺服ip是下面淺藍部份。
dhcp-vendorclass=x86PC,PXEClient:Arch:00000 #BIOS x86
#dhcp-vendorclass=BC_EFI,PXEClient:Arch:00006 #EFI x86-64
#dhcp-vendorclass=BC_EFI,PXEClient:Arch:00007 #EFI x86-64
#dhcp-vendorclass=BC_EFI,PXEClient:Arch:00009 #EFI x86-64

pxe-service=X86PC, "Install Legacy BIOS", undionly.kpxe
pxe-service=IA32_EFI, "Boot BC_EFI", uefi/ipxe.efi
pxe-service=BC_EFI, "Boot BC_EFI", uefi/ipxe.efi
pxe-service=X86-64_EFI, "Boot X86-64", uefi/ipxe.efi



#當下面的tftp伺服器ip與上面的路徑組合在一起,就類似是tftp://tftpserverip/檔名路徑
#pxe-service=tag:BC_EFI,BC_EFI, "Install Linux on BC_EFI UEFI", uefi/ipxe.efi

#dhcp-boot=net:x86PC,undionly.kpxe.0,0,192.168.2.5
#dhcp-boot=net:BC_EFI,uefi/ipxe.efi,0,192.168.2.5

dhcp-range=192.168.2.5,proxy#這個就是設定為dhcp-proxy啟動,並告知客戶機bootserver ip是192.168.2.5。



===============================dnsmasq.conf 完==========================================

dnsmasq解說:
以上各位可以看出,什麼網關,網段,分派客戶ip的工作一個也沒有。只是告訴客戶機bootserver的ip是什麼,引導啟動檔的名稱是什麼,並以dhcp-proxy啟動。其餘的並不參與留待原網絡的dhcp server工作。

那深藍部份的到底是什麼呢?

dhcp-vendorclass=x86PC,PXEClient:Arch:00000 #BIOS x86
#dhcp-vendorclass=BC_EFI,PXEClient:Arch:00006 #EFI x86-64
#dhcp-vendorclass=BC_EFI,PXEClient:Arch:00007 #EFI x86-64
#dhcp-vendorclass=BC_EFI,PXEClient:Arch:00009 #EFI x86-64

dhcp-vendorclass=XXXXXXX#這些設定是基於舊版dnsmasq,還留在此設定是作參考之用。新版如下,如無需要可自行刪除。

pxe-service=X86PC, "Install Legacy BIOS", undionly.kpxe
pxe-service=IA32_EFI, "Boot BC_EFI", uefi/ipxe.efi
pxe-service=BC_EFI, "Boot BC_EFI", uefi/ipxe.efi
pxe-service=X86-64_EFI, "Boot X86-64", uefi/ipxe.efi


大家請留心標點符號,pxe-service=AAA, "BBB", CCC
AAA=不是隨意的。客戶機宣告給dhcp server自已是什麼架構類型(arch)的機器(例如執行環境bios/uefi/32bit/64bit)所以不能自定更改。
BBB=是隨意的。在啟動時你想顯示的文字,可用作說明或除錯
CCC=是隨意的。啟動文件的路徑與名稱。只需符合與tftpd的檔案路徑即可。

以pxe-service=X86PC, "Install Legacy BIOS", undionly.kpxe作解說:
整句就是:如果dnsmasq收到客戶機自己宣告是什麼架構類型的機器X86PC(AAA),就會顯示Install Legacy BIOS(BBB),並告知引導檔的路徑undionly.kpxe(CCC)
那不同的客戶宣告不同的AAA,就會有不同的顯示BBB與得到引導檔的路徑CCC














tftp

===============================tftp=============================================

# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot
        disable                 = yes
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}

================================tftp 完==========================================

xinetd-tftp 解說:
其實沒什麼好寫,因為簡單得不行了
要留意的只有兩樣:
1server_args             = -s /var/lib/tftpboot#就是你設定在伺服機的本機路徑。
2對應上面的CCC引導檔路徑。即在伺服機內看到應該是/var/lib/tftpboot/CCC。




簡單就是:Dnsmasq負起通訊,xinetd-tftp負起傳送引導檔案。
另外關於防火牆設定,因應不發行版的linux所使用的命令都不太相同。所以在此只告知 protocol ,port,請自行開啟
Dnsmasq:67/udp,4011/udp
xinetd-tftp:69/udp


















Ipxe (ipxe只是一個可執行檔)
回應給pcfan120朋友,win/linux的檔案路徑就是放在ipxe格式的配置文件,並編譯進ipxe檔內。
(和下一樓的一鍵生成是一樣的,只是節錄出來):

以下是編譯的命令


======================================================
#!/bin/bash
make clean #編譯前清空舊文件

make bin-x86_64-efi/ipxe.efi EMBED=ipxe.script; #編譯uefi版ipxe
make bin/undionly.kpxe EMBED=ipxe.script; #編譯bios版ipxe
make bin/ipxe.lkrn EMBED=ipxe.script; #編譯usb版ipxe

cp bin/undionly.kpxe /var/lib/tftpboot/ ; #bios版本複製至tftp的路徑
cp bin-x86_64-efi/ipxe.efi /var/lib/tftpboot/uefi/ ; #uefi版本複製至tftp的路徑
==============================================

拆開這句說明make bin-x86_64-efi/ipxe.efi EMBED=ipxe.script;
make bin-x86_64-efi/ipxe.efi #編譯給x86-64,uefi的環境的執行檔(bios環境不運行的)
EMBED=ipxe.script; ipxe.script就是自己寫的配置內容。
全句就是「把對應的配置文件(ipxe.script)作出對x86-64 uefi環境作編譯。

make bin/undionly.kpxe#這句就是給bios pxe啟動的
make bin/ipxe.lkrn#這句就是bios usb啟動的。

關於執行架構方面的問題,簡單點說如下:
1uefi比較方便,一種格式放在pxe,usb都可以啟動的。

2bios比較煩人,不知是否因為「實模式」的關係。pxe格式不能與usb共用。所以才需要分開編譯。
「實模式」指的是bios執行時的16Bit定址模式,詳細請參考「保護模式」「組合語言」之類的書籍文件。
(表達力真的很有限。)


那就看看下面的配置文件了。

配置文件(此為極其簡單的例子,好讓大家易點明白ipxe如何得知啟動的路徑和配置。注意:不是本影像檔內的配置。)
=====================================
  #!ipxe
kernel http://192.168.2.5/boot_templates/debian_8.8/live/vmlinuz
initrd http://192.168.2.5/boot_templates/debian_8.8/live/initrd.img
imgargs vmlinuz boot=live config hooks=filesystem username=live noeject fetch=http://192.168.2.5/boot_templates/debian_8.8/live/filesystem.squashfs
boot

=====================================
假設你打算用http制式傳送啟動文件和你的網頁伺服是在192.168.2.5,當你的ipxe啟動後就會向以上的網址進行下載。
所以你的win/linux盤文件是放在網頁伺服內


httpd只需按你所寫的路徑複製你需要的啟動文件,例如上面的3個:vmlinuz,initrd.img,filesystem.squashfs就可以。
(測試的話可以複製你所寫的設定網址在瀏覽器開啟一下。正常有詢問是否下載即路徑正確。)
httpd的設定我也沒設就直接用的(原設定),外面的教學如山如海。另外就是閣下也不一定要用http來傳送檔案,ftp,sanboot,總之方法一大把




至於Centos7當中的selinux,因為不是每個發行版都有,在往後時間再加入。
作者: hkkitlee    时间: 2019-7-7 00:55
本帖最后由 hkkitlee 于 2021-6-29 12:10 编辑

影像檔篇

以下是自己寫一鍵生成的Linux bash檔,解說在下面


  1. #!/bin/bash
  2. make clean #編譯前清空舊文件

  3. make bin-x86_64-efi/ipxe.efi EMBED=ipxe.script; #編譯uefi版ipxe
  4. make bin/undionly.kpxe EMBED=ipxe.script; #編譯bios版ipxe
  5. make bin/ipxe.lkrn EMBED=ipxe.script; #編譯usb版ipxe

  6. cp bin/undionly.kpxe /var/lib/tftpboot/ ; #bios版本複製至tftp的路徑
  7. cp bin-x86_64-efi/ipxe.efi /var/lib/tftpboot/uefi/ ; #uefi版本複製至tftp的路徑

  8. #以下是創建usb影像檔了

  9. dd if=/dev/zero of=ryan.usb bs=1M count=25 #dd出一個25MB大小的檔案。

  10. #下面是利用gdisk將25MB的檔案當作硬碟般切割成3個邏輯盤。1MB,11MB,13MB
  11. gdisk ryan.usb << EOF
  12. o
  13. y
  14. n


  15. +1M
  16. EF02
  17. n


  18. +11M
  19. EF00
  20. n



  21. 0700
  22. w
  23. y
  24. EOF

  25. #下面是再用gdisk做成hybrid mbr,bios/uefi雙啟動之硬碟格式
  26. gdisk ryan.usb << EOF
  27. r     # recovery and transformation options
  28. h     # make hybrid MBR
  29. 1 2 3 # partition numbers for hybrid MBR
  30. N     # do not place EFI GPT (0xEE) partition first in MBR
  31. EF    # MBR hex code
  32. N     # do not set bootable flag
  33. EF    # MBR hex code
  34. N     # do not set bootable flag
  35. 83    # MBR hex code
  36. Y     # set the bootable flag
  37. x     # extra functionality menu
  38. h     # recompute CHS values in protective/hybrid MBR
  39. w     # write table to disk and exit
  40. Y     # confirm changes
  41. EOF


  42. partprobe;#硬盤數目因分割改變,所以命令系統核心更新硬碟
  43. kpartx -av ryan.usb;#將已分割好的影像檔模擬成硬碟。
  44. mkfs.vfat -F16 -n RYANBOOT /dev/mapper/loop8p2;#將影像檔內的第二邏輯盤格式化成fat16。
  45. mkfs.vfat -F16 -n DATA /dev/mapper/loop8p3;#將影像檔內的第三邏輯盤格式化成fat16。
  46. mount /dev/mapper/loop8p2 efi -o uid=1000,gid=1000,umask=022 ;#掛載剛格式化的第二邏輯盤準備寫入工作。
  47. mount /dev/mapper/loop8p3 data;#掛載剛格式化的第三邏輯盤準備寫入工作。

  48. #利用grub2在特定磁區寫入可啟動資訊
  49. grub2-install --target=x86_64-efi --efi-directory=efi/ --boot-directory=data/boot --removable --recheck
  50. grub2-install --target=i386-pc --recheck --boot-directory=data/boot /dev/loop8

  51. #將剛編譯的uefi版bios版ipxe複製到影像檔中
  52. cp  bin/ipxe.lkrn data/boot/ryan.lkrn;
  53. #將ValdikSS[Secureboot]放複製到影像檔中
  54. cp  -R ../../UEFIinSecureBoot-Disk/v3m/* efi/
  55. cp  bin-x86_64-efi/ipxe.efi efi/EFI/BOOT/grubia32_real.efi;
  56. cp  bin-x86_64-efi/ipxe.efi efi/EFI/BOOT/grubx64_real.efi;

  57. #寫好grub2的設定文件到影像檔內
  58. cat << EOF > data/boot/grub2/grub.cfg
  59. probe -u $root --set=rootuuid
  60. set imgdevpath="/dev/disk/by-uuid/$rootuuid"

  61. insmod part_gpt
  62. insmod fat
  63. insmod part_msdos
  64. insmod all_video
  65. if [ -s $prefix/grubenv ]; then
  66.   load_env
  67. fi
  68. if [ "${next_entry}" ] ; then
  69.    set default="${next_entry}"
  70.    set next_entry=
  71.    save_env next_entry
  72.    set boot_once=true
  73. else
  74.    set default="${saved_entry}"
  75. fi
  76. set timeout=0

  77. menuentry "Lagacy PC Ryan's boot server" {
  78.         linux16  /boot/ryan.lkrn
  79. }


  80. EOF


  81. #卸載兩個邏輯盤
  82. umount efi;
  83. umount data;
  84. #解除由檔案模擬成硬碟設備
  85. kpartx -dv ryan.usb;
  86. #壓縮影像檔
  87. zip ryan.zip ryan.usb;
复制代码



解說一下重點/有趣點:
1要實現雙啟動bios/uefi,就需要Hybrid mbr格式的啟動盤,即便是windows/linux的安裝盤都是一樣。盤內存什麼就隨你喜歡,我就是ipxe+ValdikSS的grub文件。

2kpartx是把影像模擬成設備,即硬盤。所以如果要給影像檔分割,先用kpartx模擬成設備,後gdisk分割,之後格式化,最後就複製你需要的引導/啟動檔入去。

3其實軟件的容量很小,但因為fat16格式最小容量都要約每個邏輯盤10MB,所以你會發現壓縮後的影像檔zip只有11MB,原因就在於檔案系統的問題了,不是軟件的大小了。有興趣自行解壓縮一下查看細節。你格式化過一個只有10MB大的硬盤嗎?哈哈
作者: hkkitlee    时间: 2019-7-7 00:55
本帖最后由 hkkitlee 于 2019-7-15 12:16 编辑

總結:
1pxe是intel發明,其程式碼是內置在你的網卡內。即使沒有操作系統,只要你的網卡有pxe rom也可執行。
2ipxe是一套自行編譯的軟件,是一套可在pxe環境下執行的軟件而已。

10/07/2019更新:完完整整流程是希望更具體讓大家明白,各伺服、軟件何時和做了什麼工作;如何得到引導檔(ipxe,syslinux,grub2)並執行,執行後又如何得到操作系統的檔案並啟動。

以本帖作例的總流程(更詳細分開dhcp 2a 與dhcp-proxy 2b 回應):
1客戶機啟動pxe,向網絡廣播詢問(67/udp,4011/udp)。

2a[客戶機自身ip][網關][網段netmask子掩碼][DNS]等等由原dhcp伺服回答。

2b[bootserver ip][因應機器架構arch的可啟動引導檔的路徑名稱]由dhcp-proxy伺服回答客戶機。

3客戶機接收以上資料後並向bootserver(69/udp)下載dhcp-proxy回報自身架構(bios/uefi/32bit/64bit)的可引導檔(ipxe,syslinux,grub2)。

4客戶機下載完畢(此帖使用ipxe)並執行,跟據已編譯進ipxe的配置文件知道向192.168.2.5發出http下載請求。

5客戶機跟據配置文件下載完成並啟動下載回來的操作系統。










看到朋友pcfan120的關心和提問,我先回答再想想我的帖如何寫提升一下表達能力(畢竟少寫)。

我使用的winpe10大約4XXMB大小,經ipxe用http下載。你當成普通瀏覽器下載就成。
我試過跨慢一點的互聯網,好像是6至7分鐘下載完成。
內聯網保守點計應該20秒內下載完成,15秒內啟動完畢。

另外一個最大容量的是debian live 2.2G,只試過內聯作自用救援測試。
內聯2分鐘內已完成下載並啟動。

其實除了重灌,恢復誤刪,還可以作其他用途
例如:
臨時系統作軟件測試
遠距離教學,實時同步,不再紙上談兵
系統設定如LVM,軟raid之類
全系統跨互聯網備份—-clonezilla,相對ghost只可在本機或內聯網備份更具彈性。
又或者部份資料備份—-rsync,ssh,各大發行版linux系統自帶的工具,也可跨網備份。




當你有實體機,虛擬機需要維護/測試時,有個無盤pxe server當真方便。
再加個ipxe跨網啟動,幫朋友時自己也可以無盤出門。

另外關於自動連線,因為涉及更加多的[網絡知識][winpe/linux等ramos核心啟動參數修改]和[不同類型的伺服軟件],所以有機會再另行開帖講解

作者: pcfan120    时间: 2019-7-7 01:27
多谢分享,有一点没理解,楼主这个只是PXE启动模板镜像并没有沒有操作系統对吧,那么服务器需要放置什么文件及路径来搭建呢,多谢指教
作者: pcfan120    时间: 2019-7-7 01:41
哦,看功能很强大,期待完整的服务器搭建教程
作者: hkkitlee    时间: 2019-7-7 01:41
pcfan120 发表于 2019-7-7 01:27
多谢分享,有一点没理解,楼主这个只是PXE启动模板镜像并没有沒有操作系統对吧,那么服务器需要放置什么文件 ...

pxe 啟動引導 ipxe , ipxe 用https 請求操作系統檔作啟動

即pxe ---(tftp)--->ipxe---(https)--->OS

所以可以跨互聯網作啟動
作者: 熄灭的烟    时间: 2019-7-7 13:23
网站都打不开。
作者: hkkitlee    时间: 2019-7-7 14:12
本帖最后由 hkkitlee 于 2019-7-7 15:02 编辑
熄灭的烟 发表于 2019-7-7 13:23
网站都打不开。


2.私人機器不是全日24小時啟動,如果啟動不了有機會是機器未啟動。我習慣是下午5時至凌晨12時在線

涉及操作系統,請仔細閱讀,後再服用
我還在寫帖中呢
作者: hkkitlee    时间: 2019-7-7 14:18
pcfan120 发表于 2019-7-7 01:41
哦,看功能很强大,期待完整的服务器搭建教程

要你久候了^_^
作者: sghihor    时间: 2019-7-7 21:24
先谢谢大大分享~
作者: hkkitlee    时间: 2019-7-8 10:38
wintoflash 发表于 2019-7-8 08:53
你用来通过secureboot的是 @ValdikSS 的那一套方案?

是啊
作者: sghihor    时间: 2019-7-8 13:38
这个让我想到了,
之前重装了一个苹果本,苹果系统。
什么工具也没用,插上网线,开机按下Command+R。抹掉重装,等着就好了。

作者: hkkitlee    时间: 2019-7-8 14:03
sghihor 发表于 2019-7-8 13:38
这个让我想到了,
之前重装了一个苹果本,苹果系统。
什么工具也没用,插上网线,开机按下Command+R。抹 ...

舊版蘋果電腦可以用pxe啟動的(好像是2015年前的版本)
新版的蘋果機已不是用pxe網啟,他們用自家的boot protocol ,現成的軟件好像叫BSDPy。好像還有docker鏡像。
因為沒有蘋果硬件做測試,提不起實作,所以什麼都是*好像*。
作者: diwu2005    时间: 2019-7-10 16:15
请提供你用的winpe10(大約4XXMB)、debian live 2.2G等下载,并提供操作视频,以便我等小白进行测试操作。因为水平低,看得吃力,希望有个更明了的教程
作者: hkkitlee    时间: 2019-7-10 16:37
本帖最后由 hkkitlee 于 2019-7-10 18:52 编辑
diwu2005 发表于 2019-7-10 16:15
请提供你用的winpe10(大約4XXMB)、debian live 2.2G等下载,并提供操作视频,以便我等小白进行测试操作。因 ...


軟件下載:https://hkkitlee.ddns.net:9000/ryan.zip
影像檔寫入軟件:https://hkkitlee.ddns.net:9000/rufus-3.5.exe
首頁: https://hkkitlee.ddns.net:9000
詳細圖文教學使用 https://hkkitlee.ddns.net:9000/setup.html

你只需連接好網線;將影像檔寫入usb;bios/uefi 改成usb啟動;啟動電腦就可以選擇win/linux啟動,不必手動下載操作系統的。
3個準備的步驟上面連結是圖文並茂的。


視頻拍完我不知要放到那裡?
作者: yigeren    时间: 2019-7-10 17:27
这个远程安装引导的前提下,还是需要一个启动U盘作为引导媒介?
作者: hkkitlee    时间: 2019-7-10 18:13
yigeren 发表于 2019-7-10 17:27
这个远程安装引导的前提下,还是需要一个启动U盘作为引导媒介?

跨互聯網就需要...

建議可以先看看2樓什麼是「pxe啟動的原理」。要是你有pxe server就不需要此u盤引導。
作者: yigeren    时间: 2019-7-10 19:46
hkkitlee 发表于 2019-7-10 18:13
跨互聯網就需要...

建議可以先看看2樓什麼是「pxe啟動的原理」。要是你有pxe server就不需要此u盤引導 ...


如果跨互联网需要一个启动U盘来作为引导,那意义就不大(还是我理解有误了?)
PS:有U盘干嘛还需要跨网远程引导启动,直接启动U盘里制作好的PE不更省事,系统包一样存放在U盘里安装

作者: 江南一根葱    时间: 2019-7-10 21:20
我u盘早就支持启动家里的pe了,不过就是用来装逼的,现在可以远程启动家里的硬盘。。
然后也没什么用
作者: 江南一根葱    时间: 2019-7-10 21:21
以前也一直有这个设想,实现mac book类似的在线恢复,好像bios下是很容易实现,uefi下没条件试
作者: hkkitlee    时间: 2019-7-10 21:48
本帖最后由 hkkitlee 于 2019-7-11 11:32 编辑
yigeren 发表于 2019-7-10 19:46
如果跨互联网需要一个启动U盘来作为引导,那意义就不大(还是我理解有误了?)
PS:有U盘干嘛还需要跨 ...


這個就是小白朋友使用及管理的問題了。

使用:
1寫此影像檔是給我的朋友們用。當朋友機器要使用不同系統時他就要不同的下載與寫入u盤。不懂電腦的朋友會感吃力。
2還有就是整個iso長時間的下載,雖然ipxe都需要,但算是半自動。現在只需要手動下載25MB就可多選項啟動。

管理:
1由於ipxe是可以實時讀配置啟動,所以就算是更新/加入/刪除操作系統也不需要更改u盤任何文件。
2承上。例如我只修改系統核心的參數,用手機ssh回伺服器更改完。我的小白朋友就不需要理會u 盤,亦無需重做u盤。

我的出發點就是從小白出發,越不需要操作越好。u盤還只是引導角色,增/刪還是修改我的系統作彈性處理。
作者: hkkitlee    时间: 2019-7-10 21:48
本帖最后由 hkkitlee 于 2019-7-10 22:02 编辑

按急重發了
作者: hkkitlee    时间: 2019-7-10 22:13
本帖最后由 hkkitlee 于 2019-7-10 23:03 编辑
江南一根葱 发表于 2019-7-10 21:20
我u盘早就支持启动家里的pe了,不过就是用来装逼的,现在可以远程启动家里的硬盘。。
然后也没什么用


那我小白的朋友有點多,有點不幸,哈哈。

因為這幾個系統是會自動反向連線回伺服器給我操作的,所以他們也覺得很不錯,不用操作。大家也節省交通時間。懶惰的小白^_^|||
作者: hkkitlee    时间: 2019-7-10 22:35
本帖最后由 hkkitlee 于 2019-7-10 22:53 编辑
江南一根葱 发表于 2019-7-10 21:21
以前也一直有这个设想,实现mac book类似的在线恢复,好像bios下是很容易实现,uefi下没条件试


就著我對winpe 在ipxe/pxe的些小認識:

Bios:以memdisk模擬成ramdisk啟動是沒問題。wimboot也可以。

Uefi:memdisk啟動不了。所以我是使用wimboot來啟動。但wimboot啟動需要在windows目錄下有pxexxx(忘記了名稱)的檔案,如沒有會啟動不了。有部份pe是沒有/刪除了,但可以手動加回boot.wim用wimboot啟動的。

最後我是用wimboot來作配置使bios/uefi實現雙啟動的。



備份/還原我則用clonezilla的。跨網;win/linux檔案格式通吃;全網多機重灌multi-cast也可。

電腦bios有VT的話開個vm玩玩~我大部份測試是在kvm運行。
作者: diwu2005    时间: 2019-7-13 16:05
楼主,朋友用制作的U盘启动电脑,应选择第几个菜单才能自动连上我的电脑(服务器)?我的电脑(服务器)要启动什么软件才能远程控制朋友的电脑进行安装或恢复工作?

作者: hkkitlee    时间: 2019-7-13 22:03
本帖最后由 hkkitlee 于 2019-7-13 22:54 编辑
diwu2005 发表于 2019-7-13 16:05
楼主,朋友用制作的U盘启动电脑,应选择第几个菜单才能自动连上我的电脑(服务器)?我的电脑(服务器)要 ...


不會連上你的伺服器,這是設定問題。


1-6的選項中,選1-4,之後都是不用操作,桌面自動連到我的伺服器。
Debian Live
Winpe10
Install Centos7
Install Fedora

如果你想遠程給朋友控制桌面來安裝/修復,請用vnc, teamviewer之類就可以了。
作者: 熄灭的烟    时间: 2019-7-14 18:31
18点了,还是打不开网站
作者: hkkitlee    时间: 2019-7-14 21:13
熄灭的烟 发表于 2019-7-14 18:31
18点了,还是打不开网站

抱歉,才剛下班.......
現在才開機
作者: hkkitlee    时间: 2019-7-14 23:30
20190714:Debian 10 (Buster)已推出,有時間將會盡快更新。
作者: hkkitlee    时间: 2019-7-14 23:32
20190714:Debian 10 (Buster)已推出,有時間將會盡快更新。
作者: 熄灭的烟    时间: 2019-7-14 23:53
hkkitlee 发表于 2019-7-14 21:13
抱歉,才剛下班.......
現在才開機

大哥,你能不能24小时开机啊。我们的服务器都是24小时开机的。
作者: hkkitlee    时间: 2019-7-15 12:06
熄灭的烟 发表于 2019-7-14 23:53
大哥,你能不能24小时开机啊。我们的服务器都是24小时开机的。

說來悲哀,電費貴,交不起...

你有什麼類型的服務器可以給我們學習一下呢?
作者: hkkitlee    时间: 2019-7-15 12:06
熄灭的烟 发表于 2019-7-14 23:53
大哥,你能不能24小时开机啊。我们的服务器都是24小时开机的。

說來悲哀,電費貴,交不起...

你有什麼類型的服務器可以給我們學習一下呢?
作者: 江南一根葱    时间: 2019-7-15 13:50
要是放在github上的文件可以直启就好了,不过貌似不支持,哪天无聊时在grub2下研究下
放家里路由上的话,貌似用iscsi方式最直接
作者: hkkitlee    时间: 2019-7-15 15:20
yigeren 发表于 2019-7-10 19:46
如果跨互联网需要一个启动U盘来作为引导,那意义就不大(还是我理解有误了?)
PS:有U盘干嘛还需要跨 ...

20190715:加多點補充,此影像檔另一個主要用途是給headness(就是沒有熒光幕的電腦)使用。大部份伺服器都是「沒頭」的。

那當然就要在編譯時要和httpd解除賬號密碼。
作者: hkkitlee    时间: 2019-7-15 15:33
江南一根葱 发表于 2019-7-15 13:50
要是放在github上的文件可以直启就好了,不过貌似不支持,哪天无聊时在grub2下研究下
放家里路由上的话, ...

同感

其實我找了很久的免費網頁空間。只是用途不適合。此類空間多數單個檔案不超20MB。對於操作系統是容不下。
Linux的filesystem.squashfs
Winpe的boot.wim
這些動動手都幾百MB至GB級別。

Iscsi跨不了互聯網哦。還要維護iscsi的影像檔。沒再深究了解。
只是電腦硬碟在遠端,可能網吧會較合適。

收費的網空我又不想付。窮
作者: devilma    时间: 2019-7-15 19:20
不错!赞一个!
作者: 熄灭的烟    时间: 2019-7-16 01:22
hkkitlee 发表于 2019-7-15 12:06
說來悲哀,電費貴,交不起...

你有什麼類型的服務器可以給我們學習一下呢?

用阿里云服务器,一年不到300块钱。或者买主机屋空间,也是5到6百的样子,终身免费!
作者: 江南一根葱    时间: 2019-7-16 09:53
cckp 发表于 2019-7-16 01:53
github上的文件一直都可以直接启动吧?用ipxe

可以?改天试试
作者: 熄灭的烟    时间: 2019-7-21 23:37
浪费我一晚上的时间,用了3个u盘,虚拟机、物理机,bios环境、Uefi环境全都测试了。没有一次成功,要么报错,要么就是过了输入账号密码选择win10
作者: 熄灭的烟    时间: 2019-7-21 23:40
费我一晚上的时间,用了3个u盘,虚拟机、物理机,bios环境、Uefi环境全都测试了。没有一次成功,要么报错,要么就是过了输入账号密码选择win10PE厚一直黑屏。不知道楼主自己测试过没有,有到话楼主放下成功的视频看看。真的是无语死了,白白浪费一晚上。
作者: hkkitlee    时间: 2019-7-22 01:16
本帖最后由 hkkitlee 于 2019-7-22 01:26 编辑
熄灭的烟 发表于 2019-7-21 23:40
费我一晚上的时间,用了3个u盘,虚拟机、物理机,bios环境、Uefi环境全都测试了。没有一次成功,要么报错, ...


112.10.117.24 - wuyou [21/Jul/2019:23:32:37 +0800] "GET /pub/ryanboot HTTP/1.1" 200 51392 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - - [21/Jul/2019:23:32:37 +0800] "GET /pub/rwin10pe/EFI/MICROSOFT/BOOT/BCD HTTP/1.1" 401 195 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - wuyou [21/Jul/2019:23:32:38 +0800] "GET /pub/rwin10pe/EFI/MICROSOFT/BOOT/BCD HTTP/1.1" 200 16384 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - - [21/Jul/2019:23:32:38 +0800] "GET /pub/rwin10pe/EFI/BOOT/bootx64.efi HTTP/1.1" 401 195 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - wuyou [21/Jul/2019:23:32:38 +0800] "GET /pub/rwin10pe/EFI/BOOT/bootx64.efi HTTP/1.1" 200 1354480 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - - [21/Jul/2019:23:32:40 +0800] "GET /pub/rwin10pe/Boot/bcd HTTP/1.1" 401 195 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - wuyou [21/Jul/2019:23:32:40 +0800] "GET /pub/rwin10pe/Boot/bcd HTTP/1.1" 200 28672 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - - [21/Jul/2019:23:32:40 +0800] "GET /pub/rwin10pe/Boot/boot.sdi HTTP/1.1" 401 195 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - wuyou [21/Jul/2019:23:32:40 +0800] "GET /pub/rwin10pe/Boot/boot.sdi HTTP/1.1" 200 983040 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - - [21/Jul/2019:23:32:42 +0800] "GET /pub/rwin10pe/Boot/zh-cn/bootmgr.exe.mui HTTP/1.1" 401 195 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - wuyou [21/Jul/2019:23:32:42 +0800] "GET /pub/rwin10pe/Boot/zh-cn/bootmgr.exe.mui HTTP/1.1" 200 63840 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - - [21/Jul/2019:23:32:42 +0800] "GET /pub/rwin10pe/BOOTMGR HTTP/1.1" 401 195 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - wuyou [21/Jul/2019:23:32:42 +0800] "GET /pub/rwin10pe/BOOTMGR HTTP/1.1" 200 395268 "-" "iPXE/1.0.0+ (ebf2)"
112.10.117.24 - - [21/Jul/2019:23:32:43 +0800] "GET /pub/rwin10pe/sources/boot.wim HTTP/1.1" 401 195 "-" "iPXE/1.0.0+ (ebf2)"

你啟動時見到企鵝已經是在我主機下載啦。賬密正確,按下winpe你網卡會不斷閃你留意沒有?你有耐心等完麼?
浪費就不要再試喇!
老實說,我沒必要証實給你看。我不太喜歡閣下言語談吐。
Kvm的圖已拍在教學帖,實體機也用了很久。網絡上的信息從來都是信不信由你
作者: 熄灭的烟    时间: 2019-7-22 19:45
hkkitlee 发表于 2019-7-22 01:16
112.10.117.24 - wuyou [21/Jul/2019:23:32:37 +0800] "GET /pub/ryanboot HTTP/1.1" 200 51392 "-" "i ...

是见到一只企鹅后,然后输入帐密,然后选择win10pe,然后就一直黑屏,没有任何画面显示!
作者: hkkitlee    时间: 2019-7-22 20:35
本帖最后由 hkkitlee 于 2019-7-22 20:45 编辑
熄灭的烟 发表于 2019-7-22 19:45
是见到一只企鹅后,然后输入帐密,然后选择win10pe,然后就一直黑屏,没有任何画面显示!


你看見企鵝已可排除ipxe沒有你網卡驅動了

那到底:「按下winpe後,你網卡有沒有不斷閃?

黑屏是我設,正常的

還得要視乎你家網速,你要是慢還沒下載完又怎會啟動。自己排除一下吧
作者: 熄灭的烟    时间: 2019-7-22 20:58
正在测试。我提个意见啊,楼主能不能不要设置黑屏,设置成下载状态可见行吗?方便用户测试的时候了解到底进行到哪一步了,下载的文件百分比情况等等....
作者: hkkitlee    时间: 2019-7-22 21:07
熄灭的烟 发表于 2019-7-22 20:58
正在测试。我提个意见啊,楼主能不能不要设置黑屏,设置成下载状态可见行吗?方便用户测试的时候了解到底进 ...

明白你意思。

我設黑屏是作最低限度的伺服器保護。

其他用戶也可以留意網卡訊號燈排錯。
作者: 熄灭的烟    时间: 2019-7-22 21:29
hkkitlee 发表于 2019-7-22 21:07
明白你意思。

我設黑屏是作最低限度的伺服器保護。

已经半小时过去了,还是黑屏状态。网卡灯在闪,但频率不高。你后台看看我还在连线下载状态吗?
作者: 熄灭的烟    时间: 2019-7-22 21:30
黑屏半小时后这样啦!

image.jpg (25.95 KB, 下载次数: 373)

image.jpg

作者: hkkitlee    时间: 2019-7-22 22:02
熄灭的烟 发表于 2019-7-22 21:30
黑屏半小时后这样啦!

https://github.com/ValdikSS/Super-UEFIinSecureBoot-Disk

我都試過舊版本的uefi bios有時候會enroll 不到
你uefi bios 開了secure boot:
1那你的uefi bios secure boot設了user mode嗎?
2有enroll key嗎?

有需要請看看原版如何在secure boot啟動並 enroll key
作者: 熄灭的烟    时间: 2019-7-22 22:32
hkkitlee 发表于 2019-7-22 22:02
https://github.com/ValdikSS/Super-UEFIinSecureBoot-Disk

我都試過舊版本的uefi bios有時候會enroll ...

没有开启secure boot
作者: 熄灭的烟    时间: 2019-7-22 22:33
hkkitlee 发表于 2019-7-22 22:02
https://github.com/ValdikSS/Super-UEFIinSecureBoot-Disk

我都試過舊版本的uefi bios有時候會enroll ...

BIOS下直接就死机了,只能关机后在重新开机。UEFI模式还能返回蓝屏错误画面。
作者: hkkitlee    时间: 2019-7-22 22:44
本帖最后由 hkkitlee 于 2019-7-22 22:47 编辑
熄灭的烟 发表于 2019-7-22 22:33
BIOS下直接就死机了,只能关机后在重新开机。UEFI模式还能返回蓝屏错误画面。


是否在同一機器上可選bios/uefi?

如是請看一下bios是否選了uefi CSM,請反選看一下。重點是網卡用bios驅動還是uefi驅動,請確保兩個選項是一致的。

還有,用什麼網卡?
作者: 熄灭的烟    时间: 2019-7-22 22:48
hkkitlee 发表于 2019-7-22 22:44
是否在同一機器上可選bios/uefi?

如是請看一下bios是否選了uefi CSM,請反選看一下。重點是網卡用bios ...

是同一机器上选择BIOS/UEFI的,网卡也是根据BIOS/UEFI这两种模式启动的。我个人觉得还是放开黑屏的好。这样死在那个状态都知道,总比死在哪里,两眼一抹黑要好哇!
作者: hkkitlee    时间: 2019-7-22 23:06
本帖最后由 hkkitlee 于 2019-7-22 23:09 编辑
熄灭的烟 发表于 2019-7-22 22:48
是同一机器上选择BIOS/UEFI的,网卡也是根据BIOS/UEFI这两种模式启动的。我个人觉得还是放开黑屏的好。这 ...


那是什麼型號網卡?x2
這個grubx64_real.efi就是valdikss引導我的ipxe啦!正奇怪沒開secure boot??

兩個模式都同時不行,我可當真聞所未聞!
你見小企鵝就已代表網絡,伺服器暢通。之後啟動就全靠客戶機自己了。

黑屏就是成功並下載中,錯誤是會直接返回。

有個memtest 在底下不用輸賬號的,試過沒有?
作者: 熄灭的烟    时间: 2019-7-22 23:07
经过N次测试,终于成功了一次,不容易啊!

image.jpg (58.66 KB, 下载次数: 372)

image.jpg

作者: 熄灭的烟    时间: 2019-7-22 23:14
uefi模式且关闭secure boot环境下成功一次!
作者: hkkitlee    时间: 2019-7-23 00:19
熄灭的烟 发表于 2019-7-22 23:14
uefi模式且关闭secure boot环境下成功一次!

恭喜啟動成功

話說之前不是沒開secure boot的嗎?

請明白,valdikss(shim.efi/mokmanger.efi,modify grub),ipxe都算是比較底層軟件。再低一點應該是bios/uefi了。bios/uefi的設定足以舉足輕重、網卡型號(對應ipxe硬件)、網絡是否暢通,都影響成功與否。
作者: hkkitlee    时间: 2019-7-23 00:19
熄灭的烟 发表于 2019-7-22 23:14
uefi模式且关闭secure boot环境下成功一次!

恭喜啟動成功

話說之前不是沒開secure boot的嗎?

請明白,valdikss(shim.efi/mokmanger.efi,modify grub),ipxe都算是比較底層軟件。再低一點應該是bios/uefi了。bios/uefi的設定足以舉足輕重、網卡型號(對應ipxe硬件)、網絡是否暢通,都影響成功與否。
作者: 熄灭的烟    时间: 2019-7-23 08:35
secure boot确实没有开。另bios始终没有成功!
作者: 熄灭的烟    时间: 2019-7-23 08:39
uefi关闭secure boot成功,开启secure boot失败。bios模式失败
作者: 江南一根葱    时间: 2019-7-24 15:50
cckp 发表于 2019-7-16 01:53
github上的文件一直都可以直接启动吧?用ipxe


[attach]397538[/attach]

果然可以直接启动github上的ipxe菜单,不过github不能上传大于25兆的文件,但完全够了。。。不知道能不能启动其它文件
作者: 江南一根葱    时间: 2019-7-24 15:56

公网启动github上的grub2成功,看来过阵子可以研究ipxe把网络参数传递给grubfm.efi来实现公网启动文件管理了
作者: hkkitlee    时间: 2019-7-24 17:14
江南一根葱 发表于 2019-7-24 15:56
公网启动github上的grub2成功,看来过阵子可以研究ipxe把网络参数传递给grubfm.efi来实现公网启动文件管 ...

恭喜恭喜

Grub2其功能實在是太過強大,作為引導程序簡直是「殺雞的牛刀」。
但其命令配置也相當駭人。

見你想用ipxe 傳遞參數給grubfm.efi,我也沒試過chain其他efi,其待你測試成功。

我在用ipxe前也是編譯grub2作引導,但真的是很很很很.......吃力。
只是看文件,找例都吃不消。當時口中經常唸唸「開個屁winpe/linux也這麼難,老子沒氣試了...」
在grub2面前我敗了。哈哈哈哈~~~
作者: ra25671123    时间: 2019-7-25 04:11
下载不了啊,楼主能发网盘上吗?   
作者: minmax    时间: 2019-7-25 19:10
強大 但下不了
期待更多教程
作者: hkkitlee    时间: 2019-7-26 01:21
minmax 发表于 2019-7-25 19:10
強大 但下不了
期待更多教程

忙於寫另一張帖,忘記了開機......真不好意思^_^‘’
作者: 江南一根葱    时间: 2019-7-26 12:22
本帖最后由 江南一根葱 于 2019-7-26 12:27 编辑

github试验过几次后,这个启动方式被封了
貌似隔天又正常
作者: guzhentao    时间: 2019-7-28 23:34
我写入以后BIOS设置了就是启动不了啊

作者: hkkitlee    时间: 2019-7-28 23:54
guzhentao 发表于 2019-7-28 23:34
我写入以后BIOS设置了就是启动不了啊

有第二台機器試試這個http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1

這是ipxe關於bios的幾個編譯問題.
作者: hkkitlee    时间: 2019-7-29 12:52
guzhentao 发表于 2019-7-28 23:34
我写入以后BIOS设置了就是启动不了啊

剛想起可能是屏幕解像度問題, 請再下載試一下
作者: 2012longpei    时间: 2019-8-6 16:02
向香港LINUX爱好者致敬
作者: hkkitlee    时间: 2019-8-18 04:04
本帖最后由 hkkitlee 于 2019-8-18 04:23 编辑
2012longpei 发表于 2019-8-6 16:02
向香港LINUX爱好者致敬


你好
作者: hkkitlee    时间: 2019-8-18 04:05
本帖最后由 hkkitlee 于 2019-8-18 04:23 编辑

新增iPXE編譯環境
詳見changelog
作者: 江南一根葱    时间: 2019-8-24 14:41
hkkitlee 发表于 2019-8-18 04:05
新增iPXE編譯環境
詳見changelog

请教下tinycore认不到realtek螃蟹网卡,是要怎么添加新驱动上去,我编译的时候勾了不少驱动貌似还出现启了后取不到ip地址
作者: hkkitlee    时间: 2019-8-24 20:50
江南一根葱 发表于 2019-8-24 14:41
请教下tinycore认不到realtek螃蟹网卡,是要怎么添加新驱动上去,我编译的时候勾了不少驱动貌似还出现启 ...

看看是網卡反應太慢趕不切回應核心還是真的沒驅動?
你網卡是usb還是pci的?
作者: 江南一根葱    时间: 2019-8-24 20:55
hkkitlee 发表于 2019-8-24 20:50
看看是網卡反應太慢趕不切回應核心還是真的沒驅動?
你網卡是usb還是pci的?

暂时解决了,我还原到以前的快照再编译是可以的,可能我在操作的时候驱动不完整了。。现在弄了个新的内核在等它慢慢编译。。。
作者: 2013mqqdg    时间: 2019-9-27 12:05
请问楼主,Install Debian via SSH,这是一种远程安装方式吧。能展试一下菜单文件吗,是通过ssh链接并反弹x11窗口吗
作者: hkkitlee    时间: 2019-9-27 15:45
本帖最后由 hkkitlee 于 2019-9-27 15:49 编辑
2013mqqdg 发表于 2019-9-27 12:05
请问楼主,Install Debian via SSH,这是一种远程安装方式吧。能展试一下菜单文件吗,是通过ssh链接并反弹x ...


#!ipxe

kernel debian/linux <other args>
initrd debian/initrd.gz
initrd debian/preseed.cfg preseed.cfg
boot


想你明白的是,debian 要用ssh遠端安裝,著手的文件是preseed.cfg;
1不是在ipxe直接加核心參數
2ipxe只告訴核心需要額外加載preseed.cfg文件,然後核心根據preseed.cfg啟動某些功能比如啟動ssh

至於preseed.cfg,參考一下官網比較全面:https://wiki.debian.org/DebianInstaller/Preseed

題外話:我已經不用這個方法,所以已經取消了此選項。
作者: 2013mqqdg    时间: 2019-9-27 21:02
hkkitlee 发表于 2019-9-27 15:45
#!ipxe

kernel debian/linux

谢谢楼主啊!!
一值以为会和centos那样能有个Inst.vnc类似的方法呢。网上也搜了好多,没找到对应于debian系的调用远程的方法。后来从江南一根烟到友联电脑,然后发现你的回贴,最后顺路找到你的帖子。你们几个真是厉害啊。研究ipxe也是挺深的。之前网上搜关于pxe远程装机的方案,搜到过一个云方案。cloudboot.发现它是对应于给服务器装系统的方案。好像不适合用于个人电脑处理。它带有客户端用户管理界面,可以对于客户机进行模板配置。希望对你研究pxe方面能帮你开辟新的的思路
作者: hkkitlee    时间: 2019-9-29 11:56
2013mqqdg 发表于 2019-9-27 21:02
谢谢楼主啊!!
一值以为会和centos那样能有个Inst.vnc类似的方法呢。网上也搜了好多,没找到对应于debi ...

大概看過cloudboot,除多了個監控進度的小插件。
其他功能已經有現成組件可用。
作者: hkkitlee    时间: 2019-9-29 23:49
http://bbs.wuyou.net/forum.php?m ... p;extra=#pid3866573
作者: hkkitlee    时间: 2019-10-5 19:09
20191005:
軟件更新,有需要請重新下載
作者: hkkitlee    时间: 2020-1-8 22:50
本帖最后由 hkkitlee 于 2020-1-8 22:54 编辑

changelog:

20200108:
更新:p2p啟動官方Debian Live 10.2
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=418347
軟件更新,請重新下載
作者: linyuuki    时间: 2020-3-10 15:32
有点复杂。繁体看得有点累
作者: Sandro    时间: 2020-4-20 09:08
这个是网络启动U盘吧?很不错,谢谢!
作者: hkkitlee    时间: 2020-4-20 11:02
Sandro 发表于 2020-4-20 09:08
这个是网络启动U盘吧?很不错,谢谢!

對啊,謝謝
作者: liwei_show    时间: 2020-4-21 01:44
谢谢楼主分享
作者: cojad    时间: 2020-5-1 03:15
hkkitlee 发表于 2019-7-7 00:55
伺服器軟件/設定編:

10/07/2019更新:下面比較沉長。希望大家先閱讀原理,軟件之間關係,明白了再了解 ...

非常謝謝樓主願意花時間寫原理教學, 我才有機會認識 ValdikSS 這個可以繞過secureboot的工具
對我受益良多
作者: 时光凉了年少梦    时间: 2020-5-18 21:08
请问一下  自编译ipxe.usb   如何像您一样直接内置菜单到ipxe.usb中,因为我想跨网链接自己的web服务器获取菜单文件
作者: hkkitlee    时间: 2020-5-19 18:14
时光凉了年少梦 发表于 2020-5-18 21:08
请问一下  自编译ipxe.usb   如何像您一样直接内置菜单到ipxe.usb中,因为我想跨网链接自己的web服务器获取 ...

make bin/undionly.kpxe EMBED=myscript.ipxe

或從usb 的loader指定腳本
作者: 时光凉了年少梦    时间: 2020-5-19 18:33
hkkitlee 发表于 2020-5-19 18:14
make bin/undionly.kpxe EMBED=myscript.ipxe

或從usb 的loader指定腳本

undionly.kpxe  这个我基本知道是怎么建立,但是我想生成ipxe.usb然后刻录在USB上就像您附件提供的那种模式一样,我在ipxe的源文件中并没有检索到usb中的loader文件   可以具体指点一下吗?  谢谢

作者: hkkitlee    时间: 2020-5-19 20:45
时光凉了年少梦 发表于 2020-5-19 18:33
undionly.kpxe  这个我基本知道是怎么建立,但是我想生成ipxe.usb然后刻录在USB上就像您附件提供的那种模 ...

https://ipxe.org/appnote/buildtargets

你可以拆開我的影像檔了解一下。我不是直接編譯.usb出來的。
.efi全模式可以共用的。那你知道 .hd .dsk .pdsk .usb有什麼分別嗎?
作者: 2011sxpdwzs    时间: 2020-5-19 21:23
有点蒙。。。。
作者: 时光凉了年少梦    时间: 2020-5-19 23:28
hkkitlee 发表于 2020-5-19 20:45
https://ipxe.org/appnote/buildtargets

你可以拆開我的影像檔了解一下。我不是直接編譯.usb出來的。
...

不同储存介质所用到的文件
我先尝试拆解您的映像  试试 我接触这个没多久 很多都不会  望大佬别介意我等小白
作者: hkkitlee    时间: 2020-5-20 15:46
时光凉了年少梦 发表于 2020-5-19 23:28
不同储存介质所用到的文件
我先尝试拆解您的映像  试试 我接触这个没多久 很多都不会  望大佬别介意我等 ...

問題有素質,當然是不介意。

粗略講一下,以上的類型{.hd .dsk .pdsk .usb}在legacy bios實模式中,以boot code儲存在分區的mbr (partition)開頭。(以boot code存在就不是「輕易」的以檔案修改啟動項目)。
也會導致後面uefi啟動的困難,因為檔案系統已不能直接格式化fat16/fat32來存放ipxe.efi了。

所以你可以留心一下lkrn這類形,沒有bootcode的,以「檔案」型式存在。

還有就是要應付uefi(secure boot),所以我的是啟動是:
(Legacy bios)grub2+ipxe.lkrn
(Uefi bios)grub2+ipxe.efi

之前我說的usb boot loader 就是grub2了,二次修改只需要把腳本放在ipxe.lkrn下面的initrd就可以。
作者: hkkitlee    时间: 2020-5-20 15:53
时光凉了年少梦 发表于 2020-5-19 23:28
不同储存介质所用到的文件
我先尝试拆解您的映像  试试 我接触这个没多久 很多都不会  望大佬别介意我等 ...

所以你編譯出.usb,把他寫進u盤也能啟動,就是不能掛載!修改!因為他根本不是「檔案」,是mbr/bootcode。
###mbr = master boot record

單一legacy bios沒問題的,加個雙啟動(uefi)馬上修改不了,因uefi是以「檔案」儲存。
作者: 时光凉了年少梦    时间: 2020-5-20 18:44
hkkitlee 发表于 2020-5-20 15:53
所以你編譯出.usb,把他寫進u盤也能啟動,就是不能掛載!修改!因為他根本不是「檔案」,是mbr/bootcode ...

今天扒了一天  官方的文档说明  终于在.usb中  集成了嵌入式菜单了
目前暂时如您所说只能支持legacy bios,EFI  暂且还不行  我先把知识消化一下再看看最后怎么去支持EFI
作者: 江南一根葱    时间: 2020-5-21 10:14
本帖最后由 江南一根葱 于 2020-5-21 10:19 编辑

请教下debian用啥参数启用网络,我用ip=dhcp,netboot=xxx之类貌似没什么用,
我需要修改init文件,想用httpfs,所以要在busybox启用网络,
手工用ifconfig eth0 ${ip}是可以的
目前是grub2传递ip=$net_default_server,再里面ifconfig,貌似有点不太靠谱。好像找到了个udhcpc -i eth0

作者: hkkitlee    时间: 2020-5-21 10:43
江南一根葱 发表于 2020-5-21 10:14
请教下debian用啥参数启用网络,我用ip=dhcp,netboot=xxx之类貌似没什么用,
我需要修改init文件,想用ht ...

你目的是Live還是netinstaller?

要看一下你啟動失敗的畫面訊息。

http server想你設定沒問題;轉過去https就不行的話就是証書問題了。




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3