次のコマンドを実行すると、テキストファイルが私のお気に入りのエディタ(kate)で開きます。
$ xdg-open text_file
しかし、私のユーザー名がどこにあるか、次のことを試みると、いくつかの警告が表示され、sparhawk
jbidwatcherが開きます。
$ sudo -u sparhawk xdg-open text_file
違いは何ですか?
背景
udevによってトリガされるスクリプトがあるため、rootとして実行されます。ユーザーのデフォルトエディタを使用してログファイルを開こうとします。
これが役に立つかもしれない追加の結果です。
$ xdg-mime query default text/plain
kate.desktop
$ sudo -u sparhawk xdg-mime query default text/plain
jbidwatcher.desktop
$ sudo -iu sparhawk xdg-mime query default text/plain
jbidwatcher.desktop
$ sudo -Eu sparhawk xdg-mime query default text/plain
kate.desktop
$ sudo -iEu sparhawk xdg-mime query default text/plain
jbidwatcher.desktop
私もその後テストを試しましたsudo -i
。すべての場合、出力はですjbidwatcher.desktop
。
答え1
sudo
環境を変えてください。
努力する
printenv
sudo -u sparhawk printenv
違いを確認してください。