首页 > 其他分享 >基于LXD搭建实验室GPU服务器(一)——宿主机的基本配置

基于LXD搭建实验室GPU服务器(一)——宿主机的基本配置

时间:2023-08-26 15:56:48浏览次数:35  
标签:universe restricted 宿主机 LXD ssh ubuntu GPU main multiverse

从零搭建服务器是一个看似简单实则有些繁琐的操作,本文旨在记录并整合这些操作,使得后续搭建可以成为一个流水线般简单流程的过程。

操作系统的安装过程网络上资源非常多,本文不再赘述。

本文将对刚安装的ubuntu20.04.06操作系统进行基本配置。

换源

由于GFW的存在,因此需要先对apt进行换源操作以确保后续流程顺畅。

首先备份原来的源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

然后修改apt源的文件

# 修改apt源的文件
sudo vim /etc/apt/sources.list

# 可以修改为aliyun源或者其它国内源
# 默认注释了源码仓库,如有需要可自行取消注释
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse 
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse 
#deb 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 main restricted universe multiverse 
#deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse 
#deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse 
#deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse 
#deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
# deb-src https://mirrors.ustc.edu.cn/ubuntu/ jammy-proposed main restricted universe multiverse

更新apt cache以及升级包

sudo apt update
sudo apt upgrade # 可选

安装必要的包

# build-essential 包括了很多开发必要的软件包,避免了一个个安装的麻烦
sudo apt install build-essential

# 使用ifconfig查看网络配置需要
sudo apt install net-tools

# 好用的命令行编辑工具
sudo apt install vim

sshd配置

我们一般使用ssh连接服务器,而在客户端,我们需要部署ssh(一般默认包含),在服务端,我们部署的是sshd。

sshd安装

sudo apt install openssh-server

sshd配置

编辑sshd配置文件

sudo vim /etc/ssh/sshd_config

部分常用配置如下

# 更换ssh端口
Port 22

# 是否允许密码登录,将PasswordAuthentication设置为no可以禁用密码登录
# 为了安全起见,此处禁用密码登录,采用ssh密钥登录
PasswordAuthentication no

# 默认禁止root登录,将prohibit-password改成yes可以允许root登录
PermitRootLogin prohibit-password

# 最大尝试登录次数
MaxAuthTries 6

# 是否允许ssh密钥认证登录
PubkeyAuthentication yes

配置ssh密钥免密登录

ssh密钥介绍

通常情况下,我们使用密码登录,但是容易遇到被暴力破解的问题。博主实验室的GPU服务器就遭遇暴力破解且部署挖矿程序的经历,因此我们需要使用更加安全的登录方式——ssh密钥登录。

密钥的原理大致可以理解为:利用密钥生成器生成一对密钥(分别为私钥和公钥)。我们将公钥添加到某个服务器的某个账户上,客户端持有公钥即可完成认证登录,由于ssh密钥几乎无法破解,因此只有在服务器上注册了公钥的客户端才可登录服务器。

下面我们将介绍如何配置ssh密钥登录。

ssh服务端配置

密钥一般存储在用户目录~.ssh目录下,其中包含了authorized_keys文件,我们需要将公钥写入authorized_keys文件中,即可完成注册。但是刚安装的操作系统可能没有该目录和文件,因此我们需要创建并赋予600权限。

# 创建.ssh文件夹
mkdir ~/.ssh

# 创建authorized_keys文件,并赋予600权限
touch ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

我们配置好了服务端后,需要在客户端生成一对密钥,并在服务端注册公钥即可完成ssh密钥登录。

ssh客户端配置

以win11平台连接为例(其余平台大同小异)。

若之前没有生成过ssh密钥,可以在cmd中运行以下命令生成。

C:\User\<your_name>> ssh-keygen

Generating public/private rsa key pair.
Enter file in which to save the key (C:\User\<your_name>/.ssh/id_rsa): <== 密钥存储路径,默认即可
Created directory 'C:\Users\<your_name>/.ssh'.               
Enter passpharase (empty for no passpharase):                          <== 密钥密码,在使用时需要输入,可以留空

此时我们进入刚才选择的密钥存储路径,默认为C:\User\<your_name>/.ssh,即可看见公钥和私钥,一般公钥命名为id_rsa.pub,私钥命名为id_rsa。私钥我们自己持有,公钥可以通过ftp服务上传至服务器的~/.ssh文件夹下,然后运行以下指令将公钥写入authorized_keys文件:

cat id_rsa.pub >> authorized_keys

然后重启sshd服务

sudo systemctl restart sshd

随后就可以使用ssh密钥登录了。

ssh密钥登录

此处以xshell为例,输入完登录名后,用户密钥处选择私钥路径,密码选择生成ssh-key时的密码,点击确认即可完成登录。
image

防火墙配置

为了方便调试,暂不配置防火墙,待后续规划好端口后开启防火墙统一开放端口,此处仅存放一些常用指令便于以后查阅。

