Ubuntu22.04重装系统+基础配置

重装系统

note:备份数据,重装系统后home下的文件会丢失,所以先备份一下home的数据到其他的盘/mnt/下里。记住之前系统的DNS,IP和掩码。

先在Ubuntu官网下载22.04桌面版(种子链接要用迅雷下载)。但是版本还是有点高,所以在这个链接里下载。

这个是做系统盘的文件,下载下来直接在自己电脑上安装,安装一路默认下一步。

打开这个做系统盘的软件,点击左上角文件-打开-打开下载的镜像系统文件-打开.
在这里插入图片描述
在这里插入图片描述

选择启动-写入硬盘,看下是不是自己的u盘的名字和大小,如果是的话直接点写入,等待进度条走完。
在这里插入图片描述
在这里插入图片描述
写完之后u盘会变成如下这样:
在这里插入图片描述

服务器是关闭状态,插入U盘,开机,不停的按F11(没用,需要不停的按delete),就会到BIOS界面。一直往右有个boot,选择boot option 1回车,选择第二个选项就是u盘,然后回车。按F10保存yes。然后会重启,等待。
在这里插入图片描述
在这里插入图片描述
选第一个进入系统。然后选择install ubuntu-continue-normal installation。
在这里插入图片描述
在这里插入图片描述
选这个第三个,install now-continue。直到填用户名和密码的时候,用户名主机名啥的都填super,然后填入密码。continue之后会出来一个进度条,一直等待到进度条完成,然后点击restart。
在这里插入图片描述
restart之后是这个界面。
在这里插入图片描述

然后按回车,到了如下图界面的时候就拔掉u盘:
在这里插入图片描述

然后就正常登录就可以进去系统了。

设置静态ip+联网

点击右上角的网络设置,选到ipv4,手动,填入静态ip地址,网关和子网掩码。如果ip地址是158.132.150.249/23,那么就在netmask里填23.DNS如果有两个的话就也按照逗号和空格分成两个,最后写完是这样的:
在这里插入图片描述
然后重启一下网络,把按钮关闭再打开。
再在netplan中设置静态ip,设置教程在这:https://www.cnblogs.com/liujiaxin2018/p/16287463.html,https://zhuanlan.zhihu.com/p/613283478。注意,netplan中的ip要必须和GUI中写的ip一模一样,还有要知道网线插得是哪个口,netplan中设置就写哪个口。

问题1:右上角的网络图标有个问号

解决办法:GUI中选择设置,点击privacy,把connectivity check关闭就可以了。

问题2:设置完毕后无法连网,ping内网可以,外网不行。

解决办法:交换机上可能设置的防火墙,换一个交换机的网口也不行的话就直接换个其他的交换机,总之检查了设置之后还不行的话就是硬件问题,多试一试。

设置

安装完系统,设置完网络之后:

sudo apt update # 更新
sudo reboot # 更新完重启
# 再安装ssh 就可以远程操作了

挂载硬盘(硬盘中有原始数据)

sudo fdisk -l # 查看硬盘内容,按照大小可以找到已经插入的四个硬盘,记住名字

在这里插入图片描述

lsblk # 查看硬盘内容,按照大小可以找到已经插入的四个硬盘,记住名字

在这里插入图片描述

sudo blkid #查看硬盘的UUID

在这里插入图片描述

sudo mkdir /mnt/nvme1 #创建要挂载到的文件夹sudo nano /etc/fstab #打开文件,写入UUID=xxx /mnt/nvme1 ext4 defaults 0 0

在这里插入图片描述

sudo mount -a #执行挂载,没错就是成功
sudo reboot #重启,看开机是否自动挂载

增加用户

sh add.sh

add.sh内容如下:

#!/bin/bashadd_user(){sudo useradd -m -d /home/$1 -s /bin/bash $1sudo passwd $1sudo mkdir -p /mnt/nvme1/$1sudo mkdir -p /home/$1sudo chown $1 /mnt/nvme1/$1sudo chown $1 /home/$1sudo chmod 740 /mnt/nvme1/$1sudo chmod 740 /home/$1
}add_user "xxxx"
add_user "xxxx"

删除用户

sh del.sh

del.sh内容:

#!/bin/bashdel_user(){sudo userdel -r $1sudo rm -rf /mnt/nvme1/$1
}del_user "xxxx"
del_user "xxxx"

安装驱动

ubuntu-drivers devices #查看推荐的驱动版本
sudo apt install nvidia-driver-535-open -y #由于系统重装的是桌面版,因此不能装-server版本的
sudo reboot
sudo dpkg-reconfigre unattended-upgrades #关闭自动更新

安装完驱动出错:No devices were found

在这里插入图片描述
先卸载安装好的驱动:

 sudo apt-get --purge remove "*nvidia*" #卸载软件包sudo /usr/bin/nvidia-uninstallsudo apt purge nvidia-* #卸载并清除软件包的配置sudo apt autoremove #卸载所有自动安装且不再使用的软件包,这个最好少用

再安装不带open的版本参考资料:

 sudo apt install nvidia-driver-535 -ysudo reboot

成功。

关闭自动更新

sudo nano /etc/apt/apt.conf.d/10periodic # 把APT::Periodic::Update-Package-Lists改为 "0"
sudo dpkg-reconfigure unattended-upgrades #选NO关闭自动更新

记得在GUI上也关闭自动更新,参考资料

安装CUDA

nvidia-smi显示的是最高cuda版本。打开官网:https://developer.nvidia.com/cuda-toolkit-archive,选择CUDA 11.7,runfile(local),按照官网给的指令来。

wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run
sudo sh cuda_11.7.0_515.43.04_linux.run #(continue-accept-取消勾选driver-install)

打开bashrc文件配置,在最后写入:

export PATH=$PATH:/usr/local/cuda-11.7/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.7/lib64
source .bashrc
nvcc -V #查看此时cuda版本为11.7

安装了cuda但是其他非root账户不显示

在他们的.bashrc文件中添加:

# cuda
export PATH=/usr/bin:$PATH
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}source .bashrc

安装cudnn

官网:https://developer.nvidia.com/rdp/cudnn-archive#a-collapse805-111
下载符合要求的版本。按照这里的教程安装https://docs.nvidia.com/deeplearning/cudnn/latest/installation/linux.html, https://blog.csdn.net/takedachia/article/details/130375718。

sudo apt-get install zlib1g #先安装这个
sudo dpkg -i cudnn-local-repo-$distro-9.x.y_1.0-1_$architecture.deb
sudo cp /var/cudnn-local-repo-ubuntu2204-8.9.7.29/cudnn-local-8AE81B24-keyring.gpg /usr/share/keyrings/
sudo apt-get update
apt-cache policy libcudnn8 # 查看版本
sudo apt-get install libcudnn8=8.9.0.131-1+cuda11.8 #上面查看到的版本替换
sudo apt-get install libcudnn8-dev=8.9.0.131-1+cuda11.8 #版本替换
sudo apt-get install libcudnn8-samples=8.9.0.131-1+cuda11.8 #版本替换
#验证是否安装成功
cp -r /usr/src/cudnn_samples_v8/ $HOME
cd $HOME/cudnn_samples_v8/mnistCUDNN
sudo apt-get install libfreeimage3 libfreeimage-dev
make clean && make 
./mnistCUDNN #提示test passed就是安装成功了

安装docker

教程:https://cloud.tencent.com/developer/article/2309562

安装nvidia-docker-runtime

教程:https://blog.csdn.net/boon_228/article/details/131823459

安装anaconda

在 https://www.anaconda.com/products/distribution#Downloads 上下载anaconda,然后:

bash Anaconda.xxxxx.sh #一路回车+yesnano .bashrc #写入下面
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/suyuejiao/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; theneval "$__conda_setup"
elseif [ -f "/home/suyuejiao/anaconda3/etc/profile.d/conda.sh" ]; then. "/home/suyuejiao/anaconda3/etc/profile.d/conda.sh"elseexport PATH="/home/suyuejiao/anaconda3/bin:$PATH"fi
fi
unset __conda_setup
# <<< conda initialize <<<source .bashrc

安装mmsegmentation

conda create --name mmseg python=3.8 -y
conda activate mmseg
conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia
pip install -U openmim
mim install mmengine
mim install "mmcv==2.0.0rc4"

问题1: 发生AttributeError: module ‘pkgutil’ has no attribute ‘ImpImporter’. Did you mean: ‘zipimporter’

查询之后发现python3.12版本会出现这样的问题,降版本到3.8就可以了。但是进一步发现,conda list里面的python版本是3.8,而python --version输出的则是3.12,这是bashrc的问题。将bashrc的内容修改为如下:

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

关掉窗口新开一个,发现python --version的版本和conda list里面一样了,可以用mim下载mmengine 和mmcv了。

问题2: AssertionError: MMCV==2.2.0 is used but incompatible. Please install mmcv>=2.0.0rc4

先按照mim install "mmcv>=2.0.0"下载了mmcv之后跑测试代码的时候,出现这个问题,直接下载:

mim install mmcv==2.0.0rc4

重新测试,发现问题已经解决了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/385967.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

橙单前端项目下载编译遇到的问题与解决

今天下载orange-admin前端项目&#xff0c;不过下载下来运行也出现一些问题。 1、运行出现下面一堆错误&#xff0c;如下&#xff1a; 2、对于下面这个错误 error Expected linebreaks to be LF but found CRLF linebreak-style 这就是eslint的报错了&#xff0c;可能是原作者…

隆尧县“隆品佳尧”区域公用品牌发布推介会暨地标之都七月选品会成功举办

在国家乡村振兴战略与农业现代化建设的大背景下&#xff0c;隆尧县凭借其得天独厚的地理优势和丰富的自然资源&#xff0c;正在成为区域经济与品牌建设的一颗新星。为了进一步推动隆尧县的农业发展和乡村建设&#xff0c;由隆尧县商务局指导、隆尧县电子商务公共服务中心主办的…

【leetcode 详解】生成特殊数字的最少操作【中等】(C++思路精析)

题目见下&#xff1a; 测试数据: 解题思路笔记&#xff1a; 最初拿到这道题是很蒙的&#xff0c;联想不到什么数据结构的模型&#xff08;肯定是笔者积累太少了&#xff09;&#xff0c;甚至惯性地想怎么实现“删除数字”的操作&#xff1a;在原字符串中抽出一个字符然后将剩…

南非云手机:助力企业在南非的商业活动

中国企业在南非的商业活动涵盖了多个领域&#xff0c;包括基础设施建设、采矿业、制造业、能源、电信、金融服务等。随着中国企业在南非的不断扩展&#xff0c;如何高效管理业务和保护数据安全成为了重要课题&#xff0c;而南非云手机为企业提供了强大的技术支持和便利的管理工…

神经网络与注意力机制的权重学习对比:公式探索

神经网络与注意力机制的权重学习对比&#xff1a;公式探索 注意力机制与神经网络权重学习的核心差异 在探讨神经网络与注意力机制的权重学习时&#xff0c;一个核心差异在于它们如何处理输入数据的权重。神经网络通常通过反向传播算法学习权重&#xff0c;而注意力机制则通过学…

使用flutter做圆形进度条 (桌面端)

前言 最近收到一个需求&#xff0c;需要使用flutter 来做一个圆形进度条&#xff0c;这可难倒我了&#xff0c;毕竟我是做前端的&#xff0c;flutter 之前接触的也少&#xff0c;但没办法&#xff0c;既然需求有了&#xff0c;也得硬着头皮上了&#xff0c;先来看看做的效果。…

C语言百分号打印器

目录 开头程序程序的流程图程序输入与输出的效果例1输入输出 例2输入输出 例3输入输出 结尾 开头 大家好&#xff0c;我叫这是我58。今天&#xff0c;我们来看一下我用C语言编译的百分号打印器和与之相关的一些东西。 程序 #define _CRT_SECURE_NO_WARNINGS 1 #include <…

05 循环神经网络

目录 1. 基本概念 2. 简单循环网络 2.1 简单循环网络 2.2 长程依赖问题 3. 循环神经网络的模式与参数学习 3.1 循环神经网络的模式 3.2 参数学习 4. 基于门控的循环神经网络 4.1 长短期记忆网络 4.2 LSTM网络的变体网络 4.3 门控循环单元网络 5. 深层循环神经网络…

怀旧必玩!重返童年,扫雷游戏再度登场!

Python提供了一个标准的GUI&#xff08;图形用户界面&#xff09;工具包&#xff1a;Tkinter。它可以用来创建各种窗口、按钮、标签、文本框等图形界面组件。 而且Tkinter 是 Python 自带的库&#xff0c;无需额外安装。 Now&#xff0c;让我们一起来回味一下扫雷小游戏吧 扫…

BUUCTF [MRCTF2020]Ezpop

这道题对于刚接触到pop链的我直接把我整懵了&#xff0c;一边看着魔术方法一边分析 魔术方法可以看这里PHP 魔术方法 - 简介 - PHP 魔术方法 - 简单教程&#xff0c;简单编程 (twle.cn) 代码解析 经过以上的分析我们可以理一下解题思路&#xff1a;接收参数反序列化之前先触发…

Go语言教程(一看就会)

全篇文章 7000 字左右&#xff0c; 建议阅读时长 1h 以上。 Go语言是一门开源的编程语言&#xff0c;目的在于降低构建简单、可靠、高效软件的门槛。Go平衡了底层系统语言的能力&#xff0c;以及在现代语言中所见到的高级特性。它是快速的、静态类型编译语言。 第一个GO程序…

Windows都蓝屏了,你们的SQL真的安全吗?

7月19日&#xff0c;话题“微软蓝屏”冲上了热搜榜第一。微软公司旗下部分应用和服务出现访问延迟、功能不全或无法访问问题&#xff0c;大量用户端电脑出现蓝屏现象。这个技术故障席卷全球&#xff0c;短短两个小时&#xff0c;就造成一场令人措手不及的大规模事件&#xff1a…

MATLAB-bode图编程

num[1 1];den [2 1];tf(num,den)bode(tf(num,den));hold on tf &#xff1a;传递函数 tf&#xff08;x&#xff0c;y&#xff09;&#xff1a;x是分子&#xff0c;y是分母 bode&#xff1a;伯特图 hold on&#xff1a;保持

物理机 gogs+jenkins+sonarqube 实现CI/CD

一、部署gogs_0.11.91_linux_amd64.tar.gz gogs官网下载&#xff1a;https://dl.gogs.io/ yum -y install mariadb-serversystemctl start mariadbsystemctl enable mariadbuseradd gittar zxvf gogs_0.11.91_linux_amd64.tar.gzcd gogsmysql -u root -p < scripts/mysql.…

【C/C++】C语言到C++的入门知识点(主要适用于C语言精通到Qt的C++开发入门)

【C/C】C语言到C的入门知识点&#xff08;主要适用于C语言精通到Qt的C开发入门&#xff09; 文章目录 C语言与C的不同C中写C语言代码C语言到C的知识点Qt开发中需要了解的C基础知识namespace输入输出字符串类型class类构造函数和析构函数&#xff08;解析函数&#xff09;类的继…

【C++】c++语法基础

引入&#xff0c;第一个c程序 这是用c写的helloworld程序 #include<iostream> using namespace std; int main() {cout << "hello,world\n" << endl;return 0;} 接下来我们将根据上述的代码来学习c的基本语法。 命名空间&#xff08;namespace…

基于DoDAF的陆上智能突击系统作战概念系统开发

源自&#xff1a;系统仿真学报 作者&#xff1a;王灿 纪浩然 郭齐胜 董志明 谭亚新 穆歌 注&#xff1a;若出现无法显示完全的情况&#xff0c;可 V 搜索“人工智能技术与咨询”查看完整文章 人工智能、大数据、多模态大模型、计算机视觉、自然语言处理、数字孪生、深度强…

《计算机网络》(学习笔记)

目录 一、计算机网络体系结构 1.1 计算机网络概述 1.1.1 计算机网络的概念 1.1.2 计算机网络的组成 1.1.3 计算机网络的功能 1.1.4 电流交换、报文交换和分组交换 1.1.5 计算机网络的分类 1.1.6 计算机网络的性能指标 1.2 计算机网络体系结构与参考模型 1.2.1 计算机…

基于STM32的逻辑分析仪

文章目录 一、逻辑分析仪体验1、使用示例1.1 逻辑分析仪1.2 开源软件PulseView 2、核心技术2.1 技术方案2.2 信号采集与存储2.3 数据上传 3、使用逻辑分析仪4、 SourceInsight 使用技巧4.1新建工程4.2 设置工程名及工程数据目录4.3 指定源码目录4.4 添加源码4.5 同步文件4.6 操…

如何在调整节拍时间的过程中保持生产流程的稳定性?

在快节奏的工业生产领域&#xff0c;节拍时间&#xff08;Takt Time&#xff09;——即完成一个完整产品所需的标准时间&#xff0c;是维持生产效率和流程稳定性的关键指标。然而&#xff0c;市场需求的波动、技术升级或是生产线的微调&#xff0c;都可能要求我们对节拍时间进行…