跟我一起配置环境
1、清华源
1.备份原来的源,将以前的源备份一下,以防以后可以用的。
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
2.打开/etc/apt/sources.list文件,在前面添加如下条目,并保存。
sudo vim /etc/apt/sources.list
3.按 i 进入插入模式
4.然后按键盘的 delete 删除原有的源
5.把下面的清华源复制,然后右键粘贴
#添加清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse multiverse
6.更新
sudo apt-get update
sudo apt-get upgrade
7.Could not handshake: Error in the certificate verification.
- ubuntu换的源用了
https
,https
需要处理安全证书,参考这篇文章
说是要安装ca-certificates
,他提供的是csdn的资源,下载不了。官网地址是:
https://launchpad.net/ubuntu/bionic/amd64/ca-certificates/20210119~18.04.2 - 安装后就可以
sudo apt-get update
不报错了。源不能用wget或者curl下载deb文件安装就可以。 - 或者改为
http
即可
2、Linux相关命令
设置root密码
sudo passwd
查询设备主要命令
lscpu 查看CPU个数
cat /proc/cpuinfo 查看CPU进程数、核数
free -m 查看内存总量
lsblk 查看磁盘挂载情况
fdisk -l 查看磁盘分区情况
df -h 查看磁盘总量
cat /etc/redhat-release 查看Linux版本
uname -a 查看系统内核版本
startx 启动图形化页面?
查询dpkg安装过的包
dpkg -l | grep xxxx
查询库文件接口
nm -D ./libxxx.so
软链接相关
- 创建
ln -s 【目标目录】 【软链接地址】
- 删除
rm -rf 【软链接地址】
- 修改
ln -snf 【新目标目录】 【软链接地址】
查找文件
使用locate
locate 文件
如果空输出执行 updatedb
手动构建库
使用which
、where
where 可执行文件
which 可执行文件
小技巧 使用grep
查询文件内的语句
grep -r '查询这条语句' ./* #在当前目录下所有文件
查询磁盘大小
du -sh *
使用aptitude提供的安装方案解决冲突
首先安装aptitude
sudo apt-get install aptitude
然后使用aptitude安装
sudo aptitude install
创建用户
创建名为name
的用户
sudo useradd -s /bin/bash -d /home/name -m name
为name
用户设置密码
passwd name
为name
用户设置sudo权限
chmod +w /etc/sudoers
vim sudoers
# 在sudoers文件下在最后权限管理位置处添加额外的一行
name ALL=(ALL) ALL
进程相关
ps pid 查询特定的进程
ps -l 列出与本次登录有关的进程信息;
ps -aux 查询内存中进程信息;
ps -aux | grep *** 查询 *** 进程的详细信息;
top 查看内存中进程的动态信息;
kill -9 pid 杀死进程。
Screen 管理窗口方法,可以把shell挂后台
screen -S name # 创建有名字的任务
screen # 创建没有名字的
screen -ls # 查看所有创建的pid
screen -d {
pid}# 退出一个screen 放后台 也可以ctrl+a+d
screen -r {
pid}# 进入某个screen
quit # 进入后输入可以删除
screen -X -S {
pid} quit # 也可以删除
网络相关设置
ip addr 查看ip网口信息
ifconfig 也是可以的
ip route show 查看路由信息 一般能看到设置好的插网线的网口的相关配置
resolvctl status 查看DNS解析相关设置
cat /etc/resolv.conf 差点DNS解析配置文件
cat /etc/netplan/01-netcfg.yaml 查看网络配置文件
network:
version: 2
renderer: networkd
ethernets:
enp94s0f0:
addresses: [ 192.168.70.187/24 ]
gateway4: 192.168.70.1
nameservers:
addresses:
- "114.114.114.114"
-
cat /etc/netplan/01-netcfg.yaml 查看网络配置文件(新,废除了gateway4)
network:
ethernets:
enp94s0f0:
addresses: [ 192.168.70.187/24 ]
optional: true
routes:
- to: default
via: 192.168.70.1
nameservers:
addresses: [114.114.114.114]
dhcp4: false
version: 2
netplan try 验证设置是否有问题
netplan apply 应用相关设置
systmdctl restart networkd.xxx.servicing 重启网络服务 这个和其他人描述的不太一样
systmdctl restart resolvd.xxx.servicing 重启DNS那个服务
修改网卡MAC地址(虚拟MAC地址)
ifconfig eth0 down
ifconfig eth0 hw ether xx:xx:xx:xx
ifconfig eth0 up
git使用
git clone https://gitee.com/用户个性地址/HelloGitee.git # 将远程仓库克隆到本地
git add . # 将当前目录所有文件添加到git暂存区
git commit -m # 提交并备注提交信息
git push origin master # 将本地提交推送到远程仓库
git reset --hard 版本号 # 回归版本
git init # 初始化一个仓库
git remote add origin https://gitee.com/用户个性地址/HelloGitee.git # 本地初始化一个仓库
git pull origin master
git status # 查看被管理的文件情况
git log # 查看版本库 详细
git reflog # 查看版本库 简略
git checkout . # 回滚工作区的内容
git reset HEAD # 将暂存区的回到工作区
git config --global user.email " " # 设置作者
git config --global user.name " " # 设置作者
1)有红色信息(工作区有内容),就执行 add
2)全绿信息(内容全部在暂存区),才执行 commit
3)只有被版本库控制的代码,才能被监听,所以可以回滚到任何一个版本
空文件夹不会被git记录
3、gfortran安装
Ubuntu上可以安装开发套件:
sudo apt-get install build-essential libssl-dev
如果有调试需求,gfortran 的 debug 选项为 -g
先在 ubuntu 的终端敲入命令:
$gfortran --version
看看是否安装了gfortran。
如果没有安装,可以使用如下命令安装:
sudo apt-get install gfortran
4、gcc安装
如果没有安装,可以使用如下命令安装:
sudo apt-get install gcc
5、c++ complier
如果没有安装,可以使用如下命令安装:
sudo apt-get install g++
6、mpich安装
1、找到 mpich-3.4.2.tar.gz 文件,解压
tar -zxvf mpich-3.4.2.tar.gz
2、创建 build 目录,进行编译预设置。
mkdir mpich-build
cd mpich-build
../mpich-3.4.2/configure --prefix=/usr/local/mpich-3.4.2
3、编译。
sudo make -j20
如果出现问题,请往下看。
a. 出现 ‘configure: error: no ch4 netmod selected …’ , 则,
make clean
cd ..
rm -rf mpich-build
mkdir mpich-build
cd mpich-build
../mpich-3.4.2/configure --prefix=/usr/local/mpich-3.4.2 --with-device=ch4:ofi
sudo make -j20
b. 出现包含 fortran 这个词的错误,则,
make clean
cd ..
rm -rf mpich-build
mkdir mpich-build
cd mpich-build
../mpich-3.4.2/configure --prefix=/usr/local/mpich-3.4.2 --disable-fortran
sudo make -j20
c. a 和 b 都有,则,
make clean
cd ..
rm -rf mpich-build
mkdir mpich-build
cd mpich-build
../mpich-3.4.2/configure --prefix=/usr/local/mpich-3.4.2 --disable-fortran --with-device=ch4:ofi
sudo make -j20
4、安装。
sudo make install -j4
5、设置环境变量。
vi ~/.bashrc
在文件末尾加上n
# MPI_ROOT 改成你自己的mpich安装路径
export MPI_ROOT=/usr/local/mpich-3.4.2
export PATH=$MPI_ROOT/bin:$PATH
export MANPATH=$MPI_ROOT/man:$MANPATH
刷新环境变量,
source ~/.bashrc
6、验证安装效果。输出正确表示安装成功。
which mpicc
mpichversion
7、python安装
安装的Ubuntu 16操作系统里面自带的Python版本一个是2.7,一个是3.5。
如果想安装一个3.7.x的版本。
注意:此处的安装不是由3.5.2升级到3.7.x,这是两个不同的版本。
安装步骤如下:
-
安装依赖环境:
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python-openssl
这一步由于下载的东西较多,一次可能无法成功,可以多执行几次,直到出现下面的提示:
升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。
-
下载Python3安装包
wget https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tgz;
-
解压安装包
tar -zxvf Python-3.7.6.tgz;
-
进入解压后的目录
cd Python-3.7.6; ./configure; make; make install;
-
zipimport.ZipImportError: can’t decompress data; zlib not available
- 安装依赖zlib、zlib-devel
sudo apt install zlib1g
sudo apt-get install zlib1g-dev
- 重新编译安装Python
./configure - 编辑Modules/Setup文件
- 找到下面这句,去掉注释
#zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz
- 重新编译安装:
make & make install
- 安装依赖zlib、zlib-devel
-
安装成功后,找到python3.7解释器位置,一般是/usr/local/bin/python3.7
-
删除原来的软连接
rm -rf /usr/bin/python3
rm -rf /usr/bin/pip3
-
添加python3的软链接
ln -s /usr/local/bin/python3.7 /usr/bin/python3
-
添加 pip3 的软链接
ln -s /usr/local/bin/pip3.7 /usr/bin/pip3
-
查看一下是否安装成功:
$ python3 -V
显示:Python 3.7.6
$ pip3 -V
显示:pip 19.2.3 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)
-
附赠pip加速小技巧
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple xxxx
至此,Python3.7.6安装成功。
8、OpenMPI
-
进入openmpi官网(https://www.open-mpi.org/software/ompi/v1.10/),下载.tar.gz文件到本地。
-
在下载路径下,解压该tar.gz文件
$ tar -zxvf openmpi-1.10.7.tar.gz
-
进入解压后生成的文件夹
$ cd openmpi-1.10.7
-
configure路径下的文件,注意"–prefix="指定的是安装路径,用户可以自己指定,在后面找得到就行。
$ ./configure --prefix="/usr/local/openmpi"
-
编译并安装
$ make $ sudo make install
-
为openmpi设置环境变量,进入~/.bashrc加入如下内容后保存并source
$ vim ~/.bashrc /* 以下内容在.bashrc中更改 */ export PATH="$PATH:/usr/local/openmpi/bin" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/openmpi/lib/" /****************************************************************/ $ source ~/.bashrc
-
测试是否安装成功:进入openmpi解压的文件夹中有一个examples,运行如下例程将为出现两行"hello",则表示安装成功
$ mpirun -np 2 ./hello_c
9、OpenCL安装
-
安装OpenCL链接
sudo apt-get install ocl-icd-opencl-dev ocl-icd-dev
-
手动编译
需要github下载OpenCL-SDK
、OpenCL-Headers
、OpenCL-ICD-Loader
、OpenCL-CLHPP
-
也可以直接git
git clone https://github.com/KhronosGroup/OpenCL-SDK.git --recursive
-
整个命令
sudo apt install libstb-dev libsfml-dev libglew-dev libglm-dev libtclap-dev ruby doxygen -y git clone https://github.com/KhronosGroup/OpenCL-SDK.git --recursive cmake -D CMAKE_INSTALL_PREFIX=./OpenCL-SDK/install -B ./OpenCL-SDK/build -S ./OpenCL-SDK cmake --build OpenCL-SDK/build --config Release --target install
-
clinfo
安装clinfo工具查看显卡对OpenCL的支持情况sudo apt-get install clinfo clinfo
============================================================================
以上内容部分来自CSDN内各位大佬的文章学习所得,非常感谢大佬们的内容,本文章仅为整合方便参考学习,因为当时记笔记忘了记链接了,所以参考的部分没加引用,非常抱歉。本文章未来会持续更新,找到链接也会补上。