Linux 必要软件的安装与配置
主要是记录一下,免得下次重装系统后又到处搜索。。
Windows 建议使用 chocolatey 包管理工具
一、必要软件的安装
- JDK
- AdoptOpenJDK: 预编译好的,带有长期支持的 JDK 版本。(别再用 Oracle 了)
- 或者用 RedHat 预编译的版本:Red Hat OpenJDK
- 解压到
/opt
(optional softwares, 可认为是 D盘)或/usr/local
(相当于 C://Program Files)中。对桌面 Linux 用户而言,可以解压到/home/yourname/softwares/
里也是可以的。 - 添加 PATH 和其他可能需要的环境变量:将下列命令添加到
/etc/profile
中,如果只自己用的话,也可加入到~/.profile
里。
- AdoptOpenJDK: 预编译好的,带有长期支持的 JDK 版本。(别再用 Oracle 了)
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
- 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
里。 - Docker
- 在 Deepin 上的安装:https://wiki.deepin.org/index.php?title=Docker
- 其他:https://yeasy.gitbooks.io/docker_practice/content/install/
- 将用户加入 docker 组,这样就不需要 sudo 权限了:
usermod -aG docker <username>
其实我想我应该整个 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. 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镜像使用帮助
- 方法一:修改全局设置文件
${maven.home}/conf/settings.xml
,找到标签节点,并在其中添加下面的子节点:
<mirror>
<id>nexus-163</id>
<name>Nexus 163</name>
<mirrorOf>*</mirrorOf>
<url>http://mirrors.163.com/maven/repository/maven-public/</url>
</mirror>
<mirror>
<id>nexus-aliyun</id>
<name>nexus-aliyun</name>
<mirrorOf>central</mirrorOf>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
- 方法二:用户配置:将上述全局文件 copy 到
${user.home}/.m2/settings.xml
,再在此文件中做上述修改。(这个文件中的设置,会覆盖全局配置。)
setting.xml的详细解释见:https://maven.apache.org/settings.html
- 方法三:在项目的
pom.xml
中添加或修改:(一般 pom 中的 repo 只用于特殊镜像比较好,所以不建议这么干)
<repositories>
<repository>
<id>nexus-163</id>
<name>Nexus 163</name>
<url>http://mirrors.163.com/maven/repository/maven-public/</url>
<layout>default</layout>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus-163</id>
<name>Nexus 163</name>
<url>http://mirrors.163.com/maven/repository/maven-public/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
<releases>
<enabled>true</enabled>
</releases>
</pluginRepository>
</pluginRepositories>
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)
参考
Linux 必要软件的安装与配置的更多相关文章
- Linux下Qt的安装与配置
参考资料:http://www.cnblogs.com/emouse/archive/2013/01/28/2880142.html Linux 下编译.安装.配置 QT 下载qt 这里用的是4.7. ...
- 【VNC】Linux环境VNC服务安装、配置与使用
[VNC]Linux环境VNC服务安装.配置与使用 2009-06-25 15:55:31 分类: Linux 前言:作为一名DBA,在创建Oracle数据库的过程中一般要使用dbca和netc ...
- Linux 下编译、安装、配置 QT
转自Linux 下编译.安装.配置 QT 注意:编译安装耗时费力,且很容易出错,要不断调整编译参数,不推荐使用,否则这将会是一个纠结痛苦的过程. 打算做嵌入式图像处理,计划方案嵌入式Linux+Ope ...
- CentOS6安装各种大数据软件 第三章:Linux基础软件的安装
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
- Linux下软件常见安装方式
pasting 分类: Linux2007-12-08 16:31 1909人阅读 评论(0) 收藏 举报 linuxredhat脚本文档managerfile Linux下软件安装主 ...
- linux下vsftpd的安装及配置使用详细步骤(推荐)
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点. vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BS ...
- 笔记:Linux下软件的安装、CentOS更新yum源、LAMP环境搭建、kali软件管理
一.Linux下软件的安装 方式:yum源 / rpm /源码安装 1.yum:(帮助管理员解决依赖关系) yum是通过分析rpm的包头数据后,根据各种软件的相关性质做出属性相对应的解决方案,然后可以 ...
- .Neter玩转Linux系列之六:Linux下MySQL的安装、配置、使用
一.Linux安装MySQL (1)下载安装包:https://dev.mysql.com/downloads/mysql/ (2)解压并安装 命令:tar zxvf 文件名 解压完成之后,重名一下文 ...
- linux下svn的安装与配置
---恢复内容开始--- linux下svn的安装与配置 Linux发行版本:CentOS6.5 1.安装subversion sudo yum -y install subversion 2.创建s ...
随机推荐
- mysql服务器系统优化
1.选择合适的IO调度 对于mysql的系统,如果是SSD,那么应该使用NOOP调度算法,如果是磁盘,就应该使用Deadline调度算法.默认是CFQ echo dealine > /sys/b ...
- linux下获取外网IP
使用阿里云或者有多个网卡IP的机器需要取外网IP时,可以用下面这种 wget -qO - ifconfig.co 更多方法参考:https://yq.aliyun.com/ziliao/105999
- linux 命令——6 rmdir(转)
今天学习一下linux中命令: rmdir命令.rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的.(注意,rm - r dir命令可代替rmdir,但是有很大危险性.)删 ...
- 富文本编辑器Ueditor的使用
1.下载:http://ueditor.baidu.com/website/download.html. 2.解压,并放到项目webapp下. 3.jsp页面的配置. 4.配置根路径. 5.页面展示: ...
- java +selenuim使用js显示控件
操作selenium控件时,往往需要有些控件提前显示,特别是后台的一些控件,或者需要使用鼠标显示下拉的操作,有时鼠标悬停,在点击不怎么好使,就可以依靠js方式,提前让控件显示. 1.使用style的方 ...
- file - 确定文件类型
总览 file [ -bcnsvzL ] [ -f 命名文件 ] [ -m 幻数文件 ] file ... 描述 本手册页说明了3.27版本 file 命令的使用. File 命令试图检查每个参数以判 ...
- CUDA:Supercomputing for the Masses (用于大量数据的超级计算)-第二节
原文链接 第二节:第一个内核 Rob Farber 是西北太平洋国家实验室(Pacific Northwest National Laboratory)的高级科研人员.他在多个国家级的实验室进行大型并 ...
- Linux命令安装vnc服务端与vnc的客户端
第一歩:运行命令 yum install tigervnc-server -y 第二歩:安装telnet 第三歩:运行vncserver,创建桌面 vncserver -kill :1 删除桌面1的 ...
- Vmware 不能上网
Vmware 安装 WIN7 不能上网,如何解决? 情况一: 虚拟机右下角出现红色叉号,检查物理的服务是否开启“VMware NAT Service” 1 .开启方法:WIN + R -> 输入 ...
- 正则表达式通用匹配ip地址及主机检测
在使用正则表达式匹配ip地址时如果不限定ip正确格式,一些场景下可能会产生不一样的结果,比如ip数值超范围,ip段超范围等,在使用正则表达式匹配ip地址时要注意几点: 1,字符界定:使用 \< ...