实验室服务器Ubuntu安装使用全流程

一、制作U盘启动盘

工具:

  1. 一个32G以上的U盘
  2. Rufuse镜像烧录软件下载:https://cn.ultraiso.net/xiazai.htmlRufus - 轻松创建 USB 启动盘https://cn.ultraiso.net/xiazai.html
  3. Ubuntu系统镜像:https://ubuntu.com/download/alternative-downloads(官网下载的是种子需要再用迅雷下载成iso系统镜像文件),我这里安装的是Ubuntu 22.04.5

制作过程:(在其他windows电脑上制作就行)

1.打开Rufuse,设备选择准备好的U盘,引导类型选择ISO镜像文件,其他参数如图,点击开始

2.选择ISO ,点击OK

3.选择 ,选择确定,等待制作完成即可。(使用Rufuse会自动格式化U盘,所以比较方便不需要自己去格式化)

二、使用U盘给服务器安装系统

插入U盘到需要重装的电脑上,启动电脑,按F1(或者其他),进入BIOS模式,选择U盘的Ubuntu系统,进入,根据引导安装。

参考视频:U盘安装服务器Ubuntu18.04系统_哔哩哔哩_bilibili

参考文章:Ubuntu 安装教程_erase disk and install ubuntu-CSDN博客

按照的时候因为准备整机用于服务器,所以直接清除整个磁盘并安装,如果想要安装双系统的需要选注意些,然后有的博主也选择something else自定义分盘。

更换下载源,更新软件

【Ubuntu】超详细安装Ubuntu系统_ubuntu安装-CSDN博客

三、安装显卡相关

包括了显卡驱动、cuda、cudnn。

显卡驱动

1.选择软件和更新,选择附加驱动,选择第一个驱动,点击应用更改,输入密码,等待更新完毕,打开终端输入

sudo apt-get install -f

重启即可。

cuda

2.查看cuda版本,终端输入nvidia-smi,右上角CUDA Version就是cuda的版本12.4,同时可以查看显卡信息,这里是2张4090的显卡。

3.进入cuda官网,下载对应版本的cuda,我的cuda版本是12.4,所以就下载对应12.4的cuda,记住下载的cuda只能比你电脑的低,不能高。

版本选择好后,还需要选择对应的操作系统等,操作系统选择Linux,架构选择x86_64,平台选择Ubuntu,我电脑装的是Ubuntu22.04,因此版本选择20.04,安装方式选择runfile(local),然后下面会根据前面的选择生成安装命令,如图

4.终端按顺序执行两条命令(终端粘贴是ctrl+shift+v):

第一条命令下载cuda_12.4.0_550.54.14_linux.run文件,第二条命令安装CUDA。

wget https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_550.54.14_linux.run

sudo sh cuda_12.4.0_550.54.14_linux.run

上下按键选择continue,回车确认

输入accept,回车

显卡驱动已经装了,点击空格去掉显卡驱动(driver),选择install回车安装

安装成功

如果第二条命令没反应则先安装cuda所需依赖库,使用如下命令后再执行第二条

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

5.添加CUDA环境变量

CUDA安装完成后,需要配置变量环境才能正常使用。首先在终端输入

sudo gedit ~/.bashrc

打开.bashrc文件,在文件末尾添加如下命令

export PATH=$PATH:/usr/local/cuda/bin  
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64  
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64

保存后终端输入source ~/.bashrc使之生效,这时,我们就可以在终端输入nvcc -V查看CUDA的安装信息。

cudnn

6.进入cudnn官网,下载对应版本的cudnn,我的cuda是12.4,所以下载第一个,for CUDA 12.x,并选择对应Linux版本,

下载后使用终端打开文件所在文件夹,解压并进入该文件:

tar -xvf cudnn-linux-x86_64-8.9.7.29_cuda12-archive.tar.xz
cd cudnn-linux-x86_64-8.9.7.29_cuda12-archive

复制cudnn终以下文件到cuda对应的文件夹中:

sudo cp ./include/cudnn*.h /usr/local/cuda/include 
 
sudo cp -p ./lib/libcudnn* /usr/local/cuda/lib64

授予权限

sudo chmod a+r /usr/local/cuda-12.4/include/cudnn.h /usr/local/cuda-12.4/lib64/libcudnn*

查看信息(版本号换成自己的)

cat /usr/local/cuda-12.4/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

至此完成显卡配置相关安装。

四、Anaconda安装

1.进入naconda官网,点击download直接下载

2.下载完成后,打开文件位置终端,输入以下命令安装,一直按空格和yes,最后出现'Thank you for installing Anaconda3!'表示安装成功。此时打开一个新的终端会直接进入(base)环境。

