侧边栏壁纸
Linux入门自学网博主等级

每日学一条Linux命令,终成Linux大神

  • 累计撰写 725 篇文章
  • 累计创建 143 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Linux ftpwho命令用法详解:如何查看FTP服务器上的用户信息(附实例教程和注意事项)

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软件。

0

评论区