Tôi đang chạy Debian trên Lenovo x220 và nâng cấp các gói của tôi khá thường xuyên. Gần đây tôi phát hiện ra một sự thay đổi trong cách tôi nâng cao sudo
. Thông thường tôi chỉ su
hoặc những sudo
thứ như ví dụ arp-scan -l
.
Tuy nhiên, không chắc chắn tại sao, khi tôi nâng lên sudo -s
và đôi khi với su
tôi thỉnh thoảng nhận được thông báo lỗi, lệnh đó không được tìm thấy. Nhìn vào sudoers
tệp (thông qua visudo
) cũng không giúp được gì vì các biến được đặt và chưa được chạm hoặc sửa đổi. Tôi đã googled một chút công bằng xung quanh nhưng không thể khám phá bất kỳ giải pháp nào giải thích tại sao nó chỉ hoạt động mọi lúc nhưng không nhất quán?
Bất cứ ai có một ý tưởng những gì có thể đã được thay đổi hoặc thay đổi?
// chỉnh sửa - tài liệu dưới đây, tôi đã nâng lên đầu tiên với sudo -s
, lần này tôi có thể tìm thấy lệnh này. Sử dụng sudo -i
đã thành công trong việc tìm kiếm / định vị arp-scan
là tốt. Bằng cách gõ su
tôi không thể chạy lệnh / tìm tệp thực thi.
nomax@debian:~$ sudo -s
[sudo] password for nomax:
root@debian:/home/nomax# arp
arp arpd arp-fingerprint arp-scan
root@debian:/home/nomax# exit
exit
nomax@debian:~$ sudo -i
root@debian:~# arp
arp arpd arp-fingerprint arp-scan
root@debian:~# exit
logout
nomax@debian:~$ su
Password:
root@debian:/home/nomax# arp-scan -l
bash: arp-scan: command not found
root@debian:/home/nomax# exit
exit
nomax@debian:~$ sudo -i
root@debian:~# arp-scan -l
Interface: wlp3s0, datalink type: EN10MB (Ethernet)
su
chuyển sang người dùng root và đường dẫn người dùng root . Những người có thể không giống như con đường bạn tìm kiếm như người dùng. So sánh những người có thể hữu ích.
which arp-scan
và echo ${PATH}
và whoami
và chạy chương trình bằng cách đường dẫn đầy đủ của nó. Điều tra các kịch bản đăng nhập (/ etc / profile, ~ / .profile, ~ root / .profile) có thể hữu ích, như sức mạnh kiểm tra các log file mà sudo sử dụng (xem / var / log / * auth log )
arp-scan
hoạt động sau sudo -i
, không hoạt động sau su
. Luôn luôn.