前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在腾讯云的centos7上痛快的“fuck”

在腾讯云的centos7上痛快的“fuck”

作者头像
冰漪叶
发布2022-10-24 13:04:51
1.7K0
发布2022-10-24 13:04:51
举报
文章被收录于专栏:冰漪叶的折腾

我也来水一水文章,讲讲我在用腾讯云的centos7镜像部署的服务器上能痛快的执行“fuck”命令之前到底经历了多少“磨难”,也算是给自己和别人一个参考吧

“fuck”命令实际上是一个python模块“thefuck”,具体我也不在这多废话,常规的安装教程网上也是一搜一大把,这里不做赘述,我主要讲一讲我踩过的坑

首先是python版本,centos7默认的python版本是2.x,而目前thefuck模块所需要的python是python3.x,所以得先安装python3,然后再通过安装模块的方式安装thefuck,这看起来没啥难的,但腾讯云的镜像我猜可能是由于历史原因,里面埋了一些坑

1,“mirrors.tencentyun.com”

在我这几天折腾服务器的时候,这个奇怪的域名是我踩过最多的坑,我猜这个域名可能是腾讯云以前的域名,不过目前无法求证这个是腾讯云内网访问的域名。它之所以会称为一个坑,是因为腾讯云的centos镜像里面很多地方的“源”都是这个,yum的源和pip的源都是这个,yum的源的问题我通过查阅资料改掉了,这问题不大,但头疼的是pip的源

21.8.14 1:54pm 更新:腾讯云的服务器建议不要更改dns,默认的dns是腾讯云的内网dns,腾讯云的镜像里面有很多地方都是用的腾讯云的内网域名,此处参考资料:

1、云服务器 NTP 服务相关 – 常见问题 – 文档中心 – 腾讯云#若改变内网 DNS,会有哪些具体影响?,官方文档,更新于21年6月

2、云服务器 内网服务 – 产品简介 – 文档中心 – 腾讯云#内网dns,官方文档,更新于20年6月

21.8.13 10:18pm 更新:经查阅资料,“mirrors.tencentyun.com”为“腾讯软件源”镜像的内网访问域名,它的公网访问域名为“mirrors.cloud.tencent.com”和“mirrors.tencent.com”,这两个公网域名是可以用任意dns解析并访问的,而“mirrors.tencentyun.com”是只能通过腾讯云的内网dns才能解析并访问的。此处参考资料:

1、《云服务器镜像问题(”Couldn’t resolve host ‘mirrors.tencentyun.com’) – JunQiu – 博客园》,但由于年代久远(17年的文章),所以仅供参考,有效性已无法保证

2、《云服务器 腾讯云软件源加速软件包下载和更新 – 运维指南 – 文档中心 – 腾讯云》,官方文档,更新于21年1月

不知道藏在哪的“Tencentyun”

直接安装thefuck,pip会自动安装所需的其它模块,这本是好事,但头疼的是这个不知道藏身在何处的“Tencentyun”,安装网上的方法更改pip3的源,结果都没用,我只能从它的日志里面找到它需要但又下载失败的那个模块,然后通过pip3 install命令去手动安装,而且还得注意安装顺序,不然“Tencentyun”就又会出来找你麻烦

如果你问我是怎么知道的,那我就用图片来回答你

由腾讯软件源的内网访问地址带来的坑到这里暂时算是告一段落了,接下来这个坑应该是centos7“通用”的坑

2,“python-dev”

因为缺少python-dev而导致的文件缺失

在图中,从报错信息来看,似乎只是缺少一个文件而已,其实这又是一个坑——缺少python-dev这个程序包。不过可别以为缺啥就直接yum install啥就行了,如果你真如此天真,那么等待你的只有“找不到这个包”的报错。在centos里面它不叫这个,叫python-devel,但这在centos7里面又是另一个坑,你直接安装python-devel安装的是python2.x的,但安装thefuck的是python3.x,所以得安装python36-devel,在安装完成之后再安装psutil,然后安装pytest-runner,接着是pyte,在这些都安装完成之后再来安装thefuck,装完之后fuck几下就可以正常使用了

所以说,在坑爹的腾讯云centos7上安装thefuck的全部命令是:

代码语言:javascript
复制
#此处默认你已安装python3,能正常执行pip3命令
yum install python36-devel
#逐个安装thefuck所需的依赖
pip3 install six
pip3 install psutil
pip3 install pytest-runner
pip3 install pyte
pip3 install thefuck

在安装完这些之后,执行fuck会提示让你配置环境,这个时候再执行一次“fuck”,然后再执行source ~/.bashrc就完成了fuck的安装,可以“愉快的”在服务器上fuck了

顺带说一句,腾讯云的centos8可以直接pip3 install thefuck,不用手动去一个个安装那些奇怪的依赖模块,再就是没事别乱改服务器的dns,尤其是当服务器的默认dns是内网dns的时候,判断dns是不是内网dns,在云下ping一下就知道了

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-8-13 2,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1,“mirrors.tencentyun.com”
  • 21.8.14 1:54pm 更新:腾讯云的服务器建议不要更改dns,默认的dns是腾讯云的内网dns,腾讯云的镜像里面有很多地方都是用的腾讯云的内网域名,此处参考资料:
  • 1、云服务器 NTP 服务相关 – 常见问题 – 文档中心 – 腾讯云#若改变内网 DNS,会有哪些具体影响?,官方文档,更新于21年6月
  • 2、云服务器 内网服务 – 产品简介 – 文档中心 – 腾讯云#内网dns,官方文档,更新于20年6月
  • 21.8.13 10:18pm 更新:经查阅资料,“mirrors.tencentyun.com”为“腾讯软件源”镜像的内网访问域名,它的公网访问域名为“mirrors.cloud.tencent.com”和“mirrors.tencent.com”,这两个公网域名是可以用任意dns解析并访问的,而“mirrors.tencentyun.com”是只能通过腾讯云的内网dns才能解析并访问的。此处参考资料:
  • 1、《云服务器镜像问题(”Couldn’t resolve host ‘mirrors.tencentyun.com’) – JunQiu – 博客园》,但由于年代久远(17年的文章),所以仅供参考,有效性已无法保证
  • 2、《云服务器 腾讯云软件源加速软件包下载和更新 – 运维指南 – 文档中心 – 腾讯云》,官方文档,更新于21年1月
  • 2,“python-dev”
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档