# deb转rpm arch64 arm64 百度网盘的arm64 rpm redhat系的生态不如Debian。这是众所周知的事情。笔者很不幸的遇到了某软件只有deb包,没有rpm包。 在arm64的困境下,仓库中没有了alien工具。我只能手动安装alien并转化了。 ## 安装alien 安装编译环境 ``` yum install -y perl perl-Module-Build rpm-build gcc make ``` 下载alien源码并编译安装 ``` wget http://ftp.de.debian.org/debian/pool/main/a/alien/alien_8.95.8.tar.xz tar -xvf alien_8.95.8.tar.xz cd alien perl Makefile.PL make make install ``` 验证一下是否成功 ``` alien -V alien version 8.95.8 ``` ## 转化deb为rpm 去山东大学镜像站下载百度网盘baidunetdisk_4.17.7_arm64.deb ``` wget https://mirrors.sdu.edu.cn/spark-store-repository/aarch64-store/network/baidunetdisk/baidunetdisk_4.17.7_arm64.deb ``` 转化 ``` alien --to-rpm --scripts baidunetdisk_4.17.7_arm64.deb ``` ### 报错 错误:行 5:空的标签:Summary: ``` alien --to-rpm --scripts baidunetdisk_4.17.7_arm64.deb Package build failed. Here's the log of the command (cd baidunetdisk-4.17.7; rpmbuild --buildroot='/root/Downloads/baidunetdisk-4.17.7' -bb --target aarch64 'baidunetdisk-4.17.7-2.spec'): 错误:行 5:空的标签:Summary: 构建目标平台:aarch64 为目标aarch64构建 ``` 安装dpkg并解包 ``` yum install -y rpm-build dpkg ``` ``` mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS} dpkg-deb -x baidunetdisk_4.17.7_arm64.deb ~/rpmbuild/SOURCES/baidunetdisk cat > ~/rpmbuild/SPECS/baidunetdisk.spec <<EOF Summary: Baidu Netdisk client for Linux (ARM64) Name: baidunetdisk Version: 4.17.7 Release: 1 License: Proprietary Group: Applications/Internet BuildArch: aarch64 AutoReq: no %description Baidu Netdisk GUI Client for ARM64 Linux systems. %prep %build %install rm -rf %{buildroot} mkdir -p %{buildroot} cp -a %{_sourcedir}/baidunetdisk/* %{buildroot}/ %files / /opt /usr %post echo "Baidu Netdisk installed." %clean rm -rf %{buildroot} EOF rpmbuild -bb ~/rpmbuild/SPECS/baidunetdisk.spec find ~/rpmbuild/RPMS -name "*.rpm" ``` 获取到文件啦 `/root/rpmbuild/RPMS/aarch64/baidunetdisk-4.17.7-1.aarch64.rpm` 安装 ``` rpm -i /root/rpmbuild/RPMS/aarch64/baidunetdisk-4.17.7-1.aarch64.rpm Baidu Netdisk installed. ``` 映射到/bin ``` ln -sf /opt/baidunetdisk/baidunetdisk /usr/local/bin/baidunetdisk ``` 运行 ``` baidunetdisk ``` ### 报错 不能用sandbox运行 ``` baidunetdisk [2116490:0525/184919.957054:FATAL:electron_main_delegate.cc(253)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180. 追踪与中断点陷阱(核心已转储) ``` 运行 ``` baidunetdisk --no-sandbox ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up