からインスピレーションを受ける」無料BSD KDE。 d-busを起動できません。 qdbusに電話できますか?":
私はFreeBSD/TrueOS/DragonFly BSDを使用しており、Portsの一部のソフトウェアで/etc/machine-id
。でそのようなファイルを見ることはできません/etc
。
このファイルは何ですか?私はそれを持っている必要がありますか?可能であればどうすればよいですか?
ベストアンサー1
この/etc/machine-id
ファイルは BSD の標準部分ではありません。これはポートのソフトウェアに浸透し始めたシステム注意です。通常、このファイルがないことは問題ではありません。なぜなら(これまで)、ほとんどのソフトウェアが依存する古い非システム固有のメカニズムがまだ存在するからです。
ここで見つけたソフトウェアマシンID、このオペレーティングシステムのインストールを一意に識別する128ビット数は、システムの再起動時に一貫しており、ハードウェアの変更と(ほとんど)独立しています。
D-Busはそのようなソフトウェアの一つです。これにもコンセプトがあります。マシンID。歴史的に、FreeBSD/TrueOS/DragonFly BSD では、この内容がドキュメント/var/db/dbus/machine-id
で見つかりました。 D-Busは/etc/machine-id
近年好みに応じて変更されていますが、まだそうしなければなりません。戻って古いファイルを見てください。
オペレーティングシステムはデフォルトでこれらのファイルを提供または生成しません。しかし、あなたは間違いなく1つを作ることができます。
- ダウンロードとインストールNoshツールセット
setup-machine-id
スーパーユーザーとしてツールを実行します。これにより、可能であれば、/etc/machine-id
D-Busファイルから既存のIDを読み取ることができます。 (ここでエラーを防ぐには、ツールキット1.36以降を使用してください。)起動するたびにこのファイルを実行する必要はありません。一度作成されると、ファイルはシステムの存続期間中はそのまま残りますが、システムの起動に接続するとファイルが存在するかどうかが
/etc/machine-id
確認されます。同じIDを含むカーネル変数/run/machine-id
。kern.hostuuid
また、/ updateを使用します/etc/hostid
。 - D-Busファイルをシステムの場所に移動し、前者を後者にシンボリックリンクします。
mv -i /var/db/dbus/マシンID /etc/ && ln -s /etc/マシンID /var/db/dbus/
別の方向にシンボリックリンクを作成すると、インストール/etc/machine-id
前に使用できると予想されていたすべてのソフトウェアがクラッシュします。/var
繰り返しますが、これはこのファイルの体系化された意味であり、ポートのソフトウェアに少しずつ入ることがわかります。 uuidgen
(出力を処理する必要があります)または同様のものから生成された新しいコンピュータIDを使用して自分で作成できますdbus-uuidgen
。すでにD-BusがインストールされていてD-BusコンピュータIDファイルが存在する場合、ソフトウェアはシステムの場所で別のソフトウェアを見つけることができるので、それは悪いアプローチです。最初の)マシンIDのDバスの位置を確認してください。
はい、厳密に言えば、これは/usr/local/etc/machine-id
BSD規則に従う必要があります。しかし、私たちが見ているソフトウェアについて話していることを覚えておいてください。/etc/machine-id
最初なぜなら、彼らはsystemdに誤って特定されているからです。また、ファイル内のシステムの場所ではない場所を確認するためにパッチが適用されませんでした。
追加読書
- Lennart Potlinget al。
machine-id
。システムのマニュアルページ。 freedesktop.org. - ジョナサンデボインポラード(2019)。
machine-id
。 スナックガイド。 JdeBPソフトウェア。 - ジョナサンデボインポラード(2017)。
/etc/machine-id
。記者。 スナックガイド。 JdeBPソフトウェア。 - https://unix.stackexchange.com/a/395460/5132