Dockerでubuntuを動かしてsudoコマンドを入力するとbash: sudo: command not foundと怒られる

公開日:2018-12-22
最終更新:2018-12-22

起こったこと→sudoコマンドが聞かない

MacでDockerイメージのダウンロード・コンテナの起動・イメージの作成・Docker Hubにプッシュするチュートリアル!の記事で作成したイメージからコンテナを起動させて、色々作業したのちにシャットダウンしようとすると「そんなコマンドないよ!」と怒られました!

# シャットダウンしようとすると「そんなコマンドないよ!」と怒られる  
$ sudo shutdown -h now  
bash: sudo: command not found  

# whichコマンドでも反応なし  
$ which sudo  
$  

whichコマンドはPATHが通っていればフルパスを表示するコマンドなので、sudoがインストールされていない・パスが通っていない、などの原因が考えられます。

PATHはecho $PATHenv | grep PATHで表示できます。

$ env | grep PATH  
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin  

対策:sudoコマンドのインストール

参考:[解決] bash: sudo: command not found

まずaptでsudoコマンドをインストールしてみます。

$ apt update  

$ apt install -y sudo  

# コマンドがインストールされた!!  
$ which sudo  
/usr/bin/sudo  

それでも怒られる時の対策

今回はsudoコマンドがインストールされていなかっただけですが、

・パスが通っていない

・sudoers の env_reset オプションが有効になっている場合

などの理由でコマンドが効かないこともあります。

そういう時は以下を参考にすると幸せになれるかもしれません。

sudo「コマンドが見つかりません」PATHが初期化されているときの対処法

sudo時にPATHを引き継ぐ方法

お疲れ様でした!!

記事が少しでもいいなと思ったらクラップを送ってみよう!
18
+1
@nokonoko1203の技術ブログ

よく一緒に読まれている記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる

技術ブログをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

技術ブログを開設する

Qrunchでアウトプットをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

Markdownで書ける

ログ機能でアウトプットを加速

デザインのカスタマイズが可能

技術ブログ開設

ここから先はアカウント(ブログ)開設が必要です

英数字4文字以上
.qrunch.io
英数字6文字以上
ログインする