kkfile一键部署-ubuntu版
核心:kkfileview的targz,和微软依赖库 LibreOffice_7.5.3.2_Linux_x86-64_deb ;
(最新版的kkfileview,targz哪里获取?自己编译源代码或网上找即可,微软依赖库自己下载or找)
#!/bin/bash# kkFileView 极速部署脚本 - Ubuntuset -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"echo "🚀 kkFileView 极速部署开始..."# 检查文件
echo "📁 检查文件..."
[ ! -f "$SCRIPT_DIR/kkFileView-4.4.0.tar.gz" ] && echo "❌ kkFileView-4.4.0.tar.gz 不存在!" && exit 1
[ ! -f "$SCRIPT_DIR/LibreOffice_7.5.3.2_Linux_x86-64_deb.tar.gz" ] && echo "❌ LibreOffice安装包不存在!" && exit 1
echo "✅ 文件检查完成!"# 更新系统
echo "🔄 更新系统..."
apt update -y# 安装JDK8
echo "☕ 检查Java环境..."
if command -v java &> /dev/null; thenJAVA_VERSION=$(java -version 2>&1 | head -n1 | awk -F '"' '{print $2}')echo " 检测到Java版本: $JAVA_VERSION"if [[ $JAVA_VERSION == 1.8* ]]; thenecho "✅ Java 8 已安装,跳过安装"elseecho "🔧 安装Java 8..."apt --fix-broken install -yapt install -y openjdk-8-jdkjava -versionfi
elseecho "🔧 安装Java 8..."apt --fix-broken install -yapt install -y openjdk-8-jdkjava -version
fi# 安装LibreOffice
echo "📄 安装LibreOffice..."
cd "$SCRIPT_DIR"
if [ ! -d "LibreOffice_7.5.3.2_Linux_x86-64_deb" ]; thenecho " 解压LibreOffice安装包..."tar -xzf LibreOffice_7.5.3.2_Linux_x86-64_deb.tar.gz
ficd LibreOffice_7.5.3.2_Linux_x86-64_deb/DEBS
echo " 安装deb包..."
dpkg -i *.deb
echo " 修复依赖关系..."
apt-get install -f -y# 部署kkFileView
echo "📦 部署kkFileView..."
cd "$SCRIPT_DIR"
if [ ! -d "kkFileView-4.4.0" ]; thenecho " 解压kkFileView..."tar -xzf kkFileView-4.4.0.tar.gz
fi
chmod +x kkFileView-4.4.0/bin/*.sh# 启动服务
echo "▶️ 启动服务..."
cd kkFileView-4.4.0/bin
if pgrep -f "kkFileView" > /dev/null; thenecho " 停止现有服务..."./shutdown.sh 2>/dev/null || truesleep 2
fi
./startup.shecho ""
echo "✅ 部署完成!"# 获取IP地址并显示
LOCAL_IP=$(hostname -I | awk '{print $1}')
PUBLIC_IP=""
for service in "ifconfig.me" "ipinfo.io/ip" "icanhazip.com"; doif PUBLIC_IP=$(curl -s --connect-timeout 3 "$service" 2>/dev/null); thenbreakfi
doneecho "🌐 访问地址:"
echo " 本地访问: http://$LOCAL_IP:8012"
[ -n "$PUBLIC_IP" ] && echo " 公网访问: http://$PUBLIC_IP:8012" || echo " 公网IP: 获取失败"echo ""
echo "常用命令:"
echo " 启动: cd $SCRIPT_DIR/kkFileView-4.4.0/bin && ./startup.sh"
echo " 停止: cd $SCRIPT_DIR/kkFileView-4.4.0/bin && ./shutdown.sh"
echo " 日志: cd $SCRIPT_DIR/kkFileView-4.4.0/bin && ./showlog.sh"