判断方法:1、利用netstat命令查看指定端口是否开启,语法为“netstat -an | grep '22'”;2、利用ps命令查看进程信息,若显示进程信息表示sftp已经开启,语法为“ps -ef | grep sftp”。
本教程操作环境:linux7.3系统、Dell G3电脑。
rpm 指令能够检测到的只有通过 rpm 或者 yum 进行安装的软件包,如果是通过其他方式安装的软件,是查不到的。
通过 rpm 指令检测 vsftpd 是否安装:rpm -qa | grep vsftpd
。
因为服务器拿到之后就可以用 sftp 上传文件了,所以肯定是存在这样一个 sftp 服务的,且该服务已开启。在确认不是通过包管理器安装的情况下,可以通过查询进程或端口来查看服务。
具体操作
1、查看下端口是不是开启
netstat -an | grep '22'
22 端口其实查的是 ssh 服务,所以也可以用 netstat -an | grep 'ssh' 查询。
2、查看进程:
ps -ef | grep sftp
值得注意的是,这两种方法都需要在开启一个 sftp 客户端并已经连接了服务器的情况下才能查出来。除非是以 vsftpd 形式运行。
[notice]vsftpd 以 daemon 形式运行,可以通过 service 进行控制,所以可以直接通过进程或端口查到。[/notice]
ps -ef 是用标准的格式显示进程的、其格式如下
其中各列的内容意思如下
UID //用户ID、但输出的是用户名
PID //进程的ID
PPID //父进程ID
C //进程占用CPU的百分比
STIME //进程启动到现在的时间
TTY //该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。
CMD //命令的名称和参数
推荐学习:Linux视频教程
以上是linux怎么判断是否开启了sftp的详细内容。更多信息请关注PHP中文网其他相关文章!