😎
-bash: sudo: コマンドが見つかりません
はじめに
take64です。
sudo
コマンドを打つと以下のエラーが出てしまったので、解決策をメモしておきます。
$ sudo docker version
-bash: sudo: コマンドが見つかりません
例えば docker
のコマンドですがこのようなエラーが出てしまいました。
筆者環境
- debian 12.2
そもそもインストールされていない
当たり前のように sudoコマンドを発行していた方は、Linuxインストールしたら普通に入っているという認識かもしれませんが、
入ってない場合もありますので、インストールが必要です。
rootになる
$ su - root
パスワードを入れてrootになります。
aptで検索する
# apt search sudo
結果の中に以下の行を見つけることができると思います。
sudo/stable 1.9.13p3-1+deb12u1 arm64
Provide limited super user privileges to specific users
インストールする
# apt install sudo
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
sudo
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 1826 kB of archives.
After this operation, 6511 kB of additional disk space will be used.
Get:1 http://ftp.riken.jp/Linux/debian/debian bookworm/main arm64 sudo arm64 1.9.13p3-1+deb12u1 [1826 kB]
Fetched 1826 kB in 0s (3901 kB/s)
Selecting previously unselected package sudo.
(Reading database ... 35618 files and directories currently installed.)
Preparing to unpack .../sudo_1.9.13p3-1+deb12u1_arm64.deb ...
Unpacking sudo (1.9.13p3-1+deb12u1) ...
Setting up sudo (1.9.13p3-1+deb12u1) ...
Processing triggers for man-db (2.11.2-2) ...
Processing triggers for libc-bin (2.36-9+deb12u3) ...
使用できるか確認
rootを抜けて、一般ユーザーでsudoコマンドが打てるか確認する
$ sudo docker version
[sudo] take64 のパスワード:
take64 は sudoers ファイルにありません。
sudoersへの追加も必要です。
ユーザーへsudoアクセス権限を付与する
ユーザーをsudoグループに追加します。
# adduser {ここにユーザー名} sudo
# adduser take64 sudo
Adding user `take64' to group `sudo' ...
Done.
ターミナルに入り直す
sudoを使いたいユーザーでLinuxにログインし、rootになり、rootから出ても、「sudoを使いたいユーザー」で、sudoは使えない。
一旦ログアウトして、ログインし直すことで初期化されて権限が適用されている。
$ sudo docker version
Client: Docker Engine - Community
Version: 24.0.7
API version: 1.43
Go version: go1.20.10
Git commit: afdd53b
Built: Thu Oct 26 09:08:15 2023
OS/Arch: linux/arm64
Context: default
...(省略)...
OK!
Discussion