2013-03-04 24 views
2

我有一個包含filesystem.git又包含這種結構的可引導ISO文件:如何在init中掛載filesystem.git目錄?

dr-xr-xr-x 2 root root 2048 Mär 1 17:10 branches/ 
-r--r--r-- 1 root root 115 Mär 1 17:10 config 
-r--r--r-- 1 root root 73 Mär 1 17:10 description 
-r--r--r-- 1 root root 23 Mär 1 17:10 HEAD 
dr-xr-xr-x 2 root root 2048 Mär 1 17:10 hooks/ 
dr-xr-xr-x 2 root root 2048 Mär 1 17:10 info/ 
dr-xr-xr-x 4 root root 2048 Mär 1 17:10 objects/ 
-r--r--r-- 1 root root 85 Mär 1 17:10 packed-refs 
dr-xr-xr-x 4 root root 2048 Mär 1 17:10 refs/ 
-r--r--r-- 1 root root 82 Mär 1 17:10 shallow 

好像有對象樹內的填充Debian的文件系統和initramfs形象似乎有一個過程來解壓和安裝作爲根文件系統的filesystem.git,但我不知道如何。

任何人都可以解釋,這是如何工作的?

+0

這是一個git(版本控制系統)存儲庫,因此''initramfs'從'filesystem.git/objects'樹中掛載某些東西似乎不太可能。你從哪裏獲得這個磁盤映像?有沒有辦法看看它?是什麼讓你相信它是從存儲庫裏面裝入東西的? – 2013-03-04 11:30:39

+0

是的,你可以下載最新的ISO [here](http://build.webconverger.org/)。我想了解它是如何在內部工作的。我不知道在啓動過程中filesystem.git是如何掛載的,因爲它是打包的,但它必須。我在initrd映像中找到了一個名爲'git-fs'的東西,也許這是用來掛載它的工具。 – JohnnyFromBF 2013-03-04 12:25:34

回答

0

要回答具有相同問題的其他人的問題,可以使用git-fsFUSE一起裝載* .git目錄,如Michael Wild指出的那樣。

0

這不是一個文件系統,它是一個git存儲庫,所以它不會像這樣安裝。

推測它是從安裝介質克隆到系統的根目錄被安裝與git clone然後.git目錄被刪除,否則,使用較低水平的git命令來克隆它,而不會打擾創建執行一些等效操作.git目錄中存儲庫的本地副本。

2

顯然webconverger已創建自定義fuse文件系統:https://github.com/Webconverger/git-fs。在我看來,這是他們分發更新的方式:執行git-fetch,然後更新initramfs以將其git-fs文件系統指向新對象。你需要閱讀sources(或者簡單地問一個開發人員......)以瞭解事情的準確性。

相關問題