在Debian上安装向日葵

news2024/10/23 11:07:27

说明:

因为之前服务器上安装了 PVE (Proxmox VE),之前是用 Proxmox VE 进行服务器资源管理的。出于某些原因,现在不再通过 PVE构建的虚拟机来使用计算资源,而是通过 PVE 自带的 Debian 系统直接使用虚拟机资源(因为积累的数据量比较多,重新装系统不太现实,而且部分虚拟机也在用,所以目前的形式就是:一方面通过虚拟机使用计算资源,另一方面直接通过 Debian 使用计算资源)。

为了能够远程连接服务器,需要在 Debian 上安装向日葵软件。去官网下载时可以发现,没有直接适用 Debian 的向日葵安装包,所以本文将通过修改向日葵安装包源码来实现向日葵在 Debian 上的安装。

1. 下载向日葵安装包:

从官网上下载个人版向日葵(https://sunlogin.oray.com/download/linux?type=personal),因为是服务器端安装,所以选择命令行版本的向日葵。

下载方式:wget https://dw.oray.com/sunlogin/linux/sunloginclientshell-10.1.1.28779-amd64.deb

2. 解包并修改安装源码:

2.1 解包:

通过命令 dpkg-deb -R sunloginclientshell-10.1.1.28779-amd64.deb sunloginclient 将下载的 .deb安装包解压缩到 sunloginclient 目录下,该目录包含 DEBIANusr 两个子目录。
切换到DEBIAN目录下(cd sunloginclient/DEBIAN),可以看到有control postinst postrm preinst prerm 四个文件,其中需要修改的是 postinstprerm 两个文件。

2.2 修改:

切换到../usr/local/sunlogin/scripts/(2.2.1-2.2.4都是该目录)

2.2.1 修改common.sh文件:

切换到scripts目录下(cd ../usr/local/sunlogin/scripts/),用vi打开common.sh文件(如下图),可以发现其中是包含debian选项的(绿色箭头指示;但是后续安装脚本中没有debian相关内容,所以不能直接在debian上安装)。由于我们是要在 PVE 上安装,所以/etc/issue中所需的关键词是 “Proxmox Virtual Environment”,所以需要添加红框标注的部分。
在这里插入图片描述
第二处需要修改的是 os_version 部分,需要增加红框标注的内容(如下所示)。需要注意的是我这里是/etc/issue.net,需要根据具体情况修改目标文件(可以 ls /etc/issue* 看一下 issue相关的文件)。
在这里插入图片描述

2.2.2 修改 start.sh

需要修改的地方如下所示,增加一处 debian 的启动项(注意 debian 的大小写)。
在这里插入图片描述

2.2.3 修改 depends.sh

需要增加一项 debian 的判断项。
在这里插入图片描述

2.2.4 修改 stop.sh

需要增加一项 debian 的终止项(注意 debian 的大小写)。
在这里插入图片描述

2.2.5 修改 postinst

切换到 DEBIAN/目录下,有两处需要修改(红框所示)。
在这里插入图片描述

2.2.6 修改prerm

有一处修改。
在这里插入图片描述

2.3 打包:

运行dpkg-deb -b sunloginclient/ sunlogincilent-10.1.1.128779-fixed-amd64.debsunloginclient/目录进行打包。

2.4 安装:

运行sudo dpkg -i sunlogincilent-10.1.1.128779-fixed-amd64.deb进行安装,安装时可能会报错:Package libncurses5 is not installed.,可以通过sudo apt-get install libncurses5-dev安装libncurses5,可能还会报错:E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).,可以通过apt --fix-broken install进行处理。

3. 运行向日葵:

运行sudo /usr/local/sunlogin/bin/sunloginclient
出现:
在这里插入图片描述
按f12登入向日葵账户即可。
在这里插入图片描述
登入之后:
在这里插入图片描述

再按f12退出(exit)即可。

4. 向日葵远程登入并创建新用户名:

4.1 创建用户组:

sudo groupadd zhang_group
sudo groupadd wang_group

4.2 创建新用户:

sudo useradd -m -G zhang_group zhangsan
sudo useradd -m -G wang_group wangwu

## 查看zhangsan 和 wangwu的用户组
groups zhangsan
groups wangwu

4.3 设置密码:

sudo passwd zhangsan

sudo passwd wangwu

修改/ect/passwd,将新用户对应行的 xxx:/bin/sh换成xxx:/bin/bash

(ps. 新建用户没有 sudo 权限)

参考:

[1]. https://forums.debiancn.org/t/topic/2801
[2]. https://sunlogin.oray.com/download/linux?type=personal

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

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

相关文章

使用Python抓取房源信息

1. 引言 在当今大数据时代,网络爬虫成为获取信息的重要手段之一。本文将以某家二手房为例,演示如何使用Python爬虫抓取房源信息,并将这些信息保存到Excel文件中。 目标网站 2. 准备工作 2.1 安装必要的库 在开始之前,请确保你…

银行客户贷款行为数据挖掘与分析

#1024程序员节 | 征文# 在新时代下,消费者的需求结构、内容与方式发生巨大改变,企业要想获取更多竞争优势,需要借助大数据技术持续创新。本文分析了传统商业银行面临的挑战,并基于knn、逻辑回归、人工神经网络三种算法&#xff0…

【在Linux世界中追寻伟大的One Piece】Socket编程UDP

目录 1 -> UDP网络编程 1.1 -> V1版本 -echo server 1.2 -> V2版本 -DictServer 1.3 -> V2版本 -DictServer(封装版) 1 -> UDP网络编程 1.1 -> V1版本 -echo server 简单的回显服务器和客户端代码。 备注:代码中会用到地址转换函数。 noc…

Java面试题库——多线程

