utools是一款出色的生产力工具,由于博主在最近一段时间使用CentOS较多,所以想尝试一下使用utools,虽然最终安装成功,但是还是有一点问题,希望有大佬能够指出问题所在。一下是详细的安装过程:
1. 配置yum镜像源
由于后面需要使用alien软件包,所以需要用到epel仓库,原生仓库没有alien,这里以阿里镜像源为例从头做一次配置yum教学,如果配置过了直接跳过即可。
1.执行以下命令,备份本地源(密码根据自己设置的密码填)
su 密码
cd /etc/yum.repos.d/
mkdir backup
mv * backup
2.下载基础仓库配置文件
这里可以参考一下其他博主的配置
CentOS8系统配置国内yum源
以下链接是基础仓库(含epel仓库)的配置文件。
阿里镜像配置文件列表
博主使用的是CentOS8,所以将Centos-8.repo和通过wget命令下载即可(同理如果使用的是7或者6下载对应的配置文件即可)。
wget http://mirrors.aliyun.com/repo/Centos-8.repo
yum clean all
yum makecache
最后两条指令用于清除仓库缓存和创建新缓存。至此,基础仓库部分已配置完毕。
3.下载epel配置文件并部署epel仓库
这里介绍两种方法配置,第一种是跟配置基础仓库一样下载配置文件然后makecache,第二种是使用仓库自带的noarch脚本自动配置。
第一种方式
虽然上面那张图片里有epel的仓库配置文件,但是里面并没有CentOS8的(如果你的环境是CentOS6或者7的可以下载上面的),所以我们在阿里镜像站搜索epel,进入后可看到里面的结构。
阿里epel仓库传送门
然后回到CenOS,执行以下命令:
vim epel.repo
i
[epel]
name=Extra Packages for Enterprise Linux $releasever - $basearch
baseurl=http://mirrors.aliyun.com/epel/$releasever/Everything/$basearch
enabled=1
gpgcheck=0
然后esc,输入:wq退出。上面的指令是将从[epel]开始的配置文件代码写入用户自己创建的epel.repo仓库源文件中,其中name标签可以自己设置,baseurl是根据刚才打开的镜像站获得的,其中$releasever代表CentOS的发行版本——8,$basearch代表系统架构,所以整个链接对应的是http://mirrors.aliyun.com/epel/8/x86_64,可以去镜像站验证。enabled标签表示是否启用,1启用,0禁用。gpgcheck表示是否开启gpg验证,开启可以校验文件,如果想用可以将其改为1,在后面添加一行代码:
gpgkey=https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-8
后面的链接代表gpg校验文件,也可以在上面的镜像站(上面那张图片里可以看到)找到,需要注意的是gpg也是要对应版本的,比如我用的是8,那么对应的就是RPM-GPG-KEY-EPEL-8。
做好以上工作后,可以使用ls命令来查看文件夹下是否已经有了epel.repo这个仓库文件。
最后再执行yum makecache
命令即可更新仓库缓存。
第二种方式
使用仓库下的自动部署脚本,首先找到上面图片中的epel-release-latest-8.noarch.rpm,这个就是部署脚本,然后执行以下命令:
yum remove epel-release.noarch
dnf install https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm -y
dnf repolist epel -v
第一行命令用于清除之前可能安装过的epel部署脚本,后面两句用于部署epel仓库。
至此,你可能觉得上述配置已经完成,但是其实安装的时候才知道需要调整。
2.仓库配置文件的修改和alien软件包的安装
首先我们执行yum install alien
和yum install alien --skip-broken --nobest
可以看到报错信息和相关依赖文件
在这里了可以看到中间有一行报错信息:
没有东西可提供 perl(Digest::SHA1)(dpkg-perl-1.20.9-4.el8.noarch 需要)
这就表明这个仓库里没有可以使用的perl-Digest-SHA1在1.20.9的版本,所以我们可能需要再去找一个仓库替代或者追加上去才能使用。
这里推荐一个可以搜索rpm包的网站
Packages for Linux and Unix
当时我就想能不能上这个网站上搜搜看,
通过这个下载链接我们可以推测这个工具是在PowerTools仓库下的(CentOS/8/xxx,xxx就代表仓库名),所以我就联想到了CentOS-Base.repo,也就是最开始配置基础仓库的配置文件里面有这个关键词,发现原来阿里的PowerTools仓库被禁用了。
可以看到PowerTools和centosplus都被禁用了,这里我们只需要使用vim把PowerTools的enabled属性改为1即可。
然后执行命令yum install alien -y
就可以完成安装。
至此,alien安装完成。
3.使用alien将utools deb包转成rpm包并安装
首先我们上utools官网上获取链接,也可以通过内置浏览器下载,或者通过windows下载完然后再用xftp或者MobaXterm等软件传进去。
当我们已经有deb包时执行以下命令
alien -rv utools_3.0.3_amd64.deb
可以看到上面报错了,然后说的是它创建了一个编译目录,然后里面的utools-3.0.3-2.spec
的文件报错了,所以我们追加一个-g命令使得它生成目录,而不是报错后直接删除。
alien -rv utools_3.0.3_amd64.deb -g
然后进入utools-3.0.3文件夹,编辑里面的utools-3.0.3-2.spec文件
cd utools-3.0.3/
vim utools-3.0.3-2.spec
可以看到里面的Summary属性没有,这里我也不知道填什么,就直接填了一个0,然后返回上一级目录,使用上面卡在最后的命令重新执行一遍
cd ../
cd utools-3.0.3; rpmbuild --buildroot='/home/varocol/桌面/utools-3.0.3' -bb --target x86_64 'utools-3.0.3-2.spec' 2>&1
然后意外通过了。这个转换过程有点慢,最终结果会得到生成了rpm包
最后直接执行rpm -ivh utools-3.0.3-2.x86_64.rpm --force
强制安装就可以了。
有可能最后软件包会在/opt文件夹下,这个可以用which utools验证,如果找不到,那么可以重映射一下安装目录,可以自己搜一下教程。
4.出现的问题
强制安装后的utools虽然启动后没有问题,但是一旦退出主界面后无法使用快捷键唤醒,奇怪的是使用ps -aux | grep utools
可以发现utools仍在运行。如果utools的窗口被分离,在不关闭的情况下可以使用快捷键快速启动应用,关闭后就不行了。所以总结出来就是强转的utools并不能像其他平台的一样挂在后台正常运行,不知道是不是包转的有问题还是本身就是一个兼容性的bug,还请有知道的大佬指正一下错误。
以上就是尝试在CentOS上安装utools的全部内容,原创内容写作不易,引用的时候还请给个链接,如果觉得有帮助的话,点赞收藏是对博主最大的赞助