需求: 构建的包需要上传到文件服务器上, 需要从文件服务器上进行下载
可以搭建一个webmin服务,既有UI界面, 又可以通过模拟调用接口进行上传下载操作
一 安装
通过yum安装:
1 2 3 4 5 |
# 安装依赖 yum install perl-Crypt-Blowfish perl-Crypt-CBC perl-Crypt-Rijndael perl-Digest-SHA perl-Expect perl-Gtk2 perl-IO-Stty perl-Net-ARP perl-YAML perl-Cairo perl-Glib perl-IO-Tty perl-Pango uuid-perl curl -o setup-repos.sh https://raw.githubusercontent.com/webmin/webmin/master/setup-repos.sh bash setup-repos.sh yum install webmin |
也可以通过下载安装包安装,适用于国产操作系统,因为官方安装脚本不支持kylin等系统
1 2 3 |
wget https://jaist.dl.sourceforge.net/project/webadmin/webmin/2.013/webmin-2.013.tar.gz tar -zxPf webmin-2.013.tar.gz -C /usr/local/webmin --strip-components 1 /usr/local/webmin/setup.sh |
配置:
1 2 3 4 |
/etc/webmin/config: referers_none=0 # 可以不需要传referers而访问 gotomodule=filemin # 默认进filemin模块 gotoone=1 # 当用户默认只有一个模块时,直接进入 |
上传下载:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
server=http://x.x.x.x:10000 user='xxx' pass='xxx' file=/data/test.tar.gz # 生成cookie,用来登录 curl -c 'cookie.txt' -k $server/session_login.cgi -d user=$user -d pass=$pass -H 'Cookie: testing=1' #下载方式1: curl -O -b 'cookie.txt' --progress-bar "$server/updown/fetch.cgi$file" # 下载方式2: curl -b 'cookie.txt' --progress-bar "$server/filemin/download.cgi?file=/z-md5.txt&path=/aarch64-kylin/20220430/" -o z-md5.txt # 可以加下载失败重试: export ec=18; while [ $ec -eq 18 ]; do curl -b 'cookie.txt' --progress-bar "$server/filemin/download.cgi?file=/z-md5.txt&path=/aarch64-kylin/20220430/" -o z-md5.txt; export ec=$?; done # 上传 curl -X POST -b 'cookie.txt' --progress-bar -F 'filename=@/tmp/sean.txt' "$server/filemin/upload.cgi?path=/" |
0 Comments