1.并行和并发有什么区别? 并行:是指两个或多个事件在同一时刻发生,是在不同实体上的多个事件; 并发:是指两个或多个事件在同一时间间隔发生,是同一实体上的多个事件。2.线程和进程的区别? 根本…

数据结构修炼——常见的排序算法:插入/希尔/选择/堆排/冒泡/快排/归并/计数

目录 一、常见的排序算法二、常见排序算法的实现2.1 排序算法回顾2.1.1 冒泡排序2.1.2 堆排序 2.2 直接插入排序2.3 希尔排序2.4 选择排序2.5 快速排序2.5.1 快速排序(霍尔法)2.5.2 快速排序(挖坑法)2.5.3 快速排序(前…

极客wordpress模板

这是一个展示WordPress主题的网页设计。页面顶部有一个导航栏,包含多个选项,如“关于我们”、“产品中心”、“案例展示”、“新闻动态”、“联系我们”和“技术支持”。页面中间部分展示了多个产品,每个产品都有一个图片和简短的描述。页面下…

【Linux】冯诺依曼体系结构 OS的概念

🪐🪐🪐欢迎来到程序员餐厅💫💫💫 主厨:邪王真眼 主厨的主页:Chef‘s blog 所属专栏:青果大战linux 总有光环在陨落,总有新星在闪烁 前言废话&#xff1a…

动态链接过程分析

目录 一、前言二、示例程序三、动态库的加载过程1、动态链接器加载动态库2、动态库的加载地址 四、符号重定位1、全局符号表2、全局偏移表 GOT3、liba.so 动态库文件的布局4、liba.so 动态库的虚拟地址5、GOT 表的内部结构6、反汇编 liba.so 代码 五、补充1、延迟绑定 plt 上文…

【ARM】ARM架构参考手册_Part B 内存和系统架构(5)

目录 5.1关于缓存和写缓冲区 5.2 Cache 组织 5.2.1 集联性(Set-associativity) 5.2.2 缓存大小 5.3 缓存类型 5.3.1 统一缓存或分离缓存 5.3.2 写通过(Write-through)或写回(Write-back)缓存 5.3.3…

基于R语言机器学习遥感数据处理与模型空间预测技术及实际项目案例分析

随机森林作为一种集成学习方法,在处理复杂数据分析任务中特别是遥感数据分析中表现出色。通过构建大量的决策树并引入随机性,随机森林在降低模型方差和过拟合风险方面具有显著优势。在训练过程中,使用Bootstrap抽样生成不同的训练集&#xff…

Linux环境配置(学生适用)

1.挑选最便宜的云服务器 如腾讯云服务器,华为云服务器,百度云服务器等等…… 2.找到你的云服务器实例,然后找到你的公网IP。 3.云服务器实例 ---更多 --- 重置root密码 (一定要重置) 4. 下载并安装 xshell 或者其他登陆软件 xshel…

12. 命令行

Hyperf 的命令行默认由 hyperf/command 组件提供,而该组件本身也是基于 symfony/console 的抽象。 一、安装 通常来说该组件会默认存在,但如果您希望用于非 Hyperf 项目,也可通过下面的命令依赖 hyperf/command 组件。 composer require hype…

告别ELK,APO提供基于ClickHouse开箱即用的高效日志方案——APO 0.6.0发布

ELK一直是日志领域的主流产品,但是ElasticSearch的成本很高,查询效果随着数据量的增加越来越慢。业界已经有很多公司,比如滴滴、B站、Uber、Cloudflare都已经使用ClickHose作为ElasticSearch的替代品,都取得了不错的效果&#xff…

【Golang】Go语言中如何创建Cron定时任务

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…

MySQL【知识改变命运】11

联合查询 6. ⼦查询6.1 语法6.2 单⾏⼦查询6.3 多⾏⼦查询6.4 多列⼦查询6.5 在from⼦句中使⽤⼦查询 7. 合并查询7.1 创建新表并初始化数据7.2 Union7.3 Union all 8. 插⼊查询结果8.1 语法8.2 ⽰例 6. ⼦查询 ⼦查询是把⼀个SELECT语句的结果当做别⼀个SELECT语句的条件&…

10.22 MySQL

存储过程 存储函数 存储函数是有返回值的存储过程,存储函数的参数只能是in类型的。具体语法如下: characteristic 特性 练习: 从1到n的累加 ​​​​​​ create function fun1(n int) returns int deterministic begindeclare total i…

制氮机分子筛的作用

制氮机作为一种重要的工业设备,广泛应用于食品、饮料、化学、石油、电子和医疗保健等多个行业。其核心组件之一——分子筛。本文将详细探讨制氮机分子筛的作用及其重要性。 一、分子筛的基本概念 分子筛是一种具有均匀孔径的多孔材料,常用于气体分离和纯…

Elasticsearch 中的高效按位匹配

作者:来自 Elastic Alexander Marquardt 探索在 Elasticsearch 中编码和匹配二进制数据的六种方法,包括术语编码(我喜欢的方法)、布尔编码、稀疏位位置编码、具有精确匹配的整数编码、具有脚本按位匹配的整数编码以及使用 ESQL 进…

基于vue框架的的二手车交易系统的设计与实现thx7v(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能:用户,卖家,车辆类型,二手车,在线留言,订单信息 开题报告内容 基于Vue框架的二手车交易系统的设计与实现开题报告 一、课题背景及意义 随着汽车消费市场的日益成熟与消费者换车频率的增加,二手车交易市场逐渐成为汽车市场的…

pycharm配置git版本控制

今天记录一下如何在pycharm工具中配置git版本控制,主要分以下步骤: 1、安装git 首先需要有git环境,去git官网下载git安装包,下一步下一步执行安装完成即可 2、在pycharm中配置git路径 下载git后,在pycharm的 setti…