Linux一键部署脚本

38 篇文章 6 订阅
2 篇文章 0 订阅

之前已经开发完跨平台客户端,在Linux运行是用命令行和人为设置权限运行的,适合开发使用,用着挺麻烦。所以需要一键部署,把之前手工的工作汇总起来处理。先打包好文件目录。把dotnet和自己程序包放一个文件夹下。然后基于放置目录实现install.sh。部署时候只要把forLinux文件夹上传到Linux上,然后运行bash install.sh达到一键部署。

打包结构
在这里插入图片描述
运行安装效果-桌面生成了快捷方式,别在root下运行额
在这里插入图片描述
运行效果
在这里插入图片描述

一键部署bash
包含检测安装dotnet,拷贝程序,设置权限和给用户设置桌面快捷方式

#!/bin/bash
#shell安装LISClient脚本
#20221125
#zlz
#----------------------------------------------------------
#检测安装dotnet5


mypath=$(cd $(dirname ${BASH_SOURCE[0]}); pwd )
echo "当前路径:${mypath}"
if [ ! -f /usr/bin/dotnet ];then
	if ! type dotnet >/dev/null 2>&1; then
		echo "没安装dotnet,进行离线安装"
		sudo mkdir -p /usr/share/dotnet
		sudo cp -r ${mypath}/dotnet/dotnet /usr/share
		sudo ln -s /usr/share/dotnet/dotnet /usr/bin/dotnet
		sudo chmod +x /usr/bin/dotnet
		sudo ln -s /usr/share/dotnet/dotnet /snap/bin/dotnet
		sudo chmod +x /snap/bin/dotnet
	fi
fi


echo "创建目录/usr/share/LISClient-linux-x64"
sudo mkdir /usr/share/LISClient-linux-x64
echo "拷贝文件到/usr/share/LISClient-linux-x64"
sudo cp -r ${mypath}/LISClient-linux-x64/*  /usr/share/LISClient-linux-x64/
echo "授权执行权限"
sudo chmod -R +777 /usr/share/LISClient-linux-x64/*
echo "创建快捷方式到/usr/share/applications/LISClient.desktop"
sudo cp ${mypath}/LISClient-linux-x64/resources/app/LISClient.desktop /usr/share/applications/
echo "授权快捷方式"
sudo chmod +777 /usr/share/applications/LISClient.desktop 
echo "让沙箱属于root"
sudo chown -R root:root /usr/share/LISClient-linux-x64/chrome-sandbox
echo "设置沙箱权限"
sudo chmod 4755 /usr/share/LISClient-linux-x64/chrome-sandbox
#给每个用户拷贝快捷方式
desk=`cat $HOME/.config/user-dirs.dirs | grep DESKTOP | tail  -1  |cut -d '=' -f 2  | sed 's/\"//g'`
var=`eval echo $desk`
echo $var
cd $var
sudo cp ${mypath}/LISClient-linux-x64/resources/app/LISClient.desktop $var/
echo "授权快捷方式"
sudo chmod +777 $var/LISClient.desktop
echo "安装LISClient成功"

运行效果

zhanglianzhu@zhanglianzhu-virtualmachine:/$ cd /forlinux
zhanglianzhu@zhanglianzhu-virtualmachine:/forlinux$
zhanglianzhu@zhanglianzhu-virtualmachine:/forlinux$ bash install.sh
当前路径:/forlinux
没安装dotnet,进行离线安装
ln: 无法创建符号链接'/usr/bin/dotnet': 文件已存在
ln: 无法创建符号链接'/snap/bin/dotnet': 没有那个文件或目录
chmod: 无法访问'/snap/bin/dotnet': 没有那个文件或目录
创建目录/usr/share/LISClient-linux-x64
拷贝文件到/usr/share/LISClient-linux-x64
授权执行权限
创建快捷方式到/usr/share/applications/LISClient.desktop
授权快捷方式
让沙箱属于root
设置沙箱权限
/home/zhanglianzhu/桌面
授权快捷方式
安装LISClient成功
zhanglianzhu@zhanglianzhu-virtualmachine:/forlinux$ 

涉及到shell的有获得shell文件当前全路径(因为要基于sh目录拷程序)。获得用户桌面路径,electron沙箱权限设置,快捷方式创建

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小乌鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值