我的 Debian 11 VPS 现在运行了大约 2 周,今天我只是想分析一下,为什么我的流量约为 70GiB(按 bashtop 计算)。所以我在网上的某个地方读到了有关 nethogs 的内容,这可能会有所帮助。所以我用我的非 root 但 sudo 分组的用户安装了它。
sudo apt安装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
这是我的 echo $PATH:
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/snap/bin
希望这已经足够了,有人可以帮助我,你是我最后的希望。否则我必须切换到ubuntu,也许ubuntu表现更好。我希望,我能在你的帮助下解决问题。如果有人能或多或少地告诉我我现在到底要做什么,那就太好了。
答案1
这是 Debian 中的预期行为。
nethogs
完整路径是/usr/sbin/nethogs
.
/usr/sbin
Debian 中的非 root 用户在其默认 $PATH 中没有。
使用命令,su
您成为 root,但环境变量不会扩展。使用以下任一方法:
su -
进而nethogs
sudo su
进而nethogs
sudo nethogs
。
更多信息请点击此处使用非 root 用户登录时无法访问某些命令(即使在“su root”之后)。
编辑:你提到切换到 Ubuntu。 Ubuntu 非 root 用户的/usr/sbin
默认 $PATH 中确实有,因此这里可能不会那么混乱。但是,无论如何,您都需要 root 访问权限才能完美运行 nethogs。