ufw“找不到命令”-但作為root使用者!
我的 Debian 11 VPS 現在執行了大約 2 週 - 今天我只是想分析一下,為什麼我的流量約為 70GiB(按 bashtop 計算)。因此,我在網路的某個地方讀到了有關 nethogs 的資訊,這可能會有所幫助。所以我用我的非root使用者安裝了它,但是sudo-grouped使用者。
sudo apt install nethogs
我無法執行它。
所以我切換到root使用者
是
它仍然沒有工作。所以我只想檢查最重要的東西,ufw。
ufw狀態
輸出:找不到命令
所以 …
- ufw 已安裝
- 但如果我從完整路徑執行它,它會起作用
/usr/sbin/ufw狀態
但我也想知道,到目前為止,傳入的流量是否真的被預設阻止:
/usr/sbin/ufw 狀態詳細
輸出:錯誤:執行 sysctl 時出現問題
事情真的很糟糕……我不知道為什麼?兩週前我做的最後一件事是使用 kuma_install.sh 安裝 kuma-uptime 之後我沒有嘗試 ufw。所以。我的 $PATH 似乎無法正常工作——即使作為 root 使用者也是如此。
我不是專家,但這就是我的 bashrc 文件的樣子(來自 root 使用者):
# ~/.bashrc: executed by bash(1) for non-login shells. # Note: PS1 and umask are already set in /etc/profile. You should not # need this unless you want different defaults for root. # PS1='${debian_chroot:+($debian_chroot)}\h:\w\$ ' # umask 022 # You may uncomment the following lines if you want `ls' to be colorized: # export LS_OPTIONS='--color=auto' # eval "`dircolors`" # alias ls='ls $LS_OPTIONS' # alias ll='ls $LS_OPTIONS -l' # alias l='ls $LS_OPTIONS -lA' # # Some more alias to avoid making mistakes: # alias rm='rm -i' # alias cp='cp -i' # alias mv='mv -i'
和 .profile 文件:
# ~/.profile: executed by Bourne-compatible login shells. if [ "$BASH" ]; then if [ -f ~/.bashrc ]; then . ~/.bashrc fi fi mesg n 2> /dev/null || true
這是通往ufw的路徑:
ufw: /usr/sbin/ufw /etc/ufw /lib/ufw /usr/share/ufw /usr/share/man/man8/ufw.8.gz
這就是我的迴聲 $PATH:
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/snap/bin
希望這是足夠的,有人可以幫助我,你是我最後的希望。否則我必須切換到 ubuntu,也許 ubuntu 表現更好。我希望,我能在你的幫助下解決問題。如果有人能或多或少地告訴我現在到底要做什麼,那就太好了。
這是 Debian 中的預期行為。
nethogs
完整路徑是/usr/sbin/nethogs
.Debian 中的非 root 使用者在
/usr/sbin
其預設 $PATH 中沒有。使用命令
su
,您將成為 root,但環境變數不會被擴展。使用任一:
su -
接著nethogs
sudo su
接著nethogs
sudo nethogs
.此處的更多資訊Can’t access some commands when logged in with non-root user (even after “su root”)。
編輯:你提到切換到 Ubuntu。Ubuntu 非 root 使用者
/usr/sbin
在其預設的 $PATH 中確實有,所以在這裡它可能不那麼令人困惑。但是,無論如何,您都需要 root 訪問權限才能完美執行 nethogs。