Linux ftpwho命令介绍
Linux ftpwho命令是一个用于显示当前连接到FTP服务器的用户信息的工具。它可以显示用户的登录名、登录时间、连接状态以及所在目录。通常情况下,当用户通过FTP客户端成功连接到FTP服务器时,服务器会记录下用户的相关信息。而ftpwho命令可以查看这些记录的信息,以便管理员或其他用户了解当前FTP服务器上的活动情况。
ftpwho命令来自英文词组“FTP who”的缩写,其功能类似于who命令,只不过who命令是用于显示当前登录到系统的用户信息,而ftpwho命令是用于显示当前登录到FTP服务器的用户信息。ftpwho命令是ProFTPD项目的一部分,ProFTPD是一个高性能、可配置的FTP服务器软件,它支持多种操作系统,包括Linux、Unix、Mac OS X等。
Linux ftpwho命令适用的Linux版本
ftpwho命令适用于安装了ProFTPD软件的Linux系统,如果没有安装ProFTPD软件,那么ftpwho命令将无法使用。不同的Linux发行版可能有不同的方式来安装ProFTPD软件,下面列出了一些常见的Linux发行版的安装方法:
- CentOS 7/8:使用yum命令安装ProFTPD软件包,命令如下:
[linux@bashcommandnotfound.cn ~]$ sudo yum install proftpd
- Ubuntu/Debian:使用apt命令安装ProFTPD软件包,命令如下:
[linux@bashcommandnotfound.cn ~]$ sudo apt install proftpd
- Arch Linux:使用pacman命令安装ProFTPD软件包,命令如下:
[linux@bashcommandnotfound.cn ~]$ sudo pacman -S proftpd
安装完成后,可以使用systemctl命令启动或停止ProFTPD服务,命令如下:
[linux@bashcommandnotfound.cn ~]$ sudo systemctl start proftpd
[linux@bashcommandnotfound.cn ~]$ sudo systemctl stop proftpd
Linux ftpwho命令的基本语法
ftpwho命令的基本语法格式如下:
ftpwho [选项]
Linux ftpwho命令的常用选项说明
ftpwho命令的常用选项说明如下表所示:
选项 | 说明 |
---|---|
-h, --help | 显示帮助信息 |
-p, --path scoreboard-path | 指定ProFTPD的运行时记分板文件的完整路径(通过ProFTPD配置文件中的ScoreboardPath指令设置),如果ProFTPD的默认目录被修改了,那么必须使用这个选项来找到ProFTPD的记分板文件 |
-v, --verbose | 显示每个连接的额外信息,如远程主机和当前工作目录 |
Linux ftpwho命令的实例
下面给出一些Linux ftpwho命令的实例,以便更好地理解和使用该命令。
- 查询当前有哪些用户正在登录FTP服务器,可直接使用如下命令:
[linux@bashcommandnotfound.cn ~]$ ftpwho
该命令的输出结果如下:
standalone FTP daemon [2085]:
3547 wyw [1m20s] 1m25s (idle) Service class - 1 user
这表示当前有一个用户wyw登录到FTP服务器,他的进程ID是3547,他已经登录了1分20秒,最近1分25秒没有任何操作,他属于Service class这个服务类。
- 查询当前有哪些用户正在登录FTP服务器,并显示更多的信息,可使用-v选项,如下:
[linux@bashcommandnotfound.cn ~]$ ftpwho -v
该命令的输出结果如下:
standalone FTP daemon [2085]:
3547 wyw [1m20s] 1m25s (idle) Service class - 1 user
192.168.1.100: FTP session opened.
192.168.1.100: USER wyw
192.168.1.100: PASS password
192.168.1.100: CWD /home/wyw
192.168.1.100: PWD
192.168.1.100: Current working directory is '/home/wyw'
这表示当前有一个用户wyw登录到FTP服务器,他的进程ID是3547,他已经登录了1分20秒,最近1分25秒没有任何操作,他属于Service class这个服务类。另外,还显示了他的远程主机是192.168.1.100,他的登录名和密码是wyw和password,他的当前工作目录是/home/wyw,以及他执行过的一些FTP命令。
- 指定ProFTPD的运行时记分板文件的路径,可使用-p选项,如下:
[linux@bashcommandnotfound.cn ~]$ ftpwho -p /var/run/proftpd.scoreboard
该命令的输出结果与不使用-p选项的结果相同,只是指定了ProFTPD的记分板文件的位置,如果ProFTPD的默认目录没有改变,那么这个选项是可选的。
Linux ftpwho命令的注意事项
使用Linux ftpwho命令时,需要注意以下几点:
- ftpwho命令只能显示ProFTPD软件的用户信息,如果使用其他的FTP服务器软件,如vsftpd或pure-ftpd,那么ftpwho命令将无法工作。
- ftpwho命令需要有足够的权限才能访问ProFTPD的记分板文件,否则会报错,如下:
[linux@bashcommandnotfound.cn ~]$ ftpwho
ftpwho: error opening scoreboard: Permission denied
这时可以使用sudo命令提升权限,如下:
[linux@bashcommandnotfound.cn ~]$ sudo ftpwho
- 如果没有用户登录到FTP服务器,那么ftpwho命令将没有任何输出,如下:
[linux@bashcommandnotfound.cn ~]$ ftpwho
[linux@bashcommandnotfound.cn ~]$
- 如果输入的命令不正确,或者没有安装ProFTPD软件,那么会提示命令未找到,如下:
[linux@bashcommandnotfound.cn ~]$ ftpwho -a
bash: ftpwho: command not found
这时可以检查命令的拼写是否正确,或者使用yum或apt等命令安装ProFTPD软件。
评论区