当前位置: 首页 > news >正文

xRDP – 在 Ubuntu 18.04、20.04、22.04、22.10、23.04(脚本版本 1.4.7)上轻松安装 xRDP

最新脚本Repository | c-nergy.be

概述

到目前为止,您应该知道 xrdp-installer 脚本旨在简化 xRDP 在 Ubuntu 操作系统上的安装和配置后操作。xRDP 是一款在 Linux 上启用远程桌面服务的软件。这意味着 Windows 用户可以使用他们的远程桌面客户端 (mstsc) 并执行与 Ubuntu 计算机的远程连接。

最初,该脚本仅支持带有 Gnome 桌面界面的 Ubuntu。但是,最新版本的脚本会检测正在使用的桌面界面,并尝试根据需要执行配置后操作。最新版本的脚本也可以在 Debian 操作系统上运行。请注意,支持其他 Flavors 是基于 Best effort 方法。

此版本(版本 1.4.7)中有哪些新功能?

添加对 Ubuntu 23.04 的支持

应读者的要求,我们更新了脚本以支持最新版本的 Ubuntu(即 23.04)。

添加编译参数

一些用户注意到,在执行自定义安装时,Hyper-V 增强模式未按预期工作。当您执行标准安装时,该功能运行正常。因此,在快速浏览之后,我们注意到在从源代码编译 xrdp 时,我们需要添加 –enable-vsock 选项。此版本中还添加了此功能。

此版本(版本 1.4.7)中缺少什么?

声音重定向(如果使用 Pipewire)

xrdp 包需要 pulseaudio 声音服务器来启用声音重定向。由于 Ubuntu 22.10 及更高版本现在使用的是 Pipewire 声音服务器,因此 xrdp-installer 脚本将通知您未检测到 Pulseaudio 服务器,并且没有声音重定向可用。在之前的文章中,我们描述了在使用 Pipewire 时如何使声音重定向正常工作的过程(请参阅 xRDP – 在 Ubuntu 22.10 中测试初始 Pipewire 声音重定向支持(早期阶段))。如果您使用的是 Pipewire 并且需要声音重定向,则可以尝试使用此过程。

下一个版本将包括(仍作为测试模式)对 Pipewire 的支持。这意味着该脚本将尝试编译 Hiero 编写的测试模块,并尝试根据需要启用声音重定向。

如何使用脚本

xrdp-installer-1.4.7 脚本的工作方式与以前的版本类似。以下部分将介绍如何使用脚本下载、解压、设置可执行模式和执行安装。该脚本提供了一些可用于自定义安装过程的开关。

那么,让我们看看这将如何运作......

免責聲明

该脚本按原样提供。使用它的风险负 !!

先决条件和假设

为了在使用脚本时获得最佳结果,应满足以下条件

  • 我们假设您的计算机在执行安装时已连接到 Internet。这是必需的,因为需要在 Ubuntu 计算机上下载并安装其他软件包和软件

脚本版本&支持的Ubuntu版本

xrdp-installer-1.4.7.sh 脚本将支持以下 Ubuntu 操作系统版本,假设 Gnome Desktop 是默认的桌面界面

  • Ubuntu 18.04.x 版本
  • Ubuntu 20.04.x 版本
  • Ubuntu 22.04.x 版本
  • Ubuntu 22.10.x 浏览器
  • Ubuntu 23.04.x 版本
  • Debian 10 版本
  • Debian 11(仅当您选择自定义模式安装时!!)

xrdp-installer-1.4.7.sh 脚本可以针对以下 Ubuntu 风格运行,但我们不能保证一切都会按预期工作(尽力而为)

  • Kubuntu(20.04 及更高版本)
  • Ubuntu Budgie(20.04 及更高版本)
  • Ubuntu Mate(20.04 及更高版本)
  • Xubuntu(20.04 及更高版本)
  • Lubuntu(20.04 及更高版本)
  • Linux Mint(现阶段处于实验阶段)
  • Pop!_OS 22.04

注意 : 如果您正在运行这些发行版中的任何一个,并且希望帮助我们改进对这些发行版的支持,请下载并测试脚本。不要犹豫,分享您的发现,以便我们可以尝试将它们合并到下一个版本中

第 1 步 – 下载脚本

要下载脚本,您有多种选择。您可以从终端发出以下命令

wget https://www.c-nergy.be/downloads/xRDP/xrdp-installer-1.4.7.zip

您也可以简单地使用浏览器并单击链接下载脚本:

  •   xrdp-installer-1.4.7.zip 

第 2 步 – 解压缩文件

下载包含该文件的 zip 包后,您需要先将其解压缩。要解压缩包,您可以使用终端控制台并发出以下命令

