【分享】linux下安装sunshine串流配置进行远程办公

2024-04-15 22:28

本文主要是介绍【分享】linux下安装sunshine串流配置进行远程办公,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前排提示教程内容比较短,废话比较多,需要看教程的建议直接跳目录

目录

前言(原因)

选择远程连接软件

三种连接软件的优劣以及体验

sunshine支持显卡

教程

注意事项

显示器

如果为远程部署


前言(原因)

由于新买了一块平板,作为一个  大号手机/泡面搭档  小号电脑,当然可以用它来做很多事情,作为一个经常玩linux的,首先想到的是可不可以用我的平板来远程操控我的Ubuntu系统,这样可以用它来远程编写代码或者是远程编译一些linux特有的软件环境。

其实之前使用termux来跑proot/chroot容器,实现本地运行linux系统,这里推荐一下酷安里目前有两位大佬做了一键安装包(名字分别是:小小电脑,安卓/鸿蒙补完计划)。这两个项目都是搭建好了环境可以实现在手机上运行vscode/wps/qq/微信......。

但是我自己有我的服务器,仅仅凭借手机的性能编写一些简单的代码或者是做做ppt还可以流畅运行,但是一旦要运行一些复杂的项目亦或者是搭建一些不兼容arm处理器的环境,就会各种出错。

目前对于我来讲最大的作用的就可以编写一些简单的c或者是python代码了。

选择远程连接软件

既然要用我这一台小服务器跑Linux并远程连接,那么选择相应的远程连接软件就尤为重要。

我当时我想到的有三个连接软件(vnc,rdp,moonlight/sunshine)

他们分别具有以下特点

  1. VNC连接(Virtual Network Computing): VNC是一种基于图形化界面的远程桌面协议,它允许用户通过网络远程控制另一台计算机。VNC连接的工作原理是将远程计算机的屏幕图像传输到本地计算机,并将本地计算机的输入传输到远程计算机。VNC连接的优点是跨平台支持广泛,可以在不同操作系统之间进行远程控制。然而,VNC连接的缺点是传输速度较慢,对网络带宽要求较高。

  2. RDP连接(Remote Desktop Protocol): RDP是一种由微软开发的远程桌面协议,用于在Windows操作系统上进行远程控制。RDP连接通过将远程计算机的桌面图像传输到本地计算机,并将本地计算机的输入传输到远程计算机来实现。RDP连接的优点是在Windows系统上具有较好的性能和稳定性,支持远程音频和打印功能。然而,RDP连接只适用于Windows系统之间的远程控制。

  3. Moonlight串流: Moonlight是一种开源的游戏串流技术,它允许用户通过网络将游戏从主机设备(如PC或游戏主机)流式传输到其他设备上进行游玩。Moonlight串流的优点是可以在不同平台上进行游戏串流,如将PC游戏流式传输到移动设备上进行游玩。然而,Moonlight串流对网络带宽和延迟要求较高,对游戏的图形质量和性能也有一定的影响。

三种连接软件的优劣以及体验

实际测试下来vnc在局域网连接效果非常好,并且不会出现图像bug,但是由于是传输的是解码后的图像,一旦离开局域网网速的劣势就体香了出来,利用公网ip进行连接时候,画面传输就会明显卡顿。

rdp得益于传输的是解码前的数据流,图像的解码交给客户端来操作,大小对比与图像会小很多,对于带宽的要求比较低,方式传输方式在局域网和公网都表现得到还不错。但是只是在windows端表现的很好,在Linux安装时,Windows电脑可以正常连接,但是平板连接会出现花屏,可能时兼容性问题。

moonlight串流与rdp有一点点类似,并且得益于开源,在兼容性以及流畅度方面都做得相当不错。不过试了试在Windows下连接延迟比较大,在平板上并不会出现这个问题。

经过权衡利弊后我选择了sunshine串流

sunshine支持显卡

得益于开源,sunshine的显卡支持非常好,从a卡,n卡,再到核显都可以完美运行。(不过i卡没有博主不知道行不行)

教程

在官方网站下下载相应型号的sunshine

Releases · LizardByte/Sunshine · GitHubSelf-hosted game stream host for Moonlight. Contribute to LizardByte/Sunshine development by creating an account on GitHub.icon-default.png?t=N7T8https://github.com/LizardByte/Sunshine/releases下载好后直接安装即可

dpkg -i 包名.deb

安装好后会出现依赖缺失

问题不大

运行一遍修复命令即可

sudo apt-get install -f

运行好后直接运行sunshine命令打开

sunshine

此时进入其显示出来的地址 https://localhost:47990

注意事项

显示器

此时注意显示器不能关,否则就会连接不上,并且强烈建议买一个5块钱的显卡欺骗器。否则就需要虚拟一块虚拟屏幕才可以连接。同时注意修改息屏时间为从不。

这时候我的sunshine的地址是https://localhost:47990,

如果为远程部署

注意,如果用非本机连接ip地址是连接不上去的,需要先关闭sunshine文件,然后修改Ubuntu的hosts文件

nano /etc/hosts

把localhost的值改为0.0.0.0

之后再次打开sunshine。

此时打开Ubuntu的ip后面跟上端口,这边是47990。

进去后设置密码以及用户名。

同时连接输入pin码就行了。

配置连接好后为了电脑安全,需要再次进入hosts文件把localhosts文件改回来

nano /etc/hosts

把localhost的值改为127.0.0.1即可

这篇关于【分享】linux下安装sunshine串流配置进行远程办公的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/907095

相关文章

Linux换行符的使用方法详解

《Linux换行符的使用方法详解》本文介绍了Linux中常用的换行符LF及其在文件中的表示,展示了如何使用sed命令替换换行符,并列举了与换行符处理相关的Linux命令,通过代码讲解的非常详细,需要的... 目录简介检测文件中的换行符使用 cat -A 查看换行符使用 od -c 检查字符换行符格式转换将

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.

Linux系统配置NAT网络模式的详细步骤(附图文)

《Linux系统配置NAT网络模式的详细步骤(附图文)》本文详细指导如何在VMware环境下配置NAT网络模式,包括设置主机和虚拟机的IP地址、网关,以及针对Linux和Windows系统的具体步骤,... 目录一、配置NAT网络模式二、设置虚拟机交换机网关2.1 打开虚拟机2.2 管理员授权2.3 设置子

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

C#使用SQLite进行大数据量高效处理的代码示例

《C#使用SQLite进行大数据量高效处理的代码示例》在软件开发中,高效处理大数据量是一个常见且具有挑战性的任务,SQLite因其零配置、嵌入式、跨平台的特性,成为许多开发者的首选数据库,本文将深入探... 目录前言准备工作数据实体核心技术批量插入:从乌龟到猎豹的蜕变分页查询:加载百万数据异步处理:拒绝界面

Python使用自带的base64库进行base64编码和解码

《Python使用自带的base64库进行base64编码和解码》在Python中,处理数据的编码和解码是数据传输和存储中非常普遍的需求,其中,Base64是一种常用的编码方案,本文我将详细介绍如何使... 目录引言使用python的base64库进行编码和解码编码函数解码函数Base64编码的应用场景注意

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Java进行文件格式校验的方案详解

《Java进行文件格式校验的方案详解》这篇文章主要为大家详细介绍了Java中进行文件格式校验的相关方案,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、背景异常现象原因排查用户的无心之过二、解决方案Magandroidic Number判断主流检测库对比Tika的使用区分zip

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3