Ubuntu20.04离线安装全教程(包括DellR940重置Raid 5、安装Ubuntu、设置root、安装nvidia英伟达显卡驱动及设置防火墙白名单)

news2024/12/27 0:19:08

本文记录重装Ubuntu20.04的所有记录,从服务器磁盘阵列重新排列、Ubuntu 20.04系统安装、配置root权限、安装Nvidia显卡驱动以及设置防火墙白名单的全部操作。

每一部分参考的博客的出处会放置于段落末尾,表示感谢!

一、重置服务器磁盘阵列,制作RAID 5

首先,RAID 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。 RAID 5是RAID 0和RAID 1的折中方案。RAID 5具有和RAID 0相近似的数据读取速度,并且多了一个奇偶校验信息,RAID 5的磁盘空间利用率要比RAID 1高,存储成本相对较低,是运用较多的方案之一。

如是全新的服务器或者空置的服务器(磁盘中未有先前数据),可忽略该步骤!

1.开机界面长按 F2 进入BIOS配置界面,点击Device Settings;

2.选择第一个阵列卡项(例如RAID 5)按回车;

3.点击Coufiguration Management 管理配置;

点击 View Disk Group Properties   查看当前disk配置        

点击 Clear Configuration                清除RAID配置

点击confirm,确认清除默认RAID设置,但磁盘内的数据未清空。

4.格式化disk, 清除写在DISK的数据;

选择磁盘,点击Clear清除磁盘数据,时间可能较长。

到达100%时代表清理完成。

5.点击Create Vitrual Disk创建一个虚拟磁盘,重新构建RAID 5;

选择磁盘时,建议HDD和SSD分别组阵列,合在一个RAID中会影响磁盘性能。

6.创建成功后,请等待磁盘初始化,查看物理信息都为online状态时,可安装系统;

重装服务器磁盘阵列并配置RAID的阶段到此告一段落!

该部分参考:https://blog.csdn.net/weixin_44707364/article/details/141678556

二、重新安装Ubuntu20.04系统

大体流程:DELL服务器开机按F2,选择Boot设置,选择U盘或DVD启动,安装Ubuntu20.04镜像

关键步骤1:选择启动项

关键步骤2:是否清空磁盘或者覆盖前序安装版本

建议选择清空磁盘并安装最新的Ubuntu 20.04

三、设置Ubuntu系统的root权限

# 设置root密码         
$ sudo passwd root

# 切换至root权限
$ su -

四、vi编辑模式出错,修改编辑模式

离线环境vim未安装,先用vi替代方案,但vi会出现编辑出错的情况。

# 编辑文件/etc/vim/vimrc.tiny,将“compatible”改成“nocompatible”非兼容模式,设置回车“删除”
$ vi /etc/vim/vimrc.tiny

# 修改以下内容:
...
set nocompatible
set backspace=2
...

五、配置ssh

一共安装三个ssh相关组件:

openssh-client、openssh-server、openssh-sftp-server

安装包链接:http://archive.ubuntu.com/ubuntu/pool/main/o/openssh/

本文下载版本:

openssh-client_8.2p1-4_amd64.deb

openssh-server_8.2p1-4_amd64.deb

openssh-sftp-server_8.2p1-4_amd64.deb

1.安装命令:

$ dpkg -i *.deb

2.修改配置

# 修改其中内容
$ vim /etc/ssh/sshd_config

...
#PermitRootLogin prohibit-password
# 允许root直接登录
PermitRootLogin yes 
...
#PermitEmptyPasswords no
# 因为设置了root密码,所以需要修改为no
PermitEmptyPasswords no 
...

3.重启ssh服务

# 重启服务
$ systemctl restart ssh

至此,配置完成!

该部分参考博客链接如下:

https://www.cnblogs.com/ddzzhh/p/18067421

https://blog.csdn.net/yzy1103203312/article/details/78646679

六、配置UFW设置防火墙白名单

根据管理和安全考虑,采用Ubuntu自带的UFW防火墙保证服务器的安全性。

**重要提醒,如ssh远程访问机器,请提前将ssh端口和远程访问机器的IP纳入白名单,否则开启防火墙后将连接不上服务器或主机!!

# 检查防火墙状态
$ sudo ufw status verbose

# 开启ssh端口
$ sudo ufw allow ssh

# 开启特定端口及IP
$ sudo ufw allow 7722/tcp
$ sudo ufw allow http
$ sudo ufw allow from *.*.*.*
$ sudo ufw allow 7100:7200

# 禁止所有连接
$ sudo ufw deny from 23.24.25.0/24

# 删除规则
# 方法1:
# 先查看规则号
$ sudo ufw status numbered
# 删除对应规则号
$ sudo ufw delete 3
# 方法2:
# 或者直接删除对应规则
$ sudo ufw delete allow 8069

# 重置防火墙,会默认禁用防火墙,并删除所有规则
$ sudo ufw reset

设置完成后,重启防火墙:

# 开启防火墙
$ sudo ufw enable

至此,完成!

本部分参考博客:

https://zhuanlan.zhihu.com/p/139381645

七、离线配置安装NVIDIA显卡驱动

1.关闭集成显卡驱动

# 编辑blacklist-oss.conf
$ vi /etc/modprobe.d/blacklist-oss.conf

# 在文件末尾插入以下内容,将nouveau加入黑名单,默认不开启
...
blacklist nouveau
options nouveau modeset=0
...

# 使禁用生效然后重启
$ sudo update-initramfs -u 
$ sudo reboot

# 重启后验证是否禁用nouveau,没有内容输出则证明禁用成功
$ lsmod | grep nouveau      # 默认无输出

2.完全卸载默认的显卡驱动

# 查看当前安装的软件,只能查看apt install方式安装的nvidia软件,无法查看.run文件安装的nvidia驱动
$ sudo dpkg --list | grep nvidia-*
$ sudo apt list --installed | grep nvidia

# 卸载nvidia相关软件及配置,卸载完成后使用第一个
$ sudo apt-get --purge remove nvidia*
$ sudo apt --purge autoremove

# 重启电脑
$ reboot

# 查看当前的nvidia驱动
$ ls /usr/src | grep nvidia

3.安装适配环境

全套安装deb文件放网盘了,附在本章节最后!

3.1安装make、gcc、g++等
# 安装命令及脚本
$ dpkg -i *.deb

安装gcc9.3.0踩坑:

参考教程及链接:https://blog.csdn.net/gitblog_09755/article/details/141970511

gcc9.3.0全套下载链接:https://gitcode.com/open-source-toolkit/d8877/overview?utm_source=tools_gitcode&index=bottom&type=card&

**注意:按上述安装教程会显示安装报错,但实际可正常安装gcc。

3.2建立gcc软连接

直接安装NVIDIA的.run文件还是会报错,报错如下:

ERROR: Unable to find the development tool cc in your path; please make sure that

解决方案:

# 1.查看gcc有没有正常安装,若没有请回退至步骤1.
$ gcc --version

# 2.若已跳出gcc的版本号
# 运行以下命令,查看cc的路径,例如:/usr/bin/cc
$ which cc    
# 然后将/usr/bin/cc软链接至/usr/bin/gcc
$ sudo ln -s /usr/bin/gcc /usr/bin/cc
3.3安装NVIDIA-Linux-x86_64-535.183.01.run

根据自己的NVIDIA显卡型号来决定安装哪个版本的驱动,题主为NVIDIA V100 32G

# 赋予可读可写权限
$ chmod 777 NVIDIA-Linux-x86_64-535.183.01.run

# 执行安装
$ ./NVIDIA-Linux-x86_64-535.183.01.run

# 查看NVIDIA-smi是否正常,如正常输出则安装成功,一般情况下需要重启一次
$ nvidia-smi

至此,成功安装!

本章节的参考博客如下:

https://blog.csdn.net/ytusdc/article/details/132403852

https://blog.csdn.net/gitblog_09755/article/details/141970511

https://cloud.tencent.com/developer/article/2360789

八、安装anaconda

命令如下:

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

九、本文所提及的所有文件

网盘链接:

通过网盘分享的文件:Ubuntu20.04重装系统(内网)
链接: https://pan.baidu.com/s/1uonPjjVoA4edOI3f5O8LgQ?pwd=hxwi 提取码: hxwi 

本文至此,已经全部结束,感谢以上参考博客,祝您安装成功!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

华为新手机和支付宝碰一下 带来更便捷支付体验

支付正在变的更简单。 11月26日,华为新品发布会引起众多关注。发布会上,华为常务董事余承东专门提到,华为Mate 70和Mate X6折叠屏手机的“独门支付秘技”——“碰一下”,并且表示经过华为和支付宝的共同优化,使用“碰…

手机中的核心SOC是什么?

大家好,我是山羊君Goat。 常常听说CPU,中央处理器等等的,它是一个电脑或单片机系统的核心,但是对于SOC可能相比于CPU了解的人没有那么广泛。 所以SOC是什么? SOC全称是System on Chip,就是片上系统&#…

理解字母形状,从而获得含义

英文字母,都是象形符号,所以,理解其形象,所象之形,是一项重要的工作,和非常有意义事情。也是我们快速记住大量单词,将单词从底层逻辑开始理清,融会贯通扩展记忆容量的重要办法之一。…

新型大语言模型的预训练与后训练范式,阿里Qwen

前言:大型语言模型(LLMs)的发展历程可以说是非常长,从早期的GPT模型一路走到了今天这些复杂的、公开权重的大型语言模型。最初,LLM的训练过程只关注预训练,但后来逐步扩展到了包括预训练和后训练在内的完整…

爬虫专栏第一篇:深入探索爬虫世界:基础原理、类型特点与规范要点全解析

本专栏会对爬虫进行从0开始的讲解,每一步都十分的细致,如果你感兴趣希望多多点赞收藏关注支持 简介:文章对爬虫展开多方面剖析。起始于爬虫的基本概念,即依特定规则在网络抓取信息的程序或脚本,在搜索引擎信息提取上作用显著。阐述其于大数据背景下可助力获取并处理分析数…

LocalDateTime序列化(跟redis有关)

使用过 没成功,序列化后是[2024 11 10 17 22 20]差不多是这样, 反序列化后就是: [ 2024 11 10.... ] 可能是我漏了什么 这是序列化后的: 反序列化后: 方法(加序列化和反序列化注解)&…

UE5 打包报错 Unknown structure 的解决方法

在虚幻引擎5.5 打包报错如下: UATHelper: 打包 (Windows): LogInit: Display: LogProperty: Error: FStructProperty::Serialize Loading: Property ‘StructProperty /Game/Components/HitReactionComponent/Blueprints/BI_ReactionInterface.BI_ReactionInterface…

webrtc ios h264 硬编解码

webrtc ios h264 硬编解码 一 ios 系统支持 从ios8开始,苹果公司开放了硬解码和硬编码API(即 VideoToolbox.framework API) 二 主要api 1 主要解码函数 VTDecompressionSessionCreate // 创建解码 session VTDecompressionSession…

【大模型】深度解析 NLP 模型5大评估指标及 应用案例:从 BLEU、ROUGE、PPL 到METEOR、BERTScore

在自然语言处理(NLP)领域,无论是机器翻译、文本生成,还是问答系统开发,模型性能评估指标始终是开发者绕不开的工具。BLEU、ROUGE、PPL(困惑度)、METEOR 和 BERTScore 是五个最具代表性的指标&am…

idea 自动导包,并且禁止自动导 *(java.io.*)

自动导包配置 进入 idea 设置,可以按下图所示寻找位置,也可以直接输入 auto import 快速定位到配置。 Add unambiguous imports on the fly:自动帮我们优化导入的包Optimize imports on the fly:自动去掉一些没有用到的包 禁止导…

Mac安装及合规无限使用Beyond Compare

文章目录 Beyond CompareBeyond Compare简介Beyond Compare安装Beyond Compare到期后继续免费使用 Beyond Compare Beyond Compare简介 Beyond Compare 是一款由 Scooter Software 开发的文件和文件夹比较工具。它主要用于对比两个文件或文件夹之间的差异,并支持文…

Navcat连接sqlserver报错:[IM002][Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 (0)

Navcat连接sqlserver报错:[IM002][Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 (0) 原因:navicat没有找到sqlserver驱动 解决:安装sqlserver驱动,下载后双击安装,安装完重新连接就可以了…

IDEA Maven 打包找不到程序包错误或找不到符号,报错“程序包不存在“

参考文章:https://blog.csdn.net/yueeryuanyi/article/details/14211090 问题:IDEA Maven 打包找不到程序包错误或找不到符号,报错“程序包不存在“编译都没问题 解决思路 – >【清除缓存】 1. 强制刷新Maven缓存 选择 Maven 标签,Exe…

微信小游戏/抖音小游戏SDK接入踩坑记录

文章目录 前言问题记录1、用是否存在 wx 这个 API 来判断是微小平台还是抖小平台不生效2、微小支付的参数如何获取?3、iOS 平台不支持虚拟支付怎么办?微小 iOS 端支付时序图:抖小 iOS 端支付:4、展示广告时多次回调 onClose5、在使用单例时 this 引起的 bug6、使用 fetch 或…

vue 2 父组件根据注册事件,控制相关按钮显隐

目标效果 我不注册事件,那么就不显示相关的按钮 注册了事件,才会显示相关内容 实现思路 组件在 mounted 的时候可以拿到父组件注册监听的方法 拿到这个就可以做事情了 mounted() {console.log(this.$listeners, this.$listeners);this.show.search !…

服务熔断-熔断器设计

文章目录 服务为什么需要熔断熔断器设计思想熔断器代码实现 服务为什么需要熔断 对于服务端采用的保护机制为服务限流。 对于服务调用端是否存在保护机制? 假如要发布一个服务 B,而服务 B 又依赖服务 C,当一个服务 A 来调用服务 B 时&#x…

【Maven】依赖冲突如何解决?

准备工作 1、创建一个空工程 maven_dependency_conflict_demo,在 maven_dependency_conflict_demo 创建不同的 Maven 工程模块,用于演示本文的一些点。 什么是依赖冲突? 当引入同一个依赖的多个不同版本时,就会发生依赖冲突。…

代理IP地址的含义与设置指南‌

在数字化时代,互联网已经成为我们日常生活不可或缺的一部分。然而,在享受互联网带来的便利的同时,我们也面临着隐私泄露、访问限制等问题。代理IP地址作为一种有效的网络工具,能够帮助我们解决这些问题。本文将详细介绍代理IP地址…

【MyBatis】验证多级缓存及 Cache Aside 模式的应用

文章目录 前言1. 多级缓存的概念1.1 CPU 多级缓存1.2 MyBatis 多级缓存 2. MyBatis 本地缓存3. MyBatis 全局缓存3.1 MyBatis 全局缓存过期算法3.2 CacheAside 模式 后记MyBatis 提供了缓存切口, 采用 Redis 会引入什么问题?万一遇到需强一致场景&#x…

组播基础实验

当需要同时发给多个接受者或者接收者ip未知时使用组播 一、组播IP地址 1、组播IP地址范围 组播地址属于D类地址:224.0.0.0/4(224.0.0.0-239.255.255.255) 2、分类 (1)链路本地地址(link-local&#xf…