【Ubuntu】服务器系统重装SSHxrdpcuda
本文作者: slience_me
Ubuntu系统重装操作合集
文章目录
- Ubuntu系统重装操作合集
- 1.1 系统安装:
- 1.2 安装openssh-server
- 更新系统包
- 安装OpenSSH服务器
- 检查SSH服务的状态
- 配置防火墙以允许SSH
- 测试SSH连接
- 配置SSH(可选)
- 1.3 安装远程连接桌面
- 安装桌面环境(如果需要)
- 安装`xrdp`
- 启动和配置`xrdp`
- 将`xrdp`与桌面环境关联
- 配置防火墙以允许RDP
- 使用远程桌面客户端连接
- 可选配置:修改`xrdp`会话配置文件
- 重新连接远程桌面
- 1.4 用户操作
- 1.5 Cuda
- 检查硬件和操作系统兼容性
- 更新系统
- 安装 NVIDIA 驱动
- 添加 CUDA 相关的存储库
- 安装 CUDA 工具包
- 设置环境变量
- 验证 CUDA 和 NVCC
- 运行 CUDA 示例代码(可选)
- 总结
1.1 系统安装:
https://blog.csdn.net/Flag_ing/article/details/121908340
/boot : 1G 1024MB 主分区。系统的boot启动引导项安装位置
efi: 1G 主分区
/ : 剩余 主分区。根目录,所有目录的根节点,其下包含很多子目录,如/usr /tmp等
/home : 2T 逻辑分区。一般放置自己的数据
swap : 64G 65536MB 逻辑分区。交换空间,一般是物理内存的1~2倍就行了
1.2 安装openssh-server
在Ubuntu上安装和配置SSH服务器非常简单。以下是详细的步骤:
更新系统包
在安装任何新软件之前,最好更新现有的软件包,以确保你获得最新的版本。打开终端并运行以下命令:
sudo apt update
安装OpenSSH服务器
Ubuntu使用
openssh-server
作为SSH服务器。可以使用以下命令进行安装:sudo apt install openssh-server
检查SSH服务的状态
安装完成后,可以检查SSH服务是否正在运行:
sudo systemctl status ssh
如果显示类似以下内容,说明SSH服务器已成功启动并正在运行:
● ssh.service - OpenBSD Secure Shell serverLoaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)Active: active (running) since ...
如果SSH服务未运行,可以使用以下命令启动它:
sudo systemctl start ssh
要确保每次启动系统时SSH自动启动,可以使用:
sudo systemctl enable ssh
配置防火墙以允许SSH
如果你使用
ufw
防火墙,可能需要显式允许SSH流量。运行以下命令:sudo ufw allow ssh
测试SSH连接
在本地计算机或其他设备上,可以通过以下命令测试连接到你的Ubuntu系统:
ssh username@server_ip_address
将
username
替换为Ubuntu系统的用户名,将server_ip_address
替换为该系统的IP地址。你可以通过以下命令查找服务器的IP地址:
ip a
配置SSH(可选)
默认情况下,SSH配置文件位于
/etc/ssh/sshd_config
。可以通过编辑该文件来更改默认设置,例如修改默认的SSH端口、禁用密码认证、启用密钥认证等。编辑文件:
sudo nano /etc/ssh/sshd_config
修改后,重新加载SSH服务以应用更改:
sudo systemctl restart ssh
至此,Ubuntu上的SSH服务器已经成功安装并运行。
1.3 安装远程连接桌面
在Ubuntu上安装并配置远程桌面可以通过多种方式实现,最常见的选项是使用
xrdp
与桌面环境结合,让Windows用户通过远程桌面连接(RDP协议)访问Ubuntu桌面。以下是安装和配置远程桌面的详细步骤:安装桌面环境(如果需要)
如果你使用的是Ubuntu Server或最小化安装版本,你需要首先安装一个桌面环境。最常用的桌面环境是
GNOME
,它是Ubuntu默认的桌面环境。你可以通过以下命令来安装完整的Ubuntu桌面:sudo apt install ubuntu-desktop
如果你希望安装较轻量的桌面环境,比如
Xfce
,可以执行以下命令:sudo apt install xfce4
安装
xrdp
安装
xrdp
(远程桌面协议服务器),它允许你通过RDP协议远程连接到Ubuntu桌面。sudo apt install xrdp
启动和配置
xrdp
安装完成后,启动并启用
xrdp
服务,使其每次启动系统时自动运行:sudo systemctl enable xrdp sudo systemctl start xrdp
你还可以检查
xrdp
服务的状态,以确保它正在运行:sudo systemctl status xrdp
将
xrdp
与桌面环境关联在
xrdp
默认配置中,使用的是Xfce
或GNOME
桌面环境。你可以根据安装的桌面环境来配置xrdp
。如果你安装的是
Xfce
,需要为xrdp
配置启动Xfce桌面。执行以下命令来创建一个.xsession
文件并将其内容设置为xfce4-session
:echo xfce4-session >~/.xsession
对于GNOME桌面,默认情况下应该无需额外配置。
配置防火墙以允许RDP
如果你使用
ufw
防火墙,需要允许RDP连接(默认端口是3389):sudo ufw allow 3389
使用远程桌面客户端连接
在Windows、macOS或Linux的远程桌面客户端中输入你的Ubuntu服务器的IP地址,使用RDP协议进行连接。
在Windows中,打开“远程桌面连接”,输入Ubuntu的IP地址:
IP_ADDRESS:3389
你将看到登录界面,输入Ubuntu的用户名和密码即可访问远程桌面。
可选配置:修改
xrdp
会话配置文件如果遇到黑屏或登录失败等问题,可以尝试修改
xrdp
配置文件。例如,编辑/etc/xrdp/startwm.sh
文件,在其中找到以下几行并注释掉:test -x /etc/X11/Xsession && exec /etc/X11/Xsession exec /bin/sh /etc/X11/Xsession
然后在这些行的下方添加你想使用的桌面环境。例如,如果你使用
Xfce
,可以添加以下内容:startxfce4
保存并重新启动
xrdp
服务:sudo systemctl restart xrdp
重新连接远程桌面
完成上述步骤后,你应该可以顺利通过远程桌面客户端连接到Ubuntu的桌面环境。
这样你就完成了Ubuntu的远程桌面配置,之后可以使用任何支持RDP的客户端工具进行远程桌面连接。
1.4 用户操作
查看全部用户cat /etc/passwd
修改密码 sudo passwd user
新增用户sudo adduser user
由于重装系统,原始的用户信息丢失,需要重新创建用户,与home的用户对应上,但是会出现问题,user1:1001旧的,user1:1007 新的,用户目录权限对不上,所以需要该指令
sudo chown -R new_owner:new_group /home/username
1.5 Cuda
CUDA 是 NVIDIA 的并行计算平台和编程模型,用于 GPU 加速计算。安装 CUDA 工具包可以让你使用 GPU 进行高性能计算,
nvcc
则是 CUDA 的编译器。以下是 Ubuntu 上安装 CUDA、nvcc
等相关工具的详细步骤。检查硬件和操作系统兼容性
在安装 CUDA 之前,确保你的系统满足以下条件:
- 你有一个支持 CUDA 的 NVIDIA 显卡。
- 你使用的是 Ubuntu(例如 18.04、20.04 或 22.04 等版本)。
- 你已经安装了合适的显卡驱动。
更新系统
首先,更新系统的包列表和软件包,确保一切都是最新的:
sudo apt update sudo apt upgrade
安装 NVIDIA 驱动
通常 CUDA 工具包包含 NVIDIA 驱动,但是你也可以手动安装,建议确保安装的驱动是最新的兼容版本。
检查 NVIDIA 显卡是否被识别:
lspci | grep -i nvidia
安装最新版本的驱动:
sudo apt install nvidia-driver-### # 将 ### 替换为推荐的驱动版本
你可以使用
ubuntu-drivers devices
查看推荐的 NVIDIA 驱动版本。添加 CUDA 相关的存储库
访问 NVIDIA CUDA Toolkit 下载页面,选择你对应的操作系统版本并跟随提示。通常可以使用以下步骤添加 CUDA 的存储库:
访问 CUDA 的下载页面,选择你的操作系统,通常会得到类似以下的安装命令:
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu$(lsb_release -sr | cut -d. -f1)/x86_64/cuda-repo-ubuntu$(lsb_release -sr | cut -d. -f1)_<version>_amd64.deb sudo dpkg -i cuda-repo-ubuntu$(lsb_release -sr | cut -d. -f1)_<version>_amd64.deb sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu$(lsb_release -sr | cut -d. -f1)/x86_64/7fa2af80.pub sudo apt update
我的版本
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600 wget https://developer.download.nvidia.com/compute/cuda/12.6.2/local_installers/cuda-repo-ubuntu2004-12-6-local_12.6.2-560.35.03-1_amd64.deb sudo dpkg -i cuda-repo-ubuntu2004-12-6-local_12.6.2-560.35.03-1_amd64.deb sudo cp /var/cuda-repo-ubuntu2004-12-6-local/cuda-*-keyring.gpg /usr/share/keyrings/ sudo apt-get update sudo apt-get -y install cuda-toolkit-12-6
安装 CUDA 工具包
使用以下命令安装 CUDA 工具包:
sudo apt install cuda
这会安装 CUDA 相关的工具,包括编译器
nvcc
。设置环境变量
安装完成后,还需要配置环境变量,才能正确地调用 CUDA 和
nvcc
。可以在.bashrc
中添加以下路径:
编辑
.bashrc
文件:nano ~/.bashrc
添加以下行以设置 CUDA 环境变量(假设安装在默认位置
/usr/local/cuda
):export PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
使修改立即生效:
source ~/.bashrc
验证 CUDA 和 NVCC
验证安装是否成功。
检查 NVIDIA 驱动是否工作:
nvidia-smi
你应该能够看到显卡的状态和驱动程序信息。
检查 CUDA 编译器
nvcc
:nvcc -V
你应该看到
nvcc
版本信息,说明安装成功。运行 CUDA 示例代码(可选)
安装 CUDA 工具包后,NVIDIA 通常会提供一些示例代码,可以用来测试 GPU 是否正常工作。
进入 CUDA 示例代码目录:
cd /usr/local/cuda/samples
编译并运行一个测试程序(例如
deviceQuery
):sudo make cd 1_Utilities/deviceQuery ./deviceQuery
这将会展示 GPU 的一些详细信息,如果能够正确显示,那么说明 CUDA 工作正常。
总结
- 更新系统:
sudo apt update && sudo apt upgrade
- 安装 NVIDIA 驱动:
sudo apt install nvidia-driver-###
- 添加 CUDA 存储库:根据 CUDA 下载页面获取存储库地址并添加。
- 安装 CUDA 工具包:
sudo apt install cuda
- 设置环境变量:编辑
.bashrc
,添加 CUDA 相关路径。- 验证安装:运行
nvidia-smi
和nvcc -V
验证安装是否成功。通过这些步骤,你应该能够在 Ubuntu 上顺利安装 CUDA 工具包,并开始使用 GPU 加速你的计算任务。
相关文章:

【Ubuntu】服务器系统重装SSHxrdpcuda
本文作者: slience_me Ubuntu系统重装操作合集 文章目录 Ubuntu系统重装操作合集1.1 系统安装:1.2 安装openssh-server更新系统包安装OpenSSH服务器检查SSH服务的状态配置防火墙以允许SSH测试SSH连接配置SSH(可选) 1.3 安装远程连…...
ChatGPT的模型训练入门级使用教程
ChatGPT 是由 OpenAI 开发的一种自然语言生成模型,基于 Transformer 架构的深度学习技术,能够流畅地进行对话并生成有意义的文本内容。它被广泛应用于聊天机器人、客户服务、内容创作、编程助手等多个领域。很多人对如何训练一个类似 ChatGPT 的语言模型…...

【OS】2.1.2 进程的状态与转换_进程的组织
✨ Blog’s 主页: 白乐天_ξ( ✿>◡❛) 🌈 个人Motto:他强任他强,清风拂山冈! 🔥 所属专栏:C深入学习笔记 💫 欢迎来到我的学习笔记! 一、进程的状态 1.1.创建态 ……的…...
和为 n 的完全平方数的最少数量
给你一个整数 n ,返回 和为 n 的完全平方数的最少数量 。 完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9 和 16 都是完全平方数,而 3 和 11 不是。 示…...

