Linux
從 NFS 引導的 Linux 沒有 su 命令的權限
我已經從
NFS
Android 系統啟動了 Linux。現在我必須在minicom
. 但是系統不允許我切換到超級使用者模式。每次我輸入:shell@blaze_tablet:/ $ su
我懂了:
su: permission denied
bootargs
我在 u-boot 中添加了 一個參數,androidboot.selinux=disabled
我認為這會有所幫助。但事實並非如此。問題可能出在某些文件的權限上NFS
嗎?或者我錯過了任何參數bootargs
?更新
我的
/etc/exports
文件內容# /etc/exports: the access control list for filesystems which may be exported # to NFS clients. See exports(5). # # Example for NFSv2 and NFSv3: # /srv/homes hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check) # # Example for NFSv4: # /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check) # /srv/nfs4/homes gss/krb5i(rw,sync,no_subtree_check) /export/rfs *(rw,nohide,insecure,no_subtree_check,async,no_root_squash)
你寫了:
執行結果
ls -l $(type -p su)
-rwxr-xr-x root root 157400 2016-04-21 19:11 su
有你的問題。
su
缺少 setuid 根位。權限應如下所示:-rwsr-xr-x 1 root root 40040 Nov 12 2015 /bin/su
這種情況有三種可能。
- 伺服器上的
su
執行檔不是 setuid(ls -l $(type -p su)
在伺服器上檢查)- 客戶端上的 NFS 掛載不包括 - 或明確排除 - setuid 位。
nosuid
確保您沒有mount
命令,如果有疑問,請添加suid
為顯式選項- Android 安全性的實現與 Unix/Linux 安全性完全不同。如果是這種情況,我無法進一步幫助您