unzip xrdp-installer-1.4.7.zip 

您还可以使用 GUI 和 Nautilus 文件管理器选择下载的软件包,右键单击它并选择选项 Extract Here

第 2 步 – 在脚本上设置 Execute Right

将 xrdp-installer-1.4.7.sh 脚本下载到您的系统,提取内容并将其标记为可执行 。为此,请在终端控制台中执行以下操作

chmod +x  ~/Downloads/xrdp-installer-1.4.7.sh

注意 : 调整 xrdp-Installer-1.4.7.sh 脚本的路径以反映您的环境

第 2 步 – 以普通用户身份运行

该脚本需要以普通用户身份运行。该脚本将开始运行,并在启动 sudo 操作时提示您输入密码。如果您以 root 身份或使用 sudo 命令运行脚本,则 root 用户的 Download 文件夹不存在,并且脚本无法按预期运行。为了克服这种情况,脚本还会检查哪个用户正在执行脚本。如果脚本在 sudo 或 root 账户下运行,则会显示一条警告消息,并且脚本不会执行

第 3 步 – 开关和参数

xrdp-installer-1.4.7.sh 脚本可以按原样执行(没有参数或开关)。这将执行 xRDP 的标准(和基本)安装。将不提供声音或自定义 xrdp 登录脚本。但是,远程桌面、驱动器重定向和剪贴板重定向将在此安装模式下可用。

xrdp-installer-1.4.7.sh 脚本还接受一些附加参数,这些参数将有助于自定义 xrdp 安装并启用其他功能。该脚本提供以下参数

--help or -h          => will display a basic help menu
--sound or -s         => will enable sound redirection 
--loginscreen or -l   => will customize the xRDP login screen 
--remove or -r        => will remove the xrdp package 
--custom or -c        => will perform a custom installation (i.e. compiled from sources)

第 4 步 – 使用脚本执行 xRDP 安装

以下部分将提供有关如何使用脚本的一些示例和方案.....

标准安装 – 无参数

如上所述,您可以决定使用 Ubuntu 存储库中提供的默认 xrdp 包并执行基本安装,这将为您提供远程桌面功能,并且还将自定义远程会话。该脚本将确保在用户本地或远程登录时保持相同的外观。

要执行标准安装,请执行不带参数的脚本。打开终端控制台,浏览到脚本的下载位置,然后发出以下命令

 ./xrdp-installer-1.4.7.sh

当 xrdp 安装包启动时,系统会要求您输入密码。 提供密码并继续安装。等待脚本完成。完成后,计算机不会自动重启,因此您可以查看脚本执行的操作。

带参数的标准安装

该脚本可用于执行标准安装,并且仍会传递一些参数以充分利用 xRDP 软件包及其功能。对于所有 Ubuntu 版本,我们可以使用以下参数组合

./xrdp-installer-1.4.7.sh -s      (this would enable the sound redirection) 
./xrdp-installer-1.4.7.sh -l      (this would customize the xrdp login screen -see here)

显然,您可以组合开关 (任何顺序) 以启用更多功能

./xrdp-installer-1.4.7.sh -s -l      (this would enable the sound redirection and customize the xrdp login screen)

重要说明

该脚本可以在同一台计算机上多次运行。如果您最初运行脚本时没有使用任何参数,但后来决定启用其他功能,则可以重新执行该脚本并启用其他功能。

自定义安装 – 默认安装

自定义安装脚本非常灵活。自定义安装意味着该脚本将从源二进制文件编译 xrdp 包。自定义安装脚本始终使用可用的最新 xrdp 软件包版本

要执行自定义安装,您至少需要传递一个参数。以下命令行向您展示如何执行自定义安装

./xrdp-installer-1.4.7.sh -c     (this would perform a custom installation but will not enabled adv features like sound redirection or custom login screen)

自定义安装 – 其他选项

如果用户想要启用其他功能,您将传递一些其他参数,如以下示例所示

./xrdp-installer-1.4.7.sh -c -s     (this would perform a custom install and enable sound redirection)
./xrdp-installer-1.4.7.sh -c -l     (this would perform a custom install and customize xrdp login screen)
./xrdp-installer-1.4.7.sh -c -l -s  (this would perform a custom install, enable sound and customize login screen)

重要说明

该脚本可以在同一台计算机上多次运行。如果您最初运行脚本时没有使用任何参数,但后来决定启用其他功能,则可以重新执行该脚本并启用其他功能。

删除安装选项

此版本的脚本还附带了删除 xRDP 包的选项。仅当您使用此版本的脚本执行安装时,才应使用 removal 选项。要删除 xrdp 包,您只需执行以下命令

