Ssh

有沒有製作多部分或虛擬文件的方法?

  • October 28, 2015

是否有創建引用目錄內容的符號文件的方法?

例如,呼叫:

cat all_keys

將給出與以下相同的輸出:

cat keys/key1+keys/key2+etc...

我嘗試創建一個到目錄的符號連結,嘗試了各種標誌來嘗試獲取數據,甚至嘗試創建一個執行命令的符號連結:

cat keys/*

類似於邏輯卷可以跨越多個物理分區的方式,我想知道我是否可以創建一個跨越任意且靈活的數據長度的文件。

對於上下文:我對用於 ssh authorised_keys 的平面文件系統感到非常沮喪。

我知道我可以使用 SED 刪除關鍵數據,但這看起來很混亂。我敢肯定在這個範圍之外還有其他用途。

提前致謝。

編輯:

最後,我只是使用 SED 在關鍵塊之前進行刪除和註釋以辨識它。

在 CPU 方面,它比我想要的要貴一點,但避免了重複文件夾和文件中的所有關鍵數據或嘗試創建 fuse 目錄。

我知道的唯一方法是編寫一個新的文件系統,可能在使用者級別使用 FUSE 或類似的。這不是棘手的(我已經用大約 200 行 Python 程式碼完成了),但它是一個相當繁瑣的細節工作,它可能不是最適合這個應用程序的(特別是,您需要安裝new FS on .ssh,這意味著您還必須模擬真實的文件系統或傳遞請求以處理需要在其中的其他平面文件)。

另一種選擇可能是編寫一個腳本,該腳本從源目錄(可能很簡單cat dir/* >file)生成平面文件,然後在 cronjob 上執行它或由 inotify 或類似文件觸發。一個簡單的腳本可能是:

while inotifywait ~/ssh_source_dir; do
   cat ~/ssh_source_dir/* >~/.ssh/authorized_keys
done

(這肯定需要針對精確的行為和可靠性進行調整,但它是一個原型。)

引用自:https://unix.stackexchange.com/questions/236606