bash Anaconda3-2024.10-1-Linux-x86_64.sh

如果安装完没有显示(base),请参考安装了anaconda之后为什么不显示(base)_anaconda prompt没有base-CSDN博客

(这里有一个坑,默认安装在用户目录下的anaconda3,安装后的Anaconda3只能在你当前的用户下使用,换了别的用户就不能用了,为了所有用户都能使用,避免重复安装anaconda3,修改到一下安装目录:)

3.设置环境变量

sudo vim /etc/profile

在/etc/profile文件末尾添加下面2行命令,按Esc,输入:wq保存退出

export ANACONDA_HOME=/usr/local/anaconda3
export PATH=$ANACONDA_HOME/bin:$PATH

刷新

source /etc/profile

4.授权所有用户使用

vim /etc/skel/.bashrc

在文件最后添加以下代码:

# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/usr/local/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/usr/local/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/usr/local/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/usr/local/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<

五、Anaconda的简单使用

1.创建虚拟环境

conda create -n env_name python==3.8

这表示创建python版本为3.8、名字为env_name的虚拟环境。

创建后,env_name文件可以在Anaconda安装目录envs文件下找到。在不指定python版本时,自动创建基于最新python版本的虚拟环境。

2.查看所有虚拟环境列表

conda env list

3.激活虚拟环境

conda activate env_name

4.退出虚拟环境

conda deactivate

5.删除虚拟环境

#删除虚拟环境及其中所安装的包
conda remove --name env_name --all

#只删除虚拟环境中的某个或者某些包
conda remove --name env_name  package_name

6.导出虚拟环境

很多的软件依赖特定的环境,我们可以导出环境,这样方便自己在需要时恢复环境,也可以提供给别人用于创建完全相同的环境。

#获得环境中的所有配置
conda env export --name myenv > myenv.yml
#重新还原环境
conda env create -f  myenv.yml

7.依赖包管理

#查看当前环境安装的依赖包
conda list

#在当前虚拟环境安装包
conda install numpy
conda install numpy=0.20.3
conda update numpy

#卸载包
conda uninstall package_name

8.换源(中科大源)

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
 
conda config --set show_channel_urls yes

9.打开终端是否主动激活anaconda环境

conda config --set auto_activate_base false   #修改为true或false

六、配置SSH

1.升级apt-get

sudo apt-get update 						# 更新源
sudo apt-get upgrade						# 更新已安装包

2.安装ssh服务器、ssh客户端

sudo apt install openssh-server			# 安装ssh服务器
sudo apt install openssh-client			# 安装ssh客户机

3.下载vim

sudo apt-get remove vim-common			# 卸载vim-common版本
sudo apt-get install vim			    # 下载最新版本的vim

4.配置ssh

sudo vi /etc/ssh/ssh_config				

点击Insert键,去掉# 去掉PasswordAuthentication yes前面的"#"号

同时把端口打开,去掉# Port 22前面的#号,端口号22

最后,点击Esc,输入:wq退出

5.配置sshd

sudo vi /etc/ssh/sshd_config	

在PermitRootLogin prohibit-password这行行首加上"#"

在此行下面添加新一行

PermitRootLogin yes

同时把端口打开,去掉# Port 22前面的#号,端口号22

最后,点击Esc,输入:wq退出

6.开启防火墙,并让防火墙允许ssh服务通过防火墙

sudo ufw enable
sudo ufw allow ssh
sudo ufw allow 22/tcp

七、SSH的简单使用

1.启动SSH

/etc/init.d/ssh start

#或者
sudo service ssh start

2.重启SSH

sudo systemctl restart ssh
#或者
sudo systemctl enable --now ssh

3.关闭SSH

sudo systemctl disable --now ssh

4.开启SSH端口

sudo ufw allow ssh

开启后可以从任何远程计算机通过SSH连接到Ubuntu系统

连接指令:

#ssh linux用户名@linuxIP地址
ssh user@192.168.00.0

5.查看SSH是否在运行,亮绿灯表示运行

sudo systemctl status ssh

6.允许SHH开启自启动

sudo systemctl enable ssh

八、路由器端口转发

1.首先查看电脑的ip地址,使用以下命令查看网卡信息,inet后面的192.168.0.00就是你服务器的ip地址

sudo apt install net_tools				#先安装最新版本的net_tools				

ifconfig

2.使用其他电脑打开cmd,尝试ping 服务器ip 地址,发现连接超时ping不通,按理来说校园网就是一个局域网,是可以直接ping通并且远程连接的,后来发现,这个服务器和其他几台服务器使用一个路由器连接的,相当于被路由器阻拦了,没办法通过校园网直接连接。