Hallo2 长视频和高分辨率的音频驱动的肖像图像动画 (数字人技术)
HALLO2: LONG-DURATION AND HIGH-RESOLUTION AUDIO-DRIVEN PORTRAIT IMAGE ANIMATION 论文:https://arxiv.org/abs/2410.07718 代码:https://github.com/fudan-generative-vision/hallo2 模型:https://huggingface.co/fudan-generative-ai/h…...
如何在Debian 8上使用Let‘s Encrypt保护Apache
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 简介 本教程将向您展示如何在运行 Apache 作为 Web 服务器的 Debian 8 服务器上设置来自 Let’s Encrypt 的 TLS/SSL 证书。我们还将介…...

百科知识|选购指南
百科知识||选购指南 百科知识选购指南茶叶分类茶叶的味道来源茶叶制作步骤名茶其他一些茶叶的知识 百科知识 选购指南 茶叶 分类 茶叶种类: 六大茶类完美分析介绍!茶友推荐收藏 (aboxtik.com) 1.绿茶(发酵率0%) 2.白茶(发酵率…...

Go 语言基础教程:4.常量的使用
在这篇教程中,我们将通过一个简单的 Go 语言程序来学习常量的声明和使用。以下是我们要分析的代码: package mainimport ("fmt""math" )const s string "constant"func main() {fmt.Println(s)const n 500000000const …...
centos服务器重启后,jar包自启动
第一种方法: systemctl服务自启动 在/usr/lib/systemd/system目录下,创建service:start_jar.servie [Unit] DescriptionYour Java Application as a Service Afternetwork.target[Service] Userroot Typesimple ExecStart/usr/bin/java -j…...

华为云实战杂记
配置nginx服务器 首先我们拿到一台服务器时,并不知道系统是否存在Nginx我们可以在Linux命令行执行如下命令查看 find / -name nginx* find / -name nginx* 查找所有名字以nginx开头的文件或者目录,我们看看系统里面都有哪些文件先,这样可以快…...

Lesson10---list
Lesson10—list 第10章 c的list的使用和实现 文章目录 Lesson10---list前言一、list的初始化二、list的遍历1.迭代器2.范围for 三、list常用的内置函数1.sort(慎用)2.unique3.reverse4.merge5.splice 四、模拟实现1.基本框架2.构造函数3.push_back4. 遍…...

ASP.NET Core 8.0 中使用 Hangfire 调度 API
在这篇博文中,我们将引导您完成将 Hangfire 集成到 ASP.NET Core NET Core 项目中以安排 API 每天运行的步骤。Hangfire 是一个功能强大的库,可简化 .NET 应用程序中的后台作业处理,使其成为调度任务的绝佳选择。继续阅读以了解如何设置 Hang…...
查看linux的版本
在 Linux 系统中,有多种方法可以查看当前系统的版本信息。以下是一些常用的方法: 1. 使用 uname 命令 uname 命令可以显示系统的内核版本和其他相关信息。 uname -a这个命令会输出类似如下的信息: Linux hostname 5.4.0-88-generic #99-U…...

Mysql补充
单例 双重检查锁 class Singleton {private static volatile Singleton instance ;private Singleton() {}public static Singleton getInstance(){if(instance null) {synchronized (Singleto.class) {if(instance null){instance new Singleton() ;}} return instance;} …...
com.baomidou.mybatisplus.extension.service.IService用法详解及使用例子
IService 是 MyBatis-Plus 中的一个接口,提供了通用的 CRUD 操作,简化了数据库操作的代码。下面是 IService 的用法详解及示例代码。 1. 引入依赖 确保在你的 pom.xml 中添加了 MyBatis-Plus 的依赖: <dependency><groupId>co…...

植物健康,Spring Boot来保障
5系统详细实现 5.1 系统首页 植物健康系统需要登录才可以看到首页。具体界面的展示如图5.1所示。 图5.1 系统首页界面 5.2 咨询专家 可以在咨询专家栏目发布消息。具体界面如图5.2所示。 图5.2 咨询专家界面 5.3 普通植物检查登记 普通员工可以对普通植物检查登记信息进行添…...
mac-chrome提示您的连接不是私密连接
一、现象介绍 关闭代理之后就ok打开代理,就会提示您的连接不是私密连接 二、原因 由于代理部分的问题,无法找到正确的网站ip地址 三、解决方法 1、键盘直接输入thisisunsafe,可以继续访问网站,如果还是不对的话,那…...

028.爬虫专用浏览器-抓取#shadowRoot(closed)下的内容
一、什么是Shadow DOM Shadow DOM是一种在web开发中用于封装HTML标记、样式和行为的技术,以避免组件间的样式和脚本冲突。它允许开发者将网页的一部分隐藏在一个独立的作用域内,从而实现更加模块化和可维护的代码结构 二、js操作Shadow DOM // 获取宿…...

Serv00 免费虚拟主机 零成本搭建 PHP / Node.js 网站
本文首发于只抄博客,欢迎点击原文链接了解更多内容。 前言 Serv00 是一个提供免费虚拟主机的平台,包含了 3GB 的存储空间和 512MB 的内存空间,足够我们搭建一个 1IP 的小网站了。同时他还不限制每月的流量,并提供了 16 个数据库&…...
C#里使用ORM访问mariadb数据库
数据库,对于开发人员来说,是必须掌握的内容。 曾经我的老板对我说,只要会数据库的增删查改,就不会没有饭吃。 经过了20年多的工作经历,说明这个是铁的事实,毕竟计算机就是加工数据处理的而设计的。 数据就是信息,信息就是金钱,有了钱就可以有饭吃。 管理数据,就是…...

Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...

UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...

ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)
漏洞概览 漏洞名称:Apache Flink REST API 任意文件读取漏洞CVE编号:CVE-2020-17519CVSS评分:7.5影响版本:Apache Flink 1.11.0、1.11.1、1.11.2修复版本:≥ 1.11.3 或 ≥ 1.12.0漏洞类型:路径遍历&#x…...
苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会
在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...
第14节 Node.js 全局对象
JavaScript 中有一个特殊的对象,称为全局对象(Global Object),它及其所有属性都可以在程序的任何地方访问,即全局变量。 在浏览器 JavaScript 中,通常 window 是全局对象, 而 Node.js 中的全局…...

篇章一 论坛系统——前置知识
目录 1.软件开发 1.1 软件的生命周期 1.2 面向对象 1.3 CS、BS架构 1.CS架构编辑 2.BS架构 1.4 软件需求 1.需求分类 2.需求获取 1.5 需求分析 1. 工作内容 1.6 面向对象分析 1.OOA的任务 2.统一建模语言UML 3. 用例模型 3.1 用例图的元素 3.2 建立用例模型 …...

AWSLambda之设置时区
目标 希望Lambda运行的时区是东八区。 解决 只需要设置lambda的环境变量TZ为东八区时区即可,即Asia/Shanghai。 参考 使用 Lambda 环境变量...