./xrdp-installer-1.4.7.sh -r     (to remove the xrdp packages)

第 5 步 – 测试您的配置

在脚本运行之后,在重启/关闭和启动过程之后,是时候测试一下了,看看你是否真的可以执行与 Ubuntu 机器的流畅远程连接。启动您最喜欢的 rdp 客户端,只需输入您的凭据即可开始测试您的安装。如果一切正常,您将看到一个类似的桌面界面,其中使用了 Gnome Desktop 并且可以看到 Dock。

局限性

在标准安装和自定义安装之间切换

此版本的脚本可以在同一台计算机上多次运行。但是,由于这种新行为,您无法执行标准安装,然后决定执行自定义安装。选择安装模式后,您将不得不坚持它。这有点由脚本检查。

因此,如果您已执行标准安装,但之后您可能希望使用自定义安装选项,则脚本将忽略该请求。如果要从标准安装模式切换到自定义模式(反之亦然),正确的过程是

  • 删除 XRDP(使用 xrdp-installer-1.4.7.sh -r 选项)
  • 使用您选择的安装模式(标准或自定义安装模式)执行新安装

已知问题、已修复的问题和限制

已知问题

连接后立即黑屏或断开连接

正如多次提到和解释的那样,当本地和远程同时使用同一用户帐户时,将发生(或可能发生)这种情况。换句话说,该问题与同一用户帐户已在本地登录并同时尝试远程连接这一事实有关。使用 xRDP 软件解决方案,可以在本地或远程登录特定的用户帐户,但不能同时登录两者。

过去,我们提供了一些解决方法,可用于允许同一用户进行多个连接。但是,在 Ubuntu 22.04 中,我们遇到了一些其他问题,我们再次强烈建议不要使用这些解决方法.....

有一些解决方法 (按原样提供) 来尝试修复问题。我们不建议使用它们!使用风险自负 !!

最后的注释

这就是这篇文章的内容!

由于 Ubuntu 23.04 问题,脚本版本尚未经过广泛测试。为了保持可用性,应将脚本视为维护版本。如果您有时间或想帮助我们创建最好的 xRDP 安装程序脚本,请下载脚本、测试它并提供建设性的反馈。如果您发现脚本存在错误或问题,请告诉我们,以便我们尝试修复它。

我们已经在开发下一个版本,其中将引入更多更改......

相关文章:

xRDP – 在 Ubuntu 18.04、20.04、22.04、22.10、23.04(脚本版本 1.4.7)上轻松安装 xRDP

