\r\n\r\n

systemd は Linux のホームディレクトリを変更します。

systemd チームは、あなたのホームディレクトリを管理する新しい方法を採用することを望んでいます。新しい方法」と言っても過言ではなく、リナックスの真のパラダイムシフトと言えるでしょう。ここでは、systemd homed について知る必要のあるすべてのことを説明します。

systemd チームは、あなたのホームディレクトリを管理する新しい方法を採用することを望んでいます。新しい方法」と言っても過言ではなく、Linuxの真のパラダイムシフトと言えるでしょう。ここでは、systemd homed について知る必要のあるすべてのことを説明します。

賛否両論

2010年にsystemdが導入されたとき、Linuxコミュニティは3つの陣営に分かれていました。これを改良と見る人もいれば、Unixの哲学に合わない欠陥設計と見る人もいました。中には、どっちでもいいという人もいました。

反対派からの強い反発は大きく、激しく、場合によっては狂信的ともいえるものだった。Red Hatのソフトウェアエンジニアでsystemdの共同開発者であるLennart Poettering氏は、死の脅迫を受けたこともある。

詩人に対する暴力の行使を擁護する歌がYouTubeに投稿され、Linuxユーザに**systemdを強制しようとするサイトもあったようです。彼の共同開発者Kay Sieversも批判と罵倒を受けましたが、Portlinがその矢面に立ったことは確かです。

しかし、8ヶ月の間に、Fedoraはsystemdを使うようになりました。2013年の終わりまでに、Arch、Debian、Manjaro、Ubuntuはすべてsystemdに移行しました。もちろん、オープンソースの栄光は、何かが気に入らなければ、オープンソースコードで自分自身のことを行うことができるということです。Devuanのような新しいディストリビューションは、systemdを回避するためだけに作られたDebianのブランチです。

関連:LinuxシステムでSystemdサービスを管理する方法

ホームディレクトリ

Linuxのディレクトリ構造では、すべての操作は「/home」ディレクトリに存在する。あなたのデータファイル、画像、音楽、および個人用ディレクトリツリー全体が、あなたのユーザーアカウントにちなんで名付けられたこのディレクトリに格納されます。

アプリケーションの設定は、メインフォルダー内の隠れた「ドットディレクトリ」に保存されます。ファイル名やディレクトリ名の最初の文字がピリオド(.)の場合にすると、非表示になります。これらの設定は中央のレジストリではなくローカルに保存され、ホームディレクトリのバックアップにはこれらの隠しファイルやフォルダーが含まれるため、すべての設定もバックアップされます。

バックアップを復元し、LibreOfficeやThunderbirdなどのアプリケーションを起動すると、その隠しディレクトリが探されます。また、ドキュメントの環境設定、ツールバーの設定、その他のカスタム設定も検索されます。Thunderbirdは、あなたのメールアカウント情報とあなたのメールを見つけます。アプリケーションごとにゆっくり設定するような手間は必要ありません。

lsと-a(all)オプションを使って、隠しファイルや隠しディレクトリを見ることができます。まず、次のように入力します。

ls

これで、通常のファイルとディレクトリが表示されます。次に、次のように入力します。

ls -a

これで、隠しファイルや隠しディレクトリを見ることができます。

インストール作業において最も価値のある部分であるため、「/home」ディレクトリは通常、独自のパーティションまたは別のハードドライブにインストールされます。こうしておけば、OSやそのパーティションに何か致命的な問題が発生しても、Linuxディストリビューションを再インストールしたり、新しいものに切り替えたりすることができるのです。その後、既存のプライマリパーティションを "/home" に再インストールすることができます。

関連:Linuxのディレクトリ構造、説明

お客様に関する情報

ホームディレクトリには、あなたのデータだけでなく、あなたに関する情報も保存されています。これには、デジタル・アイデンティティの一部の属性が含まれます。例えば、「.ssh」ディレクトリには、他のコンピュータへのリモート接続に関する情報や、生成したssh鍵が保存されています。

その他のシステム属性(アカウントのユーザー名、パスワード、固有のユーザーIDなど)は、「/etc/passwd」や「/etc/shadow」などのファイルに格納されています。これらの属性の中には、誰でも読むことができるものもあれば、root権限を持つ人だけが読むことができるものもあります。

以下は、"/etc/passwd "ファイルの内容です。

cat /etc/passwd

関連:Linuxでchfnとusermodを使ってユーザーデータを変更する方法

システムホストが変更されました

systemd の homed 変更の目的は、あなたのデータと Linux の数値識別子が保存される、完全にポータブルなホームディレクトリを提供することです。あなたのUIDとその他のすべての識別および認証メカニズムは、ホームディレクトリにのみ保存されます。

1つのカゴにすべての卵を入れる」設計のため、ホームディレクトリは暗号化されています。ログインすると自動的に復号化され、ログアウトすると再び暗号化されます。Linux Unified Key Setting (LUKS)によるディスク暗号化方式が望ましい。ただし、fscryptなど、他の選択肢もあります。