ping 192.168.0.0

3.路由器端口转发,查看路由器的管理IP,一般都贴在路由器上,在服务器上浏览器上直接打开这个ip地址就可以进入路由器后台,我们需要做的就是在路由器后台添加一个端口转发,把路由器这个局域网下服务器的端口通过路由器转发到路由器外(校园网)的局域网下,那么其他在校园网下的电脑就可以远程连接了。

在路由器后台找到端口映射(端口转发),不同路由器位置可能不一样,我这是荣耀的路由器,在NAT服务下,这里服务名随便起,设备就选择服务器,主机IP就是服务器的IP,内部端口就是你服务器设置SSH端口22,外部端口我看有人说1-1000是保留端口最好别写,推荐写10000以上的端口,这个外部端口就是其他电脑连接这台服务器的端口了,例如我这里设置的是22222。

4.成功连接:配置完毕后点击保存即可(有的路由器可能需要重启),然后查看路由器的IP地址,点击路由器信息,就可以看到IPv4下有一个WAN IP(10.60.166.55),这个IP地址就是已经远程连接的IP地址的,而不是用服务器的IP地址连接,然后端口也是路由器的外部端口(22222),路由器会自动转发。

ssh 用户名@路由器IP地址 -p 外部端口号

ssh npu225@10.60.166.55 -p 22222

九、服务器远程使用

实验室的服务器很多人使用,所有一般来说,我们为每一个人都创建一个用户,每个用户在/home目录下都有自己的一个文件夹,大家登录的时候登录自己的账号,然后把文件放在自己的文件夹下,这样就不会混乱了。

1.激活root用户:root用户具有操作系统的所有权限,终端输入一下命令,给root设置密码

sudo passwd root

2.切换root用户:命令行前面会变成root@npu225-07,root表示你现在登录的是root账号

su root

3.创建新用户

useradd -m xiaoming    #创建名为xiaoming的用户
passwd xiaoming        #给用户xiaoming设置秘密

4.退出root用户

exit

5.远程连接:

至于vscode,pycharm如何远程连接服务器网上很多视频,或者用Xterminal,Xshell等其他工具都可以,只要记住连接的服务器IP地址、端口号、用户名、密码就可以远程连接了。

ssh xiaoming@10.60.166.55 -p 22222

参考链接:

0启动u盘制作与ubuntu系统安装_哔哩哔哩_bilibili

服务器Ubuntu18.04系统盘(U盘启动)制作_哔哩哔哩_bilibili

使用rufus制作Ubuntu安装U盘_哔哩哔哩_bilibiliUbuntu20.04配置深度学习环境(全网最细最全)-CSDN博客使用rufus制作Ubuntu安装U盘_哔哩哔哩_bilibili

Ubuntu 22.04.5 LTS深度学习环境配置个人总结(2024.9.27)_ubuntu22.04.5-CSDN博客

Ubuntu: 配置ssh,保姆级教程_ubuntu配置ssh-CSDN博客

路由器端口映射(虚拟服务器)+ssh配置_端口映射远程ssh 路由器-CSDN博客

什么是端口转发?路由器如何正确的设置端口转发和范围转发?(外网访问必备设置)_路由器端口转发-CSDN博客

路由器端口转发&远程桌面控制:一电脑连接不同局域网的另一电脑-CSDN博客

linux安装anaconda并授权给所有用户使用_anaconda 权限-CSDN博客

相关推荐
2301_8153893710 分钟前
【笔记】在虚拟机中通过apache2给一个主机上配置多个web服务器
linux·服务器·笔记
梁萌18 分钟前
Docker中的分层(Layer)
运维·docker·容器
IT 古月方源20 分钟前
关于 VRRP的详解
运维·网络·tcp/ip·网络安全·智能路由器
檀越剑指大厂20 分钟前
【Linux系列】sed命令的深入解析:如何使用sed删除文件内容
linux·运维·服务器
不爱学英文的码字机器1 小时前
深入理解 Linux 文件时间戳:atime、mtime 和 ctime 的概念及应用
linux·运维·服务器
迷迭所归处2 小时前
Linux系统 —— 进程控制系列 - 进程的等待:wait 与 waitpid
linux·运维·服务器
周先森的怣忈2 小时前
RHCE(第二部分)-----第三章:shell条件测试
linux·rhce
Charlie__ZS2 小时前
Docker安装
运维·docker·容器
AIGCnn2 小时前
jetson 无显示器配置WIFI
linux·jetson
yulingfeng592 小时前
Centos7 yum 报错“Could not resolve host: mirrorlist.centos.org; Unknown error“
linux·运维·centos