systemd將改變linux主目錄的工作方式

systemd的團隊希望您採用一種新的方式來管理主目錄。稱之為“新方式”是輕描淡寫的,這是Linux的一個真正的正規化轉變。以下是您需要了解的有關systemd homed的所有資訊,它可能會出現在您附近的Linux發行版中。...

systemd的團隊希望您採用一種新的方式來管理主目錄。稱之為“新方式”是輕描淡寫的,這是Linux的一個真正的正規化轉變。以下是您需要了解的有關systemd homed的所有資訊,它可能會出現在您附近的Linux發行版中。

對爭議並不陌生

2010年引入systemd時,Linux社群分成了三個陣營。有人認為這是一種改進,也有人認為這是一種有缺陷的設計,不符合Unix的理念。有些人不在乎這樣或那樣。

反對者的強烈反應是響亮的,激烈的,在某些情況下,幾乎是狂熱的。紅帽公司的軟體工程師、systemd的聯合開發者倫納特·波特林(Lennart Poettering)甚至收到了死亡威脅。

在YouTube上釋出了鼓吹對poetter使用暴力的歌曲,一些網站似乎試圖強迫Linux使用者**systemd。他的合作開發者凱·西弗斯(Kay Sievers)也受到批評和辱罵,但波特林無疑首當其衝。

然而,不到8個月,Fedora就開始使用systemd了。到2013年底,Arch、Debian、Manjaro和Ubuntu都已遷移到systemd。當然,開源的榮耀在於,如果你不喜歡某樣東西,你可以用開原始碼來做你自己的事情。像Devuan這樣的新發行版是Debian的一個分支,它的建立完全是為了避免使用systemd。

相關:如何在Linux系統上管理Systemd服務

$home目錄

在Linux目錄結構中,您所做的一切都駐留在“/home”目錄中。您的資料檔案、影象、音樂和整個個人目錄樹都儲存在這個以您的使用者帳戶命名的目錄中。

應用程式的設定儲存在主資料夾中隱藏的“點目錄”中。如果檔案或目錄名的第一個字元是句點(.),則它是隱藏的。因為這些設定儲存在本地,而不是在中心登錄檔中,因為主目錄的備份包含這些隱藏的檔案和資料夾,所以所有設定也會備份。

當您還原備份並啟動應用程式(如LibreOffice或Thunderbird)時,它會查詢其隱藏目錄。它還可以查詢您的文件首選項、工具欄設定和任何其他自定義設定。雷鳥找到你的電子郵件帳戶資訊和你的電子郵件。您不必經歷緩慢設定每個應用程式的痛苦。

您可以使用ls和-a(all)選項來檢視隱藏的檔案和目錄。首先,鍵入以下內容:

ls

這將顯示常規檔案和目錄。接下來,鍵入以下內容:

ls -a

現在,您可以看到隱藏的檔案和目錄。

systemd將改變linux主目錄的工作方式

因為它是安裝過程中最寶貴的部分,“/home”目錄通常安裝在自己的分割槽或單獨的硬碟上。這樣,如果作業系統或它所在的分割槽發生災難性的事情,您可以重新安裝Linux發行版,也可以換成新的發行版。然後,您可以在“/home”上重新安裝現有的主分割槽

相關:Linux目錄結構,說明

關於你的資料

您的主目錄不僅儲存您的資料,還儲存有關您的資訊。包括你的數字身份的一些屬性。例如,“.ssh”目錄儲存有關您與其他計算機的遠端連線的資訊,以及您生成的任何ssh金鑰。

其他系統屬性(如帳戶使用者名稱、密碼和唯一使用者ID)儲存在“/etc/passwd”和“/etc/shadow”等檔案中。任何人都可以讀取其中的一些屬性,但其他屬性只能由具有root許可權的人讀取。

以下是“/etc/passwd”檔案的內容:

cat /etc/passwd

systemd將改變linux主目錄的工作方式

相關:如何在Linux上使用chfn和usermod更改使用者資料

系統宿主發生了變化

systemd homed更改的目的是提供一個完全可移植的主目錄,其中儲存有您的資料和Linux數字標識。您的UID和所有其他標識和身份驗證機制將只儲存在主目錄中。

由於他們的“所有雞蛋在一個籃子裡”的設計,主目錄是加密的。它們會在您登入時自動解密,並在您登出時再次加密。首選方法是使用Linux統一金鑰設定(LUKS)磁碟加密。但是,還有其他可用的方案,例如fscrypt。

JavaScript物件表示法(JSON)使用者記錄將您的所有身份資訊儲存在一個名為“~/.identity”的目錄中,它是用一個您無法控制的金鑰進行加密簽名的。

每個人的主目錄都安裝在環回裝置上,類似於安裝snap應用程式的方式。這就是主目錄中的目錄樹作為作業系統目錄樹的無縫部分出現的原因。裝載點預設為“/home”/$使用者.homedir“(“$USER”替換為此人的帳戶名)。

什麼是好處(the benefits)?

因為您的主目錄成為所有資料的安全封裝,所以您甚至可以將主目錄放在可移動裝置上。例如,您可以使用USB驅動器在您的工作和家庭計算機或任何其他系統家庭計算機之間移動它。

這就是Poettering所說的“完全可移植的主目錄”的意思。他說,即使你不想在便攜裝置上移動主目錄,這也會使升級和遷移更容易,並提高安全性。

它刪除了他所說的“sidecar資料庫”,其中包含了Poettering認為應該集中的關於您的重要資訊片段。“/etc/passwd”和“/etc/shadow”檔案包含身份驗證資訊和雜湊密碼。但是,它們也儲存了一些資訊,比如您的預設shell,General Electric Comprehensive operation Supervisor(GECOS)欄位。

Poettering說,這些元資料應該合理化,並以有意義的組儲存在每個人的主目錄的JSON記錄中。

管理您的新$home

systemd homed服務透過新的homectl命令列工具進行控制。

有建立使用者和主目錄以及為每個使用者設定儲存限制的選項。你也可以設定密碼,鎖定某人的帳戶,或完全刪除帳戶。使用者可以被檢查,他們的JSON使用者記錄也可以被讀取。

還可以為每個使用者設定時區和其他基於位置的資訊。您可以指定預設shell,甚至可以設定環境變數,以便在有人登入時處於特定狀態。

如果在“/home”目錄中查詢,您會看到systemd homed managed條目,這些條目如下所示,使用者名稱後面附加了“.homedir”:

/home/dave.homedir

記住,這只是一個掛載點。實際加密的主目錄的位置在別處。

限制和問題

systemd homed僅用於人類的使用者帳戶。它無法處理UID小於1000的使用者帳戶。換句話說,根、守護程序、bin等不能使用新方案進行管理。總是需要管理使用者的標準方法。因此,systemd homed不是一個全域性解決方案。

有一個已知的第二十二條軍規需要解決。正如我們前面提到的,一個人的主目錄在他或她登入時被解密。但是,如果有人透過SSH遠端訪問計算機,則無法引用主目錄中的SSH金鑰,因為在該人登入之前,主目錄仍然是加密的。當然,在登入之前,需要對SSH金鑰進行身份驗證。

這是systemd homed團隊已經認識到的問題,但是我們找不到任何關於此修復的參考。我們確信他們會想出一個解決辦法;如果他們不這樣做,那將是一場壯觀的鬧劇。

假設有人把他的主目錄傳輸到一臺新機器上。如果UID已經被其他人在新機器上使用,他將被自動分配一個新的UID。當然,他的所有檔案都必須將其所有權重新分配給新的UID。

目前,這是由chown-R命令的遞迴自動應用程式處理的。在未來,當一個更優雅的方案被開發出來時,這可能會得到不同的處理。這種繁重的方法不考慮作為其他使用者執行的守護程式和程序。

相關:如何從Linux Shell建立和安裝SSH金鑰

這是什麼時候發生的?

這種情況正在發生。程式碼更改於2020年1月20日提交,幷包含在systemd的build 245中,該版本於2020年4月隨Ubuntu20.04釋出。

要檢查您的版本,請鍵入以下內容:

systemd --version

systemd將改變linux主目錄的工作方式

不過,homectl命令還不存在。ubuntu20.04使用傳統的/home目錄,不使用systemd homed。

當然,何時包含和支援SystemdHomed和homectl將取決於各個發行版。

所以,沒有必要讓任何人進入完全的乾草叉和燃燒火炬模式。因為管理使用者和主目錄的標準方法仍將保留,所以我們仍有選擇。

相關:ubuntu20.04 LTS“Focal Fossa”的新功能

  • 發表於 2021-04-02 04:05
  • 閱讀 ( 47 )
  • 分類:網際網路

你可能感興趣的文章

新增使用者(adduser)和使用者新增(useradd)的區別

...者。它有一些旗幟。其中一些如下。 -D預設值 -m建立一個主目錄 -s為使用者定義shell -e禁用使用者帳戶的日期 -b使用者主目錄的基本目錄 -使用者ID -g初始組號 -G按名稱列出的其他組 -c註釋 圖04:預設值 新增使用者的示例如下:...

  • 發佈於 2020-10-19 22:40
  • 閲讀 ( 38 )

最佳化linux系統備份的6個應用程式和技巧

...ntu桌面上的預設工具dejá-dup,只在預設情況下設定為備份主目錄。但這遺漏了一些重要的事情,您將需要輕鬆地恢復您的系統工作秩序。將您的系統視為以下三個部分: ...

  • 發佈於 2021-03-15 01:53
  • 閲讀 ( 42 )

如何控制linux啟動服務和守護程序

... 然而,一旦Debian(Ubuntu軟體包的上游源)切換到systemd,Canonical決定也這樣做。Ubuntu 15.04(生動的Vervet)的釋出是第一個預設情況下使用新的啟動系統的版本。 ...

  • 發佈於 2021-03-15 11:22
  • 閲讀 ( 50 )

沒有systemd的linux:為什麼要使用devuan,debian fork

您可能會對Linux社群的危機感到驚訝。幾年前,systemd init系統的建立加重了許多開發人員和使用者的負擔。大多數基於Linux的作業系統都採用了systemd,但也有一些選擇了另一種方法。 ...

  • 發佈於 2021-03-24 05:46
  • 閲讀 ( 40 )

如何在linux中使用ls命令

... 列出主目錄中的檔案 ...

  • 發佈於 2021-03-26 18:01
  • 閲讀 ( 54 )

啟動linux的9個基本命令

... 在沒有指定位置的情況下,單獨發行cd會將您直接帶到主目錄: ...

  • 發佈於 2021-03-26 18:33
  • 閲讀 ( 58 )

如何在linux中新增使用者

... 2建立具有不同主目錄的使用者 ...

  • 發佈於 2021-03-26 23:29
  • 閲讀 ( 64 )

沒有systemd的最佳linux發行版

當主流Linux發行版採用systemd時,異議者會分叉分發並啟動新專案。那麼,如果您正在尋找非系統發行版,您有什麼選擇?我們來看看。 系統D:快速回顧 在歷史上,Linux系統中的啟動序列是systemv Unix(SysV)引入的初始化系統...

  • 發佈於 2021-03-31 14:20
  • 閲讀 ( 40 )

如何在linux上使用sqlite資料庫瀏覽器

...示例中,它被稱為“資料庫”_轉儲.sql,“它位於我們的主目錄的根目錄中。 選中檔案後,單擊“開啟”,開啟一個檔案儲存對話方塊。現在,您必須命名新資料庫並決定將其儲存在何處。我們稱之為“我們的”geekbase.sqlite3資...

  • 發佈於 2021-03-31 22:56
  • 閲讀 ( 73 )

如何在linux上查詢和刪除斷開的符號連結

...錄可以位於檔案系統樹中的任何位置。 例如,假設您的主目錄中有一個名為“dave link”的符號連結,它指向一個名為“text”的檔案-檔案.txt“位於檔案系統樹的其他位置。在符號連結上使用的命令將自動應用於它所指向的檔案...

  • 發佈於 2021-04-01 09:09
  • 閲讀 ( 48 )
agzx9475
agzx9475

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