需要注意的是,开启防火墙时需要保证ssh端口(默认22)处于开启状态,否则可能导致ssh中断并且无法连接。

# 查看防火墙状态
sudo ufw status verbose

# 开启/关闭防火墙
sudo ufw enable/disable

# 放行端口
sudo ufw allow <port_number>/<protocal>

# 禁用端口
sudo ufw delete allow <port_number>

# 重置防火墙
sudo ufw reset

# 重启防火墙
sudo ufw reload

# 查看端口是否开放
lsof -i:<port_number>

至此,宿主机的基本配置完成,后续将进行cuda和nvidia驱动的安装。

标签:universe,restricted,宿主机,LXD,ssh,ubuntu,GPU,main,multiverse
From: https://www.cnblogs.com/treasurew/p/17658788.html

相关文章

  • 抢占GPU的脚本
    我主要利用Python多进程编程,通过占用GPU内存,从而达到占用GPU的目的。关于代码的解释见我的个人博客,以下主要介绍如何使用该脚本。我的Python版本为3.11,执行命令如下pythongrab_gpu.py--n3--otime30--spath./train.sh其中n表示需要占用的GPU个数,otime表示占用时间,spath......
  • Hello Cuda(一)——GPU设备检测
    #include"device_launch_parameters.h"#include<iostream>intmain(intargc,char*argv[]){intdeviceCount;//设备数目cudaGetDeviceCount(&deviceCount);for(inti=0;i<deviceCount;i++){cudaDeviceProp......
  • 解决方案 | 1分钟快速解决 win10 任务管理器性能不显示GPU?
    1问题环境:win1022h2    2解决方法  win+r输入dxdiag回车,查看下面信息:(1)确认你的Windows10版本号大于1909,如果确认,在任务管理器进程页右键名称一栏,将GPU勾选上即可。如果Windows10版本过旧,更新至1909版本或以上即可。  (2)还是上面图片点击【显示】,确保此......
  • 基因组大数据计算: CPU和GPU加速方案深度评测
    随着NGS测序通量的大幅提高,搭配高效NGS二级分析技术的精准解决方案快速融进基因组学的各个应用领域:遗传进化、临床诊断、分子育种、医药开发等。以下我们通过对基于CPU和GPU不同硬件平台的NGS二级分析方案进行详细评测,以期为基因组学研究领域的用户提供参考。Sentieon软件是面向CPU......
  • GPU与CUDA C编程基本知识
    一、CPU与GPU的异同CPU:延迟导向内核,所谓延迟,指指令发出到得到结果中间经历的时间。GPU:吞吐导向内核,所谓吞吐量指单位时间内处理的指令数量。其适合于计算密集或者数据并行的场合。二、CUDA2.1简介CUDA(ComputeUnifiedDeviceArchitecture)是由英伟达公司2007年开始推出,初衷......
  • 使用 UCS(On-Premises) 管理您的GPU资源池,释放AI大模型算力潜能
    本文分享自华为云社区《使用UCS(On-Premises)管理您的GPU资源池,释放AI大模型算力潜能》,作者:云容器大未来。AI技术现状及发展趋势过去十余年,依托全球数据、算法、算力持续突破,人工智能全面走向应用,已成为社会生产生活的支柱性技术。2020年后,当自动驾驶、人脸识别等热门应用发......
  • 强化学习算法如何将GPU利用率提高到100%——在线强化学习如何将GPU利用率提升至100%
    一直有个疑问,那就是“强化学习算法如何将GPU利用率提高到100%”,在一些论坛中也有人会提出这样的问题,但是一直也没有人比较正面的回答过这个问题,为此正好自己又想到了这么一个问题,于是想在这里正面的谈论下这个问题。......
  • Systrace看GPU渲染花费时间之Fence
    一、前言如上图所示的Systrace中,VSYNC-app基本上没有什么变化,但是VSYNC-sf却一直在更新有可能是什么原因?VSYNC-app的作用通知app去开始进行绘制渲染更新UI了,DispSync按照屏幕的刷新率的速率去通知app,因此app会以跟屏幕刷新率匹配的速率去绘制渲染更新UI。而在手......
  • 区分GPU和CPU
    做项目,一直不清楚GPU和CPU的概念。 超算:一群计算机连接一起,获得更强大的计算能力,使用GPU技术。以前是串行计算,现在是并行提交任务计算。CPU由于物理限制,工艺壁垒,主频无法突破,GPU在高速增长。GPU是专门为处理图形任务而产生的芯片对于GPU来说,它的任务是在屏幕上合成显示数......
  • 在Linux宿主机上直接读写虚拟机磁盘文件
    主要是使用guestmount命令来挂载KVM磁盘镜像并从中提取文件,以下是具体操作步骤:1、宿主机安装libguestfs工具集:sudoapt-getinstalllibguestfs-toolssudoyuminstalllibguestfs-tools2、使用guestmount命令挂载KVM磁盘镜像:sudoguestmount-a/path/to/kvm-imag......