web-dev-qa-db-ja.com

ルートでSUにできません: `/ bin / bash:permission denied`

 root @ frankfurt:〜#Sudo adduser newuser 
 Adding user `newuser '... 
 Adding new group` newuser'(1001)... 
 Addingグループ「newuser」を持つ新規ユーザー「newuser」(1001)... 
ホームディレクトリ「/ home/newuser」を作成しています... 
「/ etc/skel」からファイルをコピーしています... 
新しいUNIXパスワードの入力:
新しいUNIXパスワードの再入力:
 passwd:パスワードは正常に更新されました
 newuserのユーザー情報の変更
新しい値を入力します、またはEnterキーを押してデフォルトの
氏名[]:新しい
部屋番号[]:
勤務先電話[]:
自宅電話[]:
その他[]:
情報は正しいですか? [Y/n] y 
 root @ frankfurt:〜#su newuser 
/bin/bashを実行できません:許可が拒否されました
 root @ frankfurt:〜#

ありがとう。

7
thirupal.d

これらのフォルダーの許可をこのように変更すると、別のユーザーにsuできるようになりました。

chmod 755 /
chmod 755 /bin
chmod 755 /lib
11
Ghasem Pahlavan
  1. /binフォルダーの権限を確認してください

    # ls -ld /bin
    drwxr-xr-x 2 root root 4096 May 27 21:39 /bin
    
  2. 利用可能なすべてのシェルの権限を確認してください

    # ls -l /bin/*sh
    -rwxr-xr-x 1 root root 1037464 Sep  1  2015 /bin/bash
    -rwxr-xr-x 1 root root  154072 Feb 17 21:25 /bin/dash
    lrwxrwxrwx 1 root root       4 Sep  1  2015 /bin/rbash -> bash
    lrwxrwxrwx 1 root root       4 Feb 17 21:25 /bin/sh -> dash
    lrwxrwxrwx 1 root root       7 Aug 19  2015 /bin/static-sh -> busybox
    

    一部は、ターゲットを確認する必要があるリンクです

    # ls -lL /bin/*sh
    -rwxr-xr-x 1 root root 1037464 Sep  1  2015 /bin/bash
    -rwxr-xr-x 1 root root  154072 Feb 17 21:25 /bin/dash
    -rwxr-xr-x 1 root root 1037464 Sep  1  2015 /bin/rbash
    -rwxr-xr-x 1 root root  154072 Feb 17 21:25 /bin/sh
    -rwxr-xr-x 1 root root 1964536 Aug 19  2015 /bin/static-sh
    
  3. 別のシェルを試す

    最適なのはbusyboxです。これは静的ビルドであるためです(.soライブラリは不要です)。

    su newuser -s /bin/static-sh
    

    次はdashで、依存性が低く、デフォルトでインストールされます

    su newuser -s /bin/dash
    
  4. ライブラリとその親フォルダの権限を確認し、lddを使用してリストを取得できます

    # ldd /bin/bash
        linux-vdso.so.1 =>  (0x00007ffdefb5a000)
        libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f714bbbd000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f714b9b9000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f714b5ef000)
        /lib64/ld-linux-x86-64.so.2 (0x000055c6bc494000)
    
    # ls -ld /lib /lib/x86_64-linux-gnu /lib64
    drwxr-xr-x 26 root root  4096 May 15 07:41 /lib
    drwxr-xr-x  2 root root  4096 May 14 15:52 /lib64
    drwxr-xr-x  3 root root 16384 May 27 21:39 /lib/x86_64-linux-gnu
    
    # ls -l /lib/x86_64-linux-gnu/libtinfo.so.5 /lib/x86_64-linux-gnu/libdl.so.2 /lib/x86_64-linux-gnu/libc.so.6 /lib64/ld-linux-x86-64.so.2
    lrwxrwxrwx 1 root root 32 Apr 14 23:16 /lib64/ld-linux-x86-64.so.2 -> /lib/x86_64-linux-gnu/ld-2.23.so
    lrwxrwxrwx 1 root root 12 Apr 14 23:16 /lib/x86_64-linux-gnu/libc.so.6 -> libc-2.23.so
    lrwxrwxrwx 1 root root 13 Apr 14 23:16 /lib/x86_64-linux-gnu/libdl.so.2 -> libdl-2.23.so
    lrwxrwxrwx 1 root root 15 Feb 19 09:23 /lib/x86_64-linux-gnu/libtinfo.so.5 -> libtinfo.so.5.9
    

    これらは、ターゲットファイルを確認するために必要な単なるリンクです

    # ls -lH /lib/x86_64-linux-gnu/libtinfo.so.5 /lib/x86_64-linux-gnu/libdl.so.2 /lib/x86_64-linux-gnu/libc.so.6 /lib64/ld-linux-x86-64.so.2
    ##or
    # ls -lL /lib/x86_64-linux-gnu/libtinfo.so.5 /lib/x86_64-linux-gnu/libdl.so.2 /lib/x86_64-linux-gnu/libc.so.6 /lib64/ld-linux-x86-64.so.2
    -rwxr-xr-x 1 root root  162632 Apr 14 23:16 /lib64/ld-linux-x86-64.so.2
    -rwxr-xr-x 1 root root 1864888 Apr 14 23:16 /lib/x86_64-linux-gnu/libc.so.6
    -rw-r--r-- 1 root root   14608 Apr 14 23:16 /lib/x86_64-linux-gnu/libdl.so.2
    -rw-r--r-- 1 root root  167240 Feb 19 09:23 /lib/x86_64-linux-gnu/libtinfo.so.5
    
6
user.dz

/ lib(または/ lib64)内のファイルや/ dev内のファイルのパーミッションに問題がある可能性があります。

それらがルートに属していること、およびde lib dir内の少なくとも一部のファイルがすべてのユーザーによって実行可能であることを確認してください。 「クリーン」なOSと比較して、どのOSがすべて実行可能である必要があるかを確認してください。

たとえば、ls -l /libを実行するファイルの権限と所有者を確認できます。

参照リンク: http://www.tldp.org/LDP/LG/issue52/okopnik.html

3
Salsa

誰にでも知らせるために、私はこのエラーメッセージで同じ問題を抱えていました、そして私のための解決策は次のとおりでした:

chmod 755 /

/の許可を755から750に変更したルートフォルダーの1レベル下のフォルダーにあるすべての非表示の「ドット」ファイルのファイル許可を誤って変更しようとしました。

cd/data; chmod o-rwx。*

2
OliP