Pythonのインポートはrootでは機能しますが、特定のユーザーには機能しません。

Pythonのインポートはrootでは機能しますが、特定のユーザーには機能しません。

ユーザーアカウントでPythonスクリプトを実行しようとしています。 myuserと呼びます。ログインしたり root を使わなくても dropbox.py スクリプトを実行できるようにしたいです。プログラムは root としてログインするか、root としてログインすると完全に実行されます。しかし、まずrootとしてログインしてから、起動するたびに実行する必要がない方法を見つけたいと思います。

myuserとして実行すると、次のエラーが発生します。

[myuser@localhost Utilities]$ python dropbox.py start
Starting Dropbox...
The Dropbox daemon is not installed!
Run "dropbox start -i" to install the daemon

そのため、提案されているように-iオプションを使用して実行し、次のような結果を得ました。

[myuser@localhost Utilities]$ python dropbox.py start -i
Starting Dropbox...Traceback (most recent call last):
  File "dropbox.py", line 1404, in start
    download()
  File "dropbox.py", line 280, in download
    import pygtk
ImportError: No module named pygtk

私はそれを実行しstrace、おおよそ次のように1行ずつ取得します。

open("/home/myuser/Downloads/pygtk.so", O_RDONLY) = -1 ENOENT (No such file or directory)

両方のプロファイルの .bashrc、.bash_profiles、.bash_history ファイルに違いはありません。また、.configフォルダで違いを確認しましたが、何も見つかりませんでした。

繰り返しますが、最も奇妙なことは、rootではうまく機能しますが、myuserとしてログインしても機能しないことです。ルートは見つけるのが難しいpygtkパッケージをインポートすることに問題はありません。

他のユーザーがパッケージをインポートできるように、ある種のPython権限または設定をどこかに設定する必要がありますか? myuserアカウントにいくつかの構成設定がありませんか?

ありがとうございます!

ベストアンサー1

$ sudo dnf install pygtk2.x86_64

私のために動作します。

おすすめ記事