最近、ホームディレクトリをバックアップし、ディレクトリを削除してからバックアップに置き換えて(ガイドに従って)、ホームディレクトリの復号化を行いました。それ以来、ルートアクセスなしでは、IceweaselやLibreOfficeなどの標準の組み込みソフトウェアを実行できなくなります。このプログラムを開こうとするたびに、「Iceweaselはすでに実行中です」(ただし実行されていません)などのエラーが表示されます。しかし、sudoを使ってコマンドラインで実行するとうまくいきます。私はこれが私のホームディレクトリの権限に関連していると思いますが、完全にはわかりません。コマンドラインでsudoを使用せずにホームディレクトリ内のすべてのソフトウェアを実行する権限をユーザーに付与する方法を知りたいです。ホームディレクトリを移動したときに権限が混乱していると確信しています。 (これは単なる推測であり、この種のソフトウェアを実行するためにrootアクセスが必要な理由は不明です。)
答え1
ホームディレクトリを変更する場合は、ホームディレクトリを含む/homeディレクトリにアクセスするにはrootが必要です。おそらくあなたの家には、あなた以外の人が所有するものが含まれている可能性があり、sudoはこれを防ぐことができます。
肯定的なアプローチは次のとおりです。 sudo chown -R myname:users ~myname
もっと慎重な人は、find ~myname \! -user myname
そのような問題を見つけて修正することができます。
「すでに実行中」と表示されるプログラムは、クリーンアップされていないpidファイルまたは残りのUNIXドメインソケットであることがよくあります。