Linux 必要软件的安装与配置 4年前

主要是记录一下,免得下次重装系统后又到处搜索。。

Windows 建议使用 chocolatey 包管理工具

一、必要软件的安装

  1. JDK

    1. AdoptOpenJDK: 预编译好的,带有长期支持的 JDK 版本。(别再用 Oracle 了)
    2. 解压到 /opt(optional softwares, 可认为是 D盘)或 /usr/local(相当于 C://Program Files)中。对桌面 Linux 用户而言,可以解压到/home/yourname/softwares/里也是可以的。
    3. 添加 PATH 和其他可能需要的环境变量:将下列命令添加到 /etc/profile中,如果只自己用的话,也可加入到 ~/.profile 里。

    export JAVA_HOME=/opt/java-xx # 设定 JAVA_HOME,这是依赖 JDK 的软件可能需要的环境变量。 export PATH=$JAVA_HOME/bin:$PATH # 添加到 PATH 中,放前面是防止被已存在的java环境覆盖掉。

    export JRE_HOME=/opt/java-xx/jre # Tomcat 会先检查 JRE_HOME,若它不存在才检查 JAVA_HOME,一般来说设定了 JAVA_HOME 的话就不需要设定这个变量。

    此外 java 还有个 CLASSPATH 变量,不过一般并不需要设置它。通过 -cp 或 --classpath 设定会更灵活。

P.S. deepin 可能会遇到提示 _JAVA_OPTIONS=-Dawt.useSystemAAFontSettings=gasp的问题,可以在 .profile 里加上 _JAVA_OPTIONS='-Dawt.useSystemAAFontSettings=on',这是一个字体渲染选项,on 表示完全抗锯齿。详见Java Runtime Environment fonts

  1. Miniconda 安装基本是傻瓜式的。 需要注意的一个选项是Do you wish the installer to prepend the Anaconda<2 or 3> install location to PATH in your /home/<user>/.bashrc ? 如果你没注意这个,它默认会选否。此时需要手动将bin目录添加进 PATH。一般添加到用户的~/.bashrc里。
  2. Docker

其实我想我应该整个 Dockerfile,把各种环境全封进去,一劳永逸。。

二、proxychains-ng 代理

有很多命令行软件本身不支持使用代理,或者只支持 http(s) 代理。为了让它们走 socks5 代理。

这时有两个选择:设置镜像源,或者使用 proxychains-ng。

镜像源在后面说,proxychians-ng 因为用途最广,不支持镜像源或者代理的软件,也能通过它强制走代理。所以先介绍它。

首先安装:

# ubuntu
sudo apt-get install proxychains-ng

# arch 系列
yay -S proxychains-ng

proxychians-ng 默认使用 /etc/proxychains.conf 作为它的配置文件,一般安装完成后,该配置文件就会存在了。

现在修改该配置文件末尾的 ProxyList,改成你自己的 socks 代理路径:

[ProxyList]
socks5 127.0.0.1 1080

接下来就可以愉快的玩耍了,要使用任何软件时,在开头加上 proxychains 命令就行:

# 直接在开头加上 proxychains
proxychains npm install xxx
proxychains pipenv install xxx

# 需要 sudo 权限的,sudo 在最开头
sudo proxychains pip install xxx

# 或者也可以手动指定要使用的配置文件
sudo proxychains -f /path/to/proxychains.conf git clone git@github.com:xxx/xxx

三、各种镜像源的设置

由于GFW、或者是仓库大多在国外的原因,各种依赖管理工具都需要配置各种镜像仓库,不然网速会很感人。(如果你是全网VPN,忽略这个就行。。) 国内比较有名而且稳定的镜像,大概就是

  1. 清华 镜像源相当齐全,但是偶尔会停机更新,而且用的人太多,速度有点不稳定。
  2. 中科大 同样是大学学生维护的,速度也有点不稳定,也会停机更新。
  3. 阿里 阿里云的镜像算是最快最稳定的,源也相当齐全。

1. pip 设置清华 Pypi 镜像源

pip install pip -U  # 要求 pip>=10.0.0
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

更麻烦的方法:添加文件 ~/.pip/pip.conf,内容:

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple

该配置文件对 pip 和 pip3 都有效。

P.S. 不过可能清华用的人多,感觉中科大 pypi 镜像更快一点。

2. Anaconda 清华镜像源

进上面链接看吧,如果装了 Anaconda 的话。

3. Docker的阿里镜像

具体设置方法见上面的链接。(好像是要登录才可见)

4. maven 镜像

主要有两个:阿里maven镜像 和 163 maven镜像。因为网易有帮助文档,我就只给出网易的了。 参见网易Maven镜像使用帮助

  1. 方法一:修改全局设置文件${maven.home}/conf/settings.xml,找到标签节点,并在其中添加下面的子节点:

    nexus-163 Nexus 163 * http://mirrors.163.com/maven/repository/maven-public/ nexus-aliyun nexus-aliyun central http://maven.aliyun.com/nexus/content/groups/public
  2. 方法二:用户配置:将上述全局文件 copy 到 ${user.home}/.m2/settings.xml,再在此文件中做上述修改。(这个文件中的设置,会覆盖全局配置。)

setting.xml的详细解释见:https://maven.apache.org/settings.html

  1. 方法三:在项目的 pom.xml 中添加或修改:(一般 pom 中的 repo 只用于特殊镜像比较好,所以不建议这么干)

    nexus-163 Nexus 163 http://mirrors.163.com/maven/repository/maven-public/ default false true nexus-163 Nexus 163 http://mirrors.163.com/maven/repository/maven-public/ false true

5. gradle 镜像

一般 gradle 其实用的也是 maven 仓库,在build.gradle中将对应的仓库全改成阿里的就行:(jcenter 和 google 一般只有安卓项目才需要。普通的 java 项目,只要改 mavenCentral 就行)

// 下面两个repositories都要改

buildscript {
    repositories {
//        mavenCentral()
//        jcenter()
//        google()
//        对 kts 脚本,使用: maven { url = uri("http://maven.aliyun.com/nexus/content/groups/public/") }
        maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' }
    }
}

allprojects {
    repositories {
//        mavenCentral()
//        jcenter()
//        google()
        maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter'}
        maven { url 'http://maven.aliyun.com/nexus/content/repositories/google' }
    }
}

三、socks5代理设置

如果觉得镜像更新慢,也可以使用代理直接访问官方仓库。用 VPN 的话是一劳永逸。但如果你使用的是proxy代理方式,就需要些额外的配置。 anaconda pip 清华源同步很快,所以proxy就略去了。

1. gradle

修改 项目根目录/gradle.properties 文件,加入:(值请改成自己的,每个项目都要改。。)

org.gradle.jvmargs=-DsocksProxyHost=127.0.0.1 -DsocksProxyPort=1080

2. maven

修改镜像篇说过的 setting.xml,文件的 proxies 节点,加入内容:(同样port请改成自己的)

<proxy>

      <id>ss</id>

      <active>true</active>

      <protocol>socks5</protocol>

      <username></username>

      <password></password>

      <host>127.0.0.1</host>

      <port>1080</port>

      <nonProxyHosts>127.0.0.1</nonProxyHosts>

 </proxy>

3. git

使用如下命令

git config --global http.proxy 'socks5://127.0.0.1:1080'
git config --global https.proxy 'socks5://127.0.0.1:1080'

四、包管理器镜像源(apt)

Ubuntu 镜像使用帮助 - 清华镜像源

参考

樱花残月
以盐水作配菜,糖水做主食,就有种奢侈的感觉呢。
5
发布数
1
关注者
14432
累计阅读

热门教程文档

Docker
62小节
Vue
25小节
MySQL
34小节
Redis
14小节
PHP
52小节
广告