#!/bin/bash #将来可能可以换成apt-metalink来直接用种子/链接下载 echo "Spark Store Install script.星火商店安装脚本" #################检测文件是否存在 if [ $# -eq 0 ];then echo "没有接收到参数,退出" echo "用法:$0 deb路径" exit fi if [ ! -f "$1" ] then echo "文件不存在" exit 1 fi #################root校验+要密码 if [ "$(id -u)" != "0" ] then echo "ssinstall需要在root下运行"; uname=`whoami` echo "Now input the password of $uname" read upass ################检查密码对不对 echo "$upass" | sudo -S echo "i love amber forever" passcheck=`echo "$upass" | sudo -S echo "i love amber forever"` if [ "$passcheck" != "i love amber forever" ];then echo "-----------------------------------------------------" echo "E:密码错误,退出脚本!" exit 1 fi fi ##################apt-fast/metalink测试 DEPEND="这里一定会安装所以放弃处理" isuos=`cat /etc/os-release | grep UnionTech` ##############判断是否是root运行,如果是,则正常走;如果不是,则代输密码 if [ "$(id -u)" != "0" ];then #############################无root权限时 #临时提升星火源的优先级 echo "$upass" | sudo -S sed -i 's/400/500/g' /etc/apt/preferences.d/sparkstore IS_INSTALLED=`which apt-fast` if [ "$IS_INSTALLED" = "" ] ; then echo "未安装依赖:apt-fast 开始安装" echo "$upass" | sudo -S apt install apt-fast -y fi if [ "$DEPEND" != "" ] && [ "$isuos" != "" ]; then echo "UOS中系统依赖无法使用第三方下载工具,放弃使用apt-fast" echo ---------------------------------------------------------------------------------- echo "$upass" | sudo -S dpkg -i $1 || apt install -yf fi if [ "$DEPEND" != "" ] && [ "$isuos" = "" ]; then echo "检测到apt-fast,使用ss-apt-fast进行多线程下载加速" echo ---------------------------------------------------------------------------------- echo "$upass" | sudo -S dpkg -i $1 || ss-apt-fast install -yf fi echo "$upass" | sudo -S sed -i 's/500/400/g' /etc/apt/preferences.d/sparkstore #恢复优先级 else ###########################有root权限时 #临时提升星火源的优先级 sed -i 's/400/500/g' /etc/apt/preferences.d/sparkstore IS_INSTALLED=`which apt-fast` if [ "$IS_INSTALLED" = "" ] ; then echo "未安装依赖:apt-fast 开始安装" apt install apt-fast -y fi if [ "$DEPEND" != "" ] && [ "$isuos" != "" ]; then echo "UOS中系统依赖无法使用第三方下载工具,放弃使用apt-fast" echo ---------------------------------------------------------------------------------- dpkg -i $1 || apt install -yf fi if [ "$DEPEND" != "" ] && [ "$isuos" = "" ]; then echo "检测到apt-fast,使用ss-apt-fast进行多线程下载加速" echo ---------------------------------------------------------------------------------- dpkg -i $1 || ss-apt-fast install -yf fi sed -i 's/500/400/g' /etc/apt/preferences.d/sparkstore #恢复优先级 fi