sudo -i はエラーを返します。

sudo -i はエラーを返します。

ルートを使用して切り替えようとするとsudo -iエラーが発生し/var/tmp/sclDvf3Vx: line 8: -i: command not foundますが...su -引き続き使用する予定です。私は決してLinuxシステム管理者ではないので、環境はまだあいまいです。私の質問は次のとおりです。

  1. エラーが発生するのはなぜですか?
  2. これら2つのコマンドの違いは何ですか?
  3. なぜ他のものを使うのですか?

修正する:

私はCentOSバージョンを使用しています:CentOSバージョン6.6(最終)

これは、以下の説明で実行するように要求されたいくつかのコマンドの出力です。

  • type sudo:sudo is /opt/centos/devtoolset-1.1/root/usr/bin/sudo
  • sudo -V:/var/tmp/sclIU7gkA: line 8: -V: command not found
  • grep'^root:' /etc/passwd:root:x:0:0:root:/root:/bin/bash

修正する:

C++11 サポートが必要だったため、root ではなくユーザーの ~/.bashrc にしばらく前に追加されました。コメントアウトしてsshを再実行すると、エラーなしでsudo -iを実行できます。

if [ "$(gcc -dumpversion)" != "4.7.2" ]; then 
  scl enable devtoolset-1.1 bash
fi

ベストアンサー1

コメントと追加調査によると、開発ツールセットが修正されているようですPATH。残念ながら、これには古いまたは破損しているように見えるsudoコマンドが含まれています。

.bashrc開発ツールセットを次のように変更して再度ログインしてみることをお勧めします。

if [ "$(gcc -dumpversion)" != "4.7.2" ]; then 
  scl enable devtoolset-1.1 bash
  PATH=/usr/bin:$PATH    # We need a working sudo
fi

おすすめ記事