JavaScript Object Representation (JSON) のユーザーレコードは、すべてのID情報を「~/.identity」というディレクトリに保存し、あなたがコントロールできない鍵で暗号化された状態で署名されています。

みんなのホームディレクトリは、スナップアプリケーションをインストールするのと同じように、ループバックデバイスにインストールされます。ホームディレクトリのディレクトリツリーがOSのディレクトリツリーとシームレスに見えるのは、このためです。マウントポイントはデフォルトで「/home"/$user.homedir」(「$USER」は本人のアカウント名に置き換わります)です。

特典は何ですか?

ホームディレクトリはすべてのデータの安全なラッパーになるため、リムーバブルデバイスにホームディレクトリを置くこともできます。例えば、USBドライブを使用して、職場と自宅のパソコンなど、システムホームパソコン間で移動させることができます。

Poetteringが言う「完全にポータブルなホームディレクトリ」とはそういうことです。ポータブルデバイスでホームディレクトリを移動させなくても、アップグレードや移行が容易になり、セキュリティも向上するという。

サイドカー・データベース」と呼ばれる、ポエタリング氏が一元化すべきと考える重要な情報が格納されたデータベースを削除するのです。etc/passwd」「/etc/shadow」ファイルには、認証情報やハッシュ化されたパスワードが格納されています。ただし、デフォルトのシェル、GECOS(General Electric Comprehensive operation Supervisor)フィールドなどの情報も保持しています。

Poettering氏は、このメタデータを合理化し、各人のホームディレクトリのJSONレコードに意味のあるグループとして保存するべきだと言う。

新しい$homeを管理する

systemd の homed サービスは、新しい homectl コマンドラインツールで制御されます。

ユーザーとホームディレクトリを作成するオプションや、各ユーザーにストレージの制限を設定するオプションがあります。また、パスワードを設定したり、誰かのアカウントをロックしたり、アカウントを完全に削除することも可能です。ユーザーの確認とJSONユーザーレコードの読み込みが可能です。

また、ユーザーごとにタイムゾーンなどの位置情報を設定することも可能です。デフォルトのシェルを指定したり、誰かがログインしたときに特定の状態になるように環境変数を設定することも可能です。

home "ディレクトリを見ると、systemd の homed 管理下のエントリーがあり、ユーザー名に ".homedir" を付加して以下のように表示されます。

/home/dave.homedir

これは単なるマウントポイントであり、暗号化されたホームディレクトリの実際の位置は別の場所にあることを忘れないでください。

限界と問題点

systemd homed は人間のユーザーアカウントにのみ使用されます。UIDが1000未満のユーザーアカウントは扱えません。つまり、root、daemon、binなどは新しいスキームでは管理できないのです。ユーザーを管理する標準的な方法は必ず必要です。したがって、systemd homed はグローバルな解決策ではありません。

陸軍の規則XXIIが知られているが、それに対応する必要がある。先に述べたように、ログイン時にその人のホームディレクトリは復号化される。しかし、誰かがSSHでリモートアクセスした場合、その人がログインするまではホームディレクトリが暗号化されたままなので、ホームディレクトリ内のSSH鍵は参照できません。もちろん、ログインする前にSSHキーの認証が必要です。

これは、systemd homed チームが認識している問題ですが、この修正への言及は見当たりません。きっと解決してくれるだろう。そうでなければ、壮大な茶番劇になってしまうだろう。

ある人が自分のホームディレクトリを新しいマシンに移したとする。もちろん、その人のファイルの所有権はすべて新しいUIDに割り当て直さなければなりません。

現在、これはchown-Rコマンドの再帰的自動適用によって処理されます。将来、よりエレガントなソリューションが開発された際には、別の方法で処理されるかもしれません。この負担の大きい方法は、他のユーザーとして実行されるデーモンやプロセスを考慮に入れていません。

関連:LinuxシェルからSSH鍵を作成・インストールする方法

いつから?

こんなこともあるんですね。このコード変更は2020年1月20日にコミットされ、2020年4月にUbuntu 20.04とともにリリースされたsystemdのビルド245に含まれています。

バージョンを確認するには、次のように入力します。

systemd --version

しかし、homectl コマンドはまだ存在しません。ubuntu 20.04 は従来の /home ディレクトリを使用し、systemd homed は使用しません。

もちろん、SystemdHomed と homectl がいつ含まれ、サポートされるかは、個々のディストリビューションに依存します。

だから、誰も投石器や燃え盛る松明をフル稼働させる必要はないのです。ユーザーとホームディレクトリを管理する標準的な方法は残るので、私たちにはまだ選択肢があります。

関連:ubuntu 20.04 LTSの新機能「Focal Fossa」について

あなたが興味を持っているかもしれない記事

匿名者
匿名者

0 件の投稿

作家リスト

  1. admin 0 投稿
  2. 匿名者 0 投稿

おすすめ