最新脚本Repository | c-nergy.be 概述 到目前为止,您应该知道 xrdp-installer 脚本旨在简化 xRDP 在 Ubuntu 操作系统上的安装和配置后操作。xRDP 是一款在 Linux 上启用远程桌面服务的软件。这意味着 Windows 用户可以使用他们的远程桌面客户端 (mst…...

[Linux网络编程]04-多进程/多线程并发服务器思路分析及实现(进程,信号,socket,线程...)

一.思路 实现一个服务器可以连接多个客户端,每当accept函数等待到客户端进行连接时 就创建一个子进程; 核心思路:让accept循环阻塞等待客户端,每当有客户端连接时就fork子进程,让子进程去和客户端进行通信,父进程用于…...

《OpenCV计算机视觉》—— 年龄与性别预测

结合以下链接中的文章有助于理解此篇案例: OpenCV中的 cnn 模块 https://blog.csdn.net/weixin_73504499/article/details/142965441?spm1001.2014.3001.5501 此案例是通过使用OpenCV中的cnn模块来调用别人已经训练好的深度学习模型,此篇案例中用到了…...

详解23种设计模式——第一部分:概述+创建型模式

目录 1. 概述 2. 创建型模式 2.1 简单(静态)工厂模式 2.1.1 介绍 2.1.2 实现 2.2 工厂模式 2.3 抽象工厂模式 2.4 单例模式 2.4.1 饿汉模式 2.4.2 懒汉模式 2.4.3 线程安全的懒汉式 2.4.4 DCL单例 - 高性能的懒汉式 2.5 建造者模式 2.6 原…...

semi-Naive Bayesian(半朴素贝叶斯)

semi-Naive Bayesian(半朴素贝叶斯) 引言 朴素贝叶斯算法是基于特征是相互独立这个假设开展的(为了降低贝叶斯公式: P ( c ∣ x ) P ( c ) P ( x ∣ c ) P ( x ) P(c|x) \frac {P(c)P(x|c)}{P(x)} P(c∣x)P(x)P(c)P(x∣c)​中后验概率 P …...

大语言模型(LLM)入门级选手初学教程

链接:https://llmbook-zh.github.io/ 前言: GPT发展:GPT-1 2018 -->GPT-2&GPT-3(扩大预训练数据和模型参数规模)–> GPT-3.5(代码训练、人类对齐、工具使用等)–> 2022.11 ChatG…...

HTML 实例/测验之HTML 基础一口气讲完!(o-ωq)).oO 困

HTML 基础 非常简单的HTML文档 <!DOCTYPE html> <html><head><title>页面标题(w3cschool.cn)</title></head><body><h1>我的第一个标题</h1><p>我的第一个段落。</p></body> </html> 输出&a…...

c语言基础程序——经典100道实例。

c语言基础程序——经典100道实例 001&#xff0c; 组无重复数字的数002&#xff0c;企业发放的奖金根据利润提成003&#xff0c;完全平方数004&#xff0c;判断当天是这一年的第几天005&#xff0c;三个数由小到大输出006&#xff0c;输出字母C图案007&#xff0c;特殊图案008&…...

火星求生CE修改金钱,无限资金

由于火星求生前期没有资金非常难玩&#xff0c;想通过修改资金渡过前期&#xff0c;网上找了一圈修改器&#xff0c;只有修改无限声望和无限科研&#xff0c;就是没有无限资金&#xff0c;于是自己用CE修改 教程 首先查看自己资金是多少M&#xff0c;如下图我是22430M资金&…...

linux 内存管理-slab分配器

伙伴系统用于分配以page为单位的内存,在实际中很多内存需求是以Byte为单位的,如果需要分配以Byte为单位的小内存块时,该如何分配呢? slab分配器就是用来解决小内存块分配问题,也是内存分配中非常重要的角色之一。 slab分配器最终还是由伙伴系统分配出实际的物理内存,只不过s…...

docker-compose部署gitlab(亲测有效)

一.通过DockerHub拉取Gitlab镜像 docker pull gitlab/gitlab-ce:latest 二.创建目录 mkdir -p /root/tool/gitlab/{data,logs,config} && cd /root/tool/gitlab/ 三.编辑DockerCompose.yaml文件 vim /root/tool/gitlab/docker-compose.yml version: "3&quo…...

Leetcode 赎金信

利用hash map做 java solution class Solution {public boolean canConstruct(String ransomNote, String magazine) {//首先利用HashMap统计magazine中字符频率HashMap<Character, Integer> magazinefreq new HashMap<>();for(char c : magazine.toCharArray())…...

S7--环境搭建基本操作

1.修改蓝牙名称和地址 工程路径:$ADK_ROOT\adk\src\filesystems\CDA2\factory_default_config\ 在subsys7_config5.htf中 DeviceName = "DEVICE_NAME“ # replace with your device name BD_ADDRESS=[00 FF 00 5B 02 00] # replace with your BD address 2.earbud工程修改…...

webAPI中的排他思想、自定义属性操作、节点操作(配大量案例练习)

一、排他操作 1.排他思想 如果有同一组元素&#xff0c;我们想要某一个元素实现某种样式&#xff0c;需要用到循环的排他思想算法&#xff1a; 1.所有的元素全部清除样式 2.给当前的元素设置样式 注意顺序能不能颠倒&#xff0c;首先清除全部样式&#xff0c;再设置自己当前的…...

101、QT摄像头录制视频问题

视频和音频录制类QMediaRecorder QMediaRecorder 通过摄像头和音频输入设备进行录像。 注意: 使用Qt多媒体模块的摄像头相关类无法在Windows平台上进行视频录制&#xff0c;只能进行静态图片抓取但是在Linux平台上可以实现静态图片抓取和视频录制。 Qt多媒体模块的功能实现是依…...

FairGuard游戏加固全面适配纯血鸿蒙NEXT

2024年10月8日&#xff0c;华为正式宣布其原生鸿蒙操作系统 HarmonyOS NEXT 进入公测阶段&#xff0c;标志着其自有生态构建的重要里程碑。 作为游戏安全领域领先的第三方服务商&#xff0c;FairGuard游戏加固在早期就加入了鸿蒙生态的开发&#xff0c;基于多项独家技术与十余年…...

鲸信私有化即时通信如何平衡安全性与易用性之间的关系?

即时通信已经成为我们生活中不可或缺的一部分。从日常沟通到工作协作&#xff0c;每一个信息的传递都承载着信任与效率。然而&#xff0c;随着网络安全威胁日益严峻&#xff0c;如何在享受即时通信便捷的同时&#xff0c;确保信息的私密性与安全性&#xff0c;成为了摆在我们面…...

vivado 接口带宽验证

存储器接口 使用赛灵思存储器 IP 时需要更多的 I/O 管脚分配步骤。自定义 IP 之后&#xff0c;您可采用 Vivado IDE 中的细化 (elaborated) 或综 合 (synthesized) 设计分配顶层 IP 端口到物理封装引脚。同每一个存储器 IP 关联的所有端口都被纳入一个 I/O 端口接口…...

Qt中使用线程之QThread

使用Qt中自带的线程类QThread时 1、需要定义一个子类继承自QThread 2、重写run()方法&#xff0c;在run方法中编写业务逻辑 3、子类支持信号槽 4、子类的构造函数的执行是在主线程进行的&#xff0c;而run方法的执行是在子线程中进行的 常用方法 静态方法 获取线程id 可…...

多IP连接

一.关闭防火墙 systemctl stop firewalld setenforce 0 二.挂在mnt mount /dev/sr0 /mnt 三.下载nginx dnf install nginx -y 四.启动nginx协议 systemctl start nginx 五.修改协议 vim /etc/nginx/nginx.conf 在root前加#并且下一行添加 root /www:&#xff08;浏…...

Linux重点yum源配置

1.配置在线源 2.配置本地源 3.安装软件包 4.测试yum源配置 5.卸载软件包...

289.生命游戏

目录 题目解法代码说明&#xff1a; 每一个各自去搜寻他周围的信息&#xff0c;肯定存在冗余&#xff0c;如何优化这个过程&#xff1f;如何遍历每一个元素的邻域&#xff1f;方向数组如何表示方向&#xff1f; auto dir : directions这是什么用法board[i][j]一共有几种状态&am…...

如何保证Redis和数据库的数据一致性

文章目录 0. 前言1. 补充知识&#xff1a;CP和AP2. 什么情况下会出现Redis与数据库数据不一致3. 更新缓存还是删除缓存4. 先操作缓存还是先操作数据库4.1 先操作缓存4.1.1 数据不一致的问题是如何产生的4.1.2 解决方法&#xff08;延迟双删&#xff09;4.1.3 最终一致性和强一致…...

Android Framework AMS(06)startActivity分析-3(补充:onPause和onStop相关流程解读)

该系列文章总纲链接&#xff1a;专题总纲目录 Android Framework 总纲 本章关键点总结 & 说明&#xff1a; 说明&#xff1a;本章节主要解读AMS通过startActivity启动Activity的整个流程的补充&#xff0c;更新了startActivity流程分析部分。 一般来说&#xff0c;有Activ…...

【LangChain系列2】【Model I/O详解】

目录 前言一、LangChain1-1、介绍1-2、LangChain抽象出来的核心模块1-3、特点1-4、langchain解决的一些行业痛点1-5、安装 二、Model I/O模块2-0、Model I/O模块概要2-1、Format&#xff08;Prompts Template&#xff09;2-1-1、Few-shot prompt templates2-1-2、Chat模型的少样…...

动态规划-子数组系列——1567.乘积为正数的最长子数组

1.题目解析 题目来源&#xff1a;1567.乘积为正数的最长子数组——力扣 测试用例 2.算法原理 1.状态表示 因为数组中存在正数与负数&#xff0c;如果求乘积为正数的最长子数组&#xff0c;那么存在两种情况使得乘积为正数&#xff0c;第一种就是正数乘以正数&#xff0c;第…...

Linux 运行执行文件并将日志输出保存到文本文件中

在 Linux 系统中运行可执行文件并将日志输出保存到文本文件中&#xff0c;可以使用以下几种方法&#xff1a; 方法一&#xff1a;使用重定向符号 > 或 >> 覆盖写入&#xff08;>&#xff09;&#xff1a; ./your_executable > logfile.txt这会将可执行文件的输…...

注册安全分析报告:北外网校

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 暴力破解密码&#xff0c;造成用户信息泄露短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造成亏损无底洞…...

预警期刊命运逆袭到毕业好刊,仅45天!闭眼冲速度,发文量暴增!

选刊发表不迷路&#xff0c;就找科检易学术 期刊官网&#xff1a;Sustainability | An Open Access Journal from MDPI 1、期刊信息 期刊简介&#xff1a; Sustainability 是一本国际性的、同行评审的开放获取期刊&#xff0c;由MDPI出版社每半月在线出版。该期刊专注于人类…...

【LeetCode每日一题】——523.连续的子数组和

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【解题思路】八【时间频度】九【代码实现】十【提交结果】 一【题目类别】 前缀和 二【题目难度】 中等 三【题目编号】 523.连续的子数组和 四【题目描述】 给你一个…...