特定のコマンドが sudo パスにないため、そのコマンドで「sudo」を実行できません。どうすれば適切な権限を付与できますか?

特定のコマンドが sudo パスにないため、そのコマンドで「sudo」を実行できません。どうすれば適切な権限を付与できますか?

を使用して Python パッケージをインストールしたいのですpipが、驚くべきエラーが発生します。

error: could not create '/home/brian/anaconda/lib/python2.7/site-packages/PyDSTool': Permission denied

----------------------------------------
Command "/home/brian/anaconda/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-EIkik9/pydstool/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-ipWEV7-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-EIkik9/pydstool

わかりました。どうやら、コマンドにはホームディレクトリにフォルダーを作成する権限がないようです。もう、面倒です! これに問題があり、どうしたらよいかわかりません...

とにかく、次sudo pip install <package of interest>の理由により、これも機能しません。

brian@brian-linux:~$ sudo pip install pydstool
[sudo] password for brian: 
sudo: pip: command not found

では、次は何をすればいいのでしょうか? sudoers を調べて、sudo がアクセスできない bin パスを手動で追加するのはやめたほうがいいと思います。ホーム ディレクトリが通常どおり動作するほうがいいと思います。メモリ ドライブ ( /SSD 上にあり、/homeHDD にマウントされている) を設定するのは、おそらく非常に悪い考えだったのでしょうか?

答え1

権限が~/おかしくなっているようです。そこにあるすべてのファイルは、あなたが所有しているはずです。 を使用して、find ~/ -user root特にあなたが投稿したエラーのディレクトリの一部が、ルートによって引き継がれているかどうかを確認してください。必要に応じて、権限を自分自身に戻してください。

「pip」はどこで入手し、どのようにインストールしましたか?

答え2

これが機能するかどうかはわかりませんが、ソフトウェア パッケージを開いたりインストールしたりせずにディレクトリを作成してみてください。

なぜホーム ディレクトリに書き込めないのか、本当にわかりません。それはあなたのホーム ディレクトリですよね? 他の人のホーム ディレクトリにインストールしようとしたのであれば、説明がつくでしょう。

ハード ドライブにインストールされている Linux は 1 つだけですか? 複数ある場合、どの論理ドライブにログインしているかが混乱しやすくなります。

sudo su を実行すると、root としてログインし、何でもできるようになります。ただし、システムを壊す可能性も高くなるため、注意してください。

関連情報