前提&闲语

导师的领域其实应该是纯理论的,所以花了一番功夫在Windows搭建的环境始终没有跑起来代码(根本没有需求啊QAQ),终于在计算机视觉课程中分到了实验任务,但在pip中有个包(scann)死活导入不成功,一番调查才发现此包是Linux系统所独有,论文作者也仅在Linux上运行过模型,这下不得不在Ubuntu上跑模型了☝️🤓,工善于其事,必先利其器,不能科学上网的话,就连git clone都费劲。
正碰上新换电脑,需要重新安装软件,但难过的是,以前收藏的教程网页基本都404了,然而过程十分抽象,所以记录下本次在Ubuntu上使用Clash的教程。

以下是需要准备的东西,首先需要保证你能在Windows下使用Clash。
(能打开文章并看到这里的你,肯定是能在Windows上使用Clash的对吧?)
1️⃣下载正确版本的Clash for Linxu,提前准备好。
2️⃣一个已经导入了配置能正常运行的Windows版的Clash。
3️⃣你的Ubuntu系统中没有安装过其他版本的Clash(否则可能出现预料之外的错误)。

安装Clash for Linxu

下载

注:既然你的Linux无法科学上网,所以你还得找个办法提前下载这些位于Github上的内容不是吗?😀

打开上面的链接,下载好符合自己处理器版本的Clash for Linxu,注意观察自己的计算机CPU是arm架构还是amd64架构,一般的PC都是amd64芯片,闭着眼睛选择下载clash_2.0.24_linux_amd64.tar.gz一般都没问题(但我肯定不会给你保证的!)

解压

用什么办法,把下载到的文件丢进你的Ubuntu电脑中,再进入文件所在目录打开终端,输入指令解压安装包。

1
2
# 在压缩包所在的文件夹运行命令
tar -xzvf clash_2.0.24_linux_386.tar.gz

解压完成后能得到3个文件,分别是clash(软件本体)、LISENCE(许可证)、README.md(自述文件)。

安装

这里的安装方式区别于我们在Ubuntu中正常安装软件的方式,这里无需使用dpkg - i命令(但其本质其实也是解压移动文件😎),只需要对解压缩后的文件进行移动,依旧是在刚刚解压完成目录下运行命令:

1
2
# 在解压缩文件所在的文件夹运行命令
sudo mv clash /usr/local/bin/

到这里就算安装安成了,可以输入以下命令验证是否成功安装:
1
2
3
# 无特殊指定路径,全局都可以运行
clash -v
# 按下回车将会返回已安装的Clash版本,为v2.0.24

导入配置文件

完成安装后,在终端输入Clash即可启动软件,初次启动会在~/.config/clash目录下生成三个文件,分别是:

  • Country.mmdb(用于识别每个ip地址所处的国家,方便你的规则文件切换直连与代理)
  • cache.db(缓存文件)
  • config.yaml(你的机场配置文件)

这里的Country.mmdb文件默认会从互联网去下载,然后因为一些众所周知的原因而报错,最终生成的是一个无用的文件;而config.yaml文件需要我们自行导入自己的订阅配置。

此时我们需要做的就是从Windows下的Clash软件中导入这两个文件。
注:考虑到Clash for Windows的作者已经跑路,如果是Clash Verge或类似软件,下面的方法可以作类似参考。

导出Country.mmdb

打开Clash for Windows,在General页面下可以找到Home Directory项,点击Open Folder,会在弹出的新窗口中进入Clash for Windows的安装主目录,在这里我们能找到Country.mmdb文件。

Clash Verge软件对应设置页面下的内核目录,并打开该层级下的resources文件夹,可以找到对应文件

导出config.yaml

打开Clash for Windows,在Profiles页面下可以找到自己的订阅与配置,选中自己的配置右键Show in folder,会在弹出的新窗口中以灰色选中当前配置对应的yml文件,将它导出重命名为config.yaml文件。

Clash Verge软件对应订阅页面下的订阅与配置,右键打开文件`,可以找到对应文件并查看路径。
注:此处一定要记得导出后再把yml文件重命名为yaml文件,在原文件夹重命名会导致你的Windows软件无法识别配置文件噢!🤯

导入文件

用什么办法,把刚刚导出的文件丢进你的Ubuntu电脑中,再进入文件所在目录打开终端,输入指令移动文件。

1
2
3
# 进入俩文件存放目录,运行命令导入文件
sudo mv Country.mmdb ~/.config/clash
sudo mv config.yaml ~/.config/clash

导入文件后,此时再输入clash命令即可正常运行。

此处我遇到个问题,或许是此clash版本过低,运行时针对某些规则会报错,我索性直接把带关键字的相关规则从config.yaml中删去了(十分暴力)😡(你也试试看!)

运行时配置

完成文件导入以后,在任意路径打开终端,输入clash命令应可正常运行,此时可在ubuntu系统中的浏览器内打开clash控制台(clash.razord.top)选择节点和代理模式。

你不要告诉我你没有图形化界面窗口,没有就赶紧去装啊!😨

开启代理

打开clash控制台(请保证你的clash已经开启),进入设置页面,查看你的HTTP与Socks5代理端口号,一般不会出现端口占用(若被占用请手动修改)。
然后在Ubuntu系统的最右上角,点击进入系统设置,在网络一栏中,点击代理,选择手动配置代理,具体填写指示如下:

HTTP与HTTPS项:URL:127.0.0.1;代理端口:7980。(端口冲突时与修改值一致)
FTP项:留白。
Socks主机项:URL:127.0.0.1;代理端口:7981。(端口冲突时与修改值一致)
忽略的主机:默认即可,默认值为:localhost, 127.0.0.0/8, ::1。


完成代理配置后点击保存,并打开代理。
此时回到clash控制台,选择选择代理模式,具体参考如下:

  • 规则模式:国内服务器不经过代理,国外服务器代理。
  • 全局模式:所有连接都经过代理。
  • 直连模式:所有连接都不经过代理。

设置完成后,回到左侧代理标签页面,对节点进行测速,选择节点点击即可进入科学上网时刻。

关闭代理

进入系统设置,关闭网络中的代理即可,但此时clash应用仍在后台运行,需要注意。