溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

玩轉(zhuǎn)樹莓派——制作包含Windows 10 IoT Core和Raspbian的離線安裝介質(zhì)

發(fā)布時間:2020-10-18 11:00:57 來源:網(wǎng)絡 閱讀:1747 作者:HaoHu 欄目:系統(tǒng)運維

How to make Windows 10 IoT Core offline install media for Raspberry Pi

前幾天在樹莓派上更新Receiver for Linux 13.4,又嘗試在Pi上安裝Visual Studio Code,結果覺得系統(tǒng)有點不正常了,于是打算重新刷一遍。

之前的系統(tǒng)使用了一張16 GB的TF卡,直接使用NOOBS lite進行在線安裝。之前說了這樣安裝有個好處,就是安裝文件本身不占太多的空間,更多的空間可以給系統(tǒng)使用。

可是……下載好慢啊……最關鍵是,下載Windows 10 IoT Core的時候,總是出錯!好不容易下載完了,安裝結束出現(xiàn)了MBR的HASH錯誤!

原因估計是GFW對HTTPS的干擾,SSL通信,你懂的。

N次在線安裝失敗之后,我怒了,搞個離線安裝的卡!

說來容易,做來困難。Raspbian有離線安裝的NOOBS下載,就是官網(wǎng)1 GB左右的那個壓縮包??墒荳indows 10 IoT Core怎么辦呢?

搜索了半天,沒有進展。后來我注意到,當網(wǎng)絡失敗時NOOBS會提示從一個站點下載內(nèi)容失敗。這個站點看上去是在Azure的CDN

https://iottools.blob.core.windows.net/win10iotnoobs/

于是,通過人為制造網(wǎng)絡斷開,獲得了幾個文件的失敗請求:

Windows_IoT.png, os.json, partitions.json, partition_setup.sh, marketing.tar

對照Raspberry的安裝目錄,感覺還缺安裝啟動鏡像和安裝鏡像。我記得之前安裝時會有FFU文件在Windows IoT的安裝目錄,嘗試了一下,不行。打開marketing.tar,和slides_vga目錄的一致,先解個壓放好。

回到安裝Windows IoT失敗的系統(tǒng),通過Raspbian掛載的那幾個分區(qū),挨個打開看。有一個叫Srcatch的分區(qū)吸引了我,里面有大量的LOG文件,最重要的,有一個ISO文件,難道這就是安裝鏡像?先復制過來!還有一些Linux下的文件例如installtool-1.0之類。再次嘗試啟動,當然還是失敗了……

感覺這樣是不夠的。既然Windows自己會創(chuàng)建這些分區(qū),那么這些下載和復制的初始化動作一定有跡可選,嗯,蛛絲馬跡應該在json文件和sh文件里。

先打開partitions.json,從名字來看,這是個分區(qū)描述文件,很快就讓我發(fā)現(xiàn)的蛛絲馬跡:

玩轉(zhuǎn)樹莓派——制作包含Windows 10 IoT Core和Raspbian的離線安裝介質(zhì)

圖中高亮部分,就是類似啟動安裝環(huán)境的壓縮包。你看到的這個“tarball”參數(shù),已經(jīng)被我替換成猜測的本地路徑而不是需要下載的遠程路徑。當然,我也順手下載了一份放到我前面做的文件夾里。

這樣看來,啟動需要的文件已經(jīng)齊了??稍俅伟惭b時,還是去網(wǎng)上下載,離線失敗……

繼續(xù)。接下來是查看partition_setup.sh,我感覺這個文件完成了整個安裝過程。為了能夠明白這個過程,我這個Linux小白仔細地讀起了Shell文件??戳藘蛇呏?,感覺需要改兩個地方,一個是URL(后來發(fā)現(xiàn)這是由instaltool生成的,有時間在研究吧),一個是Image路徑。于是,把第一個參數(shù)也改成我猜測的掛載路徑。

玩轉(zhuǎn)樹莓派——制作包含Windows 10 IoT Core和Raspbian的離線安裝介質(zhì)

再次啟動NOOBS,終于能離線安裝了……淚奔……可是,為啥Windows IoT在NOOBS選擇的時候,沒有圖標呢?我不是×××座,可我也不能忍……

繼續(xù)改os.json。

玩轉(zhuǎn)樹莓派——制作包含Windows 10 IoT Core和Raspbian的離線安裝介質(zhì)

這一次,終于完美……

對了,其實一開始我失敗了好多次,就是做完卡啟動后,一直卡在NOOBS初始化階段,等了一晚都不好使。于是我去NOOBS的github上看說明:

https://github.com/raspberrypi/noobs

recoevry.cmdline中在試了很多參數(shù),都沒效果。最后,發(fā)現(xiàn)一個神秘的參數(shù):runinstaller。這個參數(shù)會自動開啟分區(qū)調(diào)整,然后啟動NOOBS的安裝過程。

為了方便,可以直接從github上下載修改過的上述json和sh文件:

https://github.com/HaoHoo/Windows-10-IoT

如果需要ISO文件的話,可以留言我放網(wǎng)盤。

最后的最后,小結一下整個過程:

1、使用SDformatter來格式化SD/TF卡,如果之前已經(jīng)做過NOOBS,可以使用diskpart的clean清除卡上的所有分區(qū)。格式化時,務必開啟“邏輯大小調(diào)整”

玩轉(zhuǎn)樹莓派——制作包含Windows 10 IoT Core和Raspbian的離線安裝介質(zhì)    玩轉(zhuǎn)樹莓派——制作包含Windows 10 IoT Core和Raspbian的離線安裝介質(zhì)

2、下載NOOBS的壓縮包,可以選擇1 GB的,解壓到SD/TF卡

3、在os目錄下,新建Windows_10_IoT_Core目錄,并將前面提及的文件全部復制進去。記住,Linux區(qū)分大小寫!

4、修改recovery.cmdline文件,加入runinstaller。(第一次解壓的文件包含,可選。以后如果再次換卡使用,記得修改)

5、插卡啟動樹莓派,開始安裝過程。

 

Windows 10 IoT Core對SD/TF卡的要求要高于Raspbian,如果可以,選擇16GB Class 10以上的卡為佳。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI