常用linux环境配置大全

本文详述了Linux系统的配置过程,包括解决Python模块找不到、git HTTPS访问问题,配置Ubuntu镜像源,远程连接,以及冷门知识如查看端口进程、关闭系统进程等。还涵盖了基本操作如文件拷贝、权限修改、软件安装与卸载,以及shell命令、Docker、CUDA、conda、数据库等多方面内容。
摘要由CSDN通过智能技术生成

linux配置环境

常见问题

python找不到模块

import sys
import os
curPath = os.path.abspath(os.path.dirname(__file__))
rootPath = os.path.split(curPath)[0]
sys.path.append(rootPath)
git无法访问https,http可以的问题
git config --global http.sslverify false

配置ubantu镜像源

cp /etc/apt/sources.list /etc/apt/sources.list.bak
echo ''>/etc/apt/sources.list
echo deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial main restricted universe multiverse>>/etc/apt/sources.list
echo deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse>>/etc/apt/sources.list
echo deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse>>/etc/apt/sources.list
echo deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ xenial-security main restricted universe multiverse>>/etc/apt/sources.list
apt-get update
# cp /etc/apt/sources.list.bak /etc/apt/sources.list # 恢复镜像源
# deb cdrom:[Ubuntu 20.04.3 LTS _Focal Fossa_ - Release amd64 (20210819)]/ focal main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://cn.archive.ubuntu.com/ubuntu/ focal main restricted
# deb-src http://cn.archive.ubuntu.com/ubuntu/ focal main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://cn.archive.ubuntu.com/ubuntu/ focal-updates main restricted
# deb-src http://cn.archive.ubuntu.com/ubuntu/ focal-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://cn.archive.ubuntu.com/ubuntu/ focal universe
# deb-src http://cn.archive.ubuntu.com/ubuntu/ focal universe
deb http://cn.archive.ubuntu.com/ubuntu/ focal-updates universe
# deb-src http://cn.archive.ubuntu.com/ubuntu/ focal-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu 
## team, and may not be under a free licence. Please satisfy yourself as to 
## your rights to use the software. Also, please note that software in 
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://cn.archive.ubuntu.com/ubuntu/ focal multiverse
# deb-src http://cn.archive.ubuntu.com/ubuntu/ focal multiverse
deb http://cn.archive.ubuntu.com/ubuntu/ focal-updates multiverse
# deb-src http://cn.archive.ubuntu.com/ubuntu/ focal-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://cn.archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse
# deb-src http://cn.archive.ubuntu.com/ubuntu/ focal-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
deb http://archive.canonical.com/ubuntu focal partner
deb-src http://archive.canonical.com/ubuntu focal partner

deb http://security.ubuntu.com/ubuntu focal-security main restricted
# deb-src http://security.ubuntu.com/ubuntu focal-security main restricted
deb http://security.ubuntu.com/ubuntu focal-security universe
# deb-src http://security.ubuntu.com/ubuntu focal-security universe
deb http://security.ubuntu.com/ubuntu focal-security multiverse
# deb-src http://security.ubuntu.com/ubuntu focal-security multiverse

# This system was installed using small removable media
# (e.g. netinst, live or single CD). The matching "deb cdrom"
# entries were disabled at the end of the installation process.
# For information about how to configure apt package sources,
# see the sources.list(5) manual.

阿里镜像源-推荐

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

远程连接linux系统

使用软件:xshell、finalshell、windows power、pycharm

首先要安装这个

在Ubuntu终端中输入命令 
sudo apt-get install openssh-server

查看ip

ip add
远程登录
# 安装步骤:
# 假如Ubuntu作为服务端,需要安装ssh服务端软件.执行命令: sudo apt-get install openssh-server
# 客户端电脑如果是macOS系统则不需要安装ssh客户端软件,默认已经安装过了,直接可以使用ssh命令
# 客户端电脑如果是Windows系统则需要安装OpenSSH for Windows这个软件
# 
ssh root@IP地址
输入密码:

冷门知识

kaldi配置环境问题

export PATH=/home/sunao/data/kaldi/tools/python:${
   PATH}
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH:-}:${LIBLBFGS}/lib/.libs
export PATH=/root/data/kaldi/tools/python:${
   PATH}
export SRILM=/mnt/22833c4a-0d61-4c31-a844-6b9adb09ce54/data/kaldi/tools/srilm
export PATH=${
   PATH}:${SRILM}/bin:${SRILM}/bin/i686-m64
export PATH=${
   PATH}:/mnt/22833c4a-0d61-4c31-a844-6b9adb09ce54/data/kaldi/tools/kaldi_lm

解决编码问题

[root@192 script]# locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.utf-8"
LC_NUMERIC="en_US.utf-8"
LC_TIME="en_US.utf-8"
LC_COLLATE="en_US.utf-8"
LC_MONETARY="en_US.utf-8"
LC_MESSAGES="en_US.utf-8"
LC_PAPER="en_US.utf-8"
LC_NAME="en_US.utf-8"
LC_ADDRESS="en_US.utf-8"
LC_TELEPHONE="en_US.utf-8"
LC_MEASUREMENT="en_US.utf-8"
LC_IDENTIFICATION="en_US.utf-8"
LC_ALL=en_US.utf-8

执行命令
LC_ALL="en_US.utf-8"

快速搜索文件

whereis python3.6

在linux环境中直接 ./123.py 执行123.py文件,添加解释器

#!/usr/bin/python3 
# 在文件首行添加这句话
print()

设置vim默认显示行号

vim /etc/vimrc
# 在文件中添加
set nu

后台运行程序命令

nohup 命令 2>&1 &

vim排序

# 参数:
#   -k 第几列
#   -t 分割符 默认是空格  sort -k 4
#   -n 安装数字值的大小进行排序
#   -r 逆序
sort -k 4 -t"." -n

# 使用以下命令,将在排序时去除重复的行。对于重复的多行,将仅仅保留第一行,而其它的行将被删除。
:%sort u

# 使用以下命令,可以针对所有文本进行倒序排序:
:%sort!

# 使用以下命令,将按照数字进行排序:
:%sort n

#组合以上命令,则可以按照数字倒序排序:
:%sort! n

设置自启动命令

nohup python /home/<username>/tray.py &

配置环境

打开环境配置文件:vim ~/.bashrc 文件

查看系统版本

cat /etc/issue 

查看端口进程

netstat -tulpn

kill -9 端口号

关闭系统进程

关闭gunicorn的方式:
    通过搜索运行的py文件名:ps aux|grep Flaskweb
            kill -9 端口号        

Linux基本操作

远程拷贝

scp 
# 1.远程拷贝文件:
	scp 本地文件 远程服务器用户名@远程服务器ip地址:指定拷贝到远程服务器的路径
	
	scp 远程服务器用户名@远程服务器ip地址:远程服务器文件 指定拷贝到本地的路径
		scp root@ip地址:linux文件路径 本地路径
# 2.远程拷贝目录︰
scp -r本地目录远程服务器用户名@远程服务器ip地址:指定拷贝到远程服务器的路径scp -r远程服务器用户名@远程服务器ip地址:远程服务器目录指定拷贝到本地的路径-r表示递归拷贝整个目录

相关软件

filezilla

切换权限

sudo -s
sudo 命令 # 使用管理员权限
# 查看用户
whoami 当前用户是谁
who 有哪些用户
# 查看命令位置
which 

# 切换权限 
# 第一个数字是root 用户组 其它用户
# 三位数字 表示rwx 可读可写可执行
# 数字大小根据二进制 000 而来 001=1 010=2 011=3 100=4 101=5 110=6 111=7
# 哪位是1代表具有哪种权限,0代表不具有这种权限
chmod 755 * # 

修改密码

# 修改密码
passwd
shutdown -h now  # 立刻关机
reboot # 重启
ubantu密码:123456789
root密码:123456

查看相关信息

# 查看python版本
python -V
# 查看pip版本
pip -V
# 查看python解析器位置
whereis python

# neo4j数据库的启动和关闭 
neo4j start
neo4j stop

迁移环境

pip freeze > requirements.txt
-------------------------------------
requirements.txt
appdirs==1.4.3
backports.functools-lru-cache==1.5
beautifulsoup4==4.5.3
bs4==0.0.1
cycler==0.10.0
kiwisolver==1.0.1
lxml==3.7.3
matplotlib==2.2.0
numpy==1.14.1
pandas==0.22.0
pyparsing==2.2.0
python-dateutil==2.6.1
pytz==2018.3
six==1.11.0
virtualenv==15.1.0
-----------------------------------

pip install -r requirements.txt

软件安装

# 离线安装
deb文件格式安装
sudo dpkg -i deb安装包

# 在线安装
apt-get方式安装
sudo apt-get install QQ # 需要配置镜像源

软件卸载

# 离线卸载
deb文件格式卸载
sudo dpkg -r 软件名

# 在线卸载
apt-get方式卸载
sudo apt-get remove QQ # 需要配置镜像源

WSL

默认使用root登录

 C:\Users\administer\AppData\Local\Microsoft\WindowsApps> .\ubuntu.exe config  --default-user root
  C:\Users\administer\AppData\Local\Microsoft\WindowsApps> .\ubuntu.exe config  --default-user sunao

切换G++版本

1.如何查看编译器的版本

# 查看当前gcc的版本
gcc -v

# 查看当前g++的版本
g++ -v

2.如何查询系统当前已安装的编译器版本

# 编译器一般都安装在/usr/bin下
cd /usr/bin

# 查看已安装的编译器
ls g++*
ls gcc*

3.如何安装需要的编译器版本

# 例如安装版本为4.8的编译器
sudo apt-get install gcc-4.8 g++-4.8

4.将已安装的编译器版本加入到候选表中

 #最后的数字是优先级,可以根据需要设置
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 100

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 100

5.切换编译器版本

# 切换gcc的版本
sudo update-alternatives --config gcc

# 切换g++的版本
sudo update-alternatives --config g++

# 一定要注意切换是两个一起切换,保持一致性,不然可能会出问题

# 输入命令后会输出如下内容,直接上下建切换即可:2 个候选项可用于替换 g++ (提供 /usr/bin/g++)##   选择       路径            优先级  状态

  Selection    Path            Priority   Status
------------------------------------------------------------
* 0            /usr/bin/gcc-8   100       auto mode
  1            /usr/bin/gcc-8   100       manual mode
  2            /usr/bin/gcc-9   100       manual mode

要维持当前值[*]请按<回车键>,或者键入选择的编号:1

切换完成

shell常用命令

tree

语法

tree [-aACdDfFgilnNpqstux][-I <范本样式>][-P <范本样式>][目录…]

参数说明:

-a 显示所有文件和目录。
-A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。
-C 在文件和目录清单加上色彩,便于区分各种类型。
-d 显示目录名称而非内容。
-D 列出文件或目录的更改时间。
-f 在每个文件或目录之前,显示完整的相对路径名称。
-F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","=","@","|"号。
-g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码。
-i 不以阶梯状列出文件或目录名称。
-L level 限制目录显示层级。
-l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。
-n 不在文件和目录清单加上色彩。
-N 直接列出文件和目录名称,包括控制字符。
-p 列出权限标示。
-P<范本样式> 只显示符合范本样式的文件或目录名称。
-q 用"?"号取代控制字符,列出文件和目录名称。
-s 列出文件或目录大小。
-t 用文件和目录的更改时间排序。
-u 列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码。
-x 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目录予以排除在寻找范围外。

安装之后,您可以通过下面的使用案例进一步学习tree命令的用法。

它将递归地显示工作目录的内容,显示子目录和文件,以及子目录和文件总数的摘要。您可以使用-a标志显示隐藏文件。

tree -a 

要使用-f列出每个子目录和文件的完整路径内容,如下所示。

tree -f 

您还可以使用-d选项指定tree只打印子目录不显示里面的文件。如果与-f选项一起使用,tree将打印完整的目录路径,如下所示。

tree -d 

tree -df 

可以使用-L选项指定目录树的最大显示深度。例如,如果您希望深度为2,则运行以下命令。

tree -f -L 2 

下面是将目录树的最大显示深度设置为3的使用案例:

tree -f -L 3 

若要仅显示与通配符内容匹配的文件,请使用-P选择并指定您的匹配内容。在本例中,该命令将只列出与cata*匹配的文件,例如Catalina.sh, catalina.bat等将被列出。

tree -f -P cata* 

还可以通过添加–prune选项告诉tree从输出内容中删除空目录,如下所示。

tree -f --prune 

tree还支持一些有用的文件选项,如-p,它以类似ls -l命令的方式打印每个文件的文件类型和权限。

tree -f -p  

此外,要打印每个文件的用户名(如果没有用户名,则为UID),使用-u选项,而-g选项打印组名(如果没有组名,则为GID)。您可以组合-p、-u和-g选项来执行类似于ls -l命令的输出结果,显示文件和目录的详细信息。

tree -f -pug 

还可以使用-s选项打印每个文件的字节大小以及文件名。为了以更易于阅读的格式打印每个文件的大小,使用-h选项并指定大小字母表示千字节(K)、兆字节(M)、千兆字节(G)、tb (T)等。

tree -f -s 
或者

tree -f -h 

要显示每个子目录或文件的最后修改时间的日期,请使用-D选项,如下所示。

tree -f -pug -h -D 

另一个有用的选项是–du,它将显示指定目录所占用的磁盘空间。


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

语音不识别

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值