KeyarchOS安装qftp-4.0-4

  1. 概述
    浪潮信息KOS是浪潮信息基于Linux Kernel、OpenAnolis等开源技术自主研发的一款服务器操作系统,支持x86、ARM等主流架构处理器,性能和稳定性居于行业领先地位,具备成熟的 CentOS 迁移和替换能力,可满足云计算、大数据、分布式存储、人工智能、边缘计算等应用场景需求。详细介绍见官网链接https://www.ieisystem.com/kos/product-kos-xq.thtml?id=12126
    qftp(QFtp)是Qt框架中用于实现FTP(文件传输协议)客户端功能的一个类,尽管在Qt5及以后版本中,QFtp类被官方废弃,但它仍然在社区中维护,并且对于需要特定FTP功能的开发者来说,QFtp仍然是一个有用的工具。以下是QFtp的主要功能介绍,
    FTP客户端功能
    连接与登录:QFtp类允许用户连接到FTP服务器,并使用提供的用户名和密码进行登录。
    目录操作:用户可以使用QFtp来切换FTP服务器上的工作目录,列出目录中的文件和文件夹,以及创建新的文件夹(mkdir)和删除文件夹(rmdir)。
    文件操作:QFtp支持文件的上传(put)和下载(get),以及删除文件(remove)和重命名文件(rename)。
    异步工作模式
    QFtp是异步工作的,这意味着它不会阻塞主线程的执行。当执行FTP操作时,如连接、登录、文件传输等,QFtp会立即返回,并将操作调度到事件循环中以供后续执行。
    操作的结果通过信号和槽机制进行报告。例如,当文件传输开始时,会发出commandStarted()信号;当文件传输完成时,会发出commandFinished()信号,并带有表示操作是否成功的状态信息。
    丰富的API和命令
    QFtp提供了一系列用于FTP操作的API,如connectToHost()、login()、close()、list()、cd()、get()、put()、remove()、mkdir()、rmdir()、rename()等。
    这些命令都会返回一个唯一的标识符,允许开发者跟踪当前正在执行的命令。
    错误处理
    如果在执行FTP操作过程中发生错误,QFtp会通过相应的信号报告错误信息。开发者可以使用error()和errorString()函数来获取有关错误的详细信息。
    传输模式
    QFtp支持主动和被动两种文件传输模式。默认情况下,QFtp使用被动模式进行文件传输。开发者可以通过调用setTransferMode()函数来设置所需的传输模式。
    代理服务器支持
    QFtp还允许用户通过FTP代理服务器进行连接。这可以通过调用setProxy()函数来实现。
    兼容性
    需要注意的是,虽然QFtp在功能上相对完善,但它可能不完全支持非Unix FTP服务器。此外,由于QFtp在Qt5及以后版本中已被废弃,因此在新开发的应用程序中,建议使用QNetworkAccessManager和QNetworkReply等更现代、更强大的网络类来替代QFtp。
    总的来说,QFtp是一个功能丰富的FTP客户端实现,它提供了广泛的FTP操作支持,并通过异步工作模式和信号槽机制简化了与FTP服务器的交互。然而,对于需要开发新应用程序的开发者来说,可能需要考虑使用Qt框架中提供的更现代的网络类。
    详情见GitHub主页:https://github.com/zhoutk/qtDemo
  2. 安装准备
    1. 操作系统环境
      版本信息:KeyarchOS 5.8sp2
      硬件平台:X86

    1. qftp版本
      版本号:qftp-4.0-4
      GitHub主页:https://github.com/zhoutk/qtDemo
      阿里镜像源地址:https://developer.aliyun.com/packageSearch?word=qftp
    2. vsftpd版本
      版本号:vsftpd-3.0.3
      来源:KOS软件包源

  1. 安装
    1. 搭建ftp服务器
      安装软件包
      yum install vsftpd


启动vsftpd服务
systemctl start vsftpd
systemctl status vsftpd


查看FTP服务监听的端口
netstat -antup | grep ftp


设置开机启动
systemctl enable vsftpd


防火墙开放ftp服务
firewall-cmd --permanent --add-service=ftp


重启防火墙
firewall-cmd –reload


设置ftpd_full_access为on
setsebool -P ftpd_full_access=on


修改vsftpd配置
vim /etc/vsftpd/vsftpd.conf
取消注释
anonymous_enable=YES
local_enable=YES
listen=YES
添加注释
#listen_ipv6=YES
在文件末尾添加
#设置本地用户登录后所在目录。
local_root=/var/ftp/test
#全部用户被限制在主目录。
chroot_local_user=YES
#启用例外用户名单。
chroot_list_enable=YES
#指定例外用户列表文件,列表中用户不被锁定在主目录。
chroot_list_file=/etc/vsftpd/chroot_list
#开启被动模式。
pasv_enable=NO
allow_writeable_chroot=YES
#pasv_address=IP
#设置被动模式下,建立数据传输可使用的端口范围的最小值
pasv_min_port=50000
#设置被动模式下,建立数据传输可使用的端口范围的最大值
pasv_max_port=50010


重启服务
systemctl restart vsftpd
systemctl status vsftpd


为FTP服务创建一个Linux用户
useradd ftpuserpasswd ftpuser


创建必要的文件夹和文件
mkdir /etc/vsftpd/chroot_list/
mkdir /var/ftp/test/


使用ftp登录
ftp ip

    1. 安装qftp-4.0-4
      阿里镜像源下载软件包
      下载地址:https://developer.aliyun.com/packageSearch?word=qftp


上传至操作系统
安装rpm包
yum install qftp-4.0-4.el7.x86_64.rpm

    1. 验证qftp-4.0-4

qftp命令详解

usage: qftp <cmd> <host> cmd = send | get | dir | list | rm [ -l user [ -p pass ] ] defaults to anonymous/user@hostname [ [ -v level ] debug level [ -r rootpath ] chdir path [ -m umask ] umask for created files [ -a | -i ] ] ascii/image transfer file [ -w ] toggle wildcard mode [ -s cmd ] issue a SITE command [ -b ] toggles stripping of path from filename on send [ file ] file spec for directory or file to transfer ]...用法:qftp <命令> <主机>
命令 = send | get | dir | list | rm
[ -l 用户名 [ -p 密码 ] ] 默认为anonymous/用户名@主机名
[
[ -v 级别 ] 调试级别
[ -r 根路径 ] 更改目录路径
[ -m umask ] 为新创建文件设置的umask值
[ -a | -i ] 选择ASCII/二进制传输文件
[ -w ] 切换通配符模式
[ -s 命令 ] 发送SITE命令
[ -b ] 在发送时切换从文件名中剥离路径
[ 文件 ] 要传输的目录或文件规范
]...

使用qftp获取ftp服务器的目录列表

qftp dir ip

qftp list ip

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值