修改文件管理器端口为38080,在飞牛OS开机信息追加文件管理器地址和端口号信息
This commit is contained in:
parent
0c4fb3b954
commit
16dc42a6fd
88
e20c/kvm.sh
88
e20c/kvm.sh
@ -51,7 +51,7 @@ commands=(
|
||||
["更新脚本"]="update_scripts"
|
||||
)
|
||||
|
||||
update_e20c_kernel(){
|
||||
update_e20c_kernel() {
|
||||
sudo armbian-update -k 6.1
|
||||
}
|
||||
|
||||
@ -84,7 +84,15 @@ install_docker() {
|
||||
# 安装QEMU/KVM虚拟机管理器
|
||||
install_virt_manager() {
|
||||
sudo apt-get install -y gconf2 qemu-system-arm qemu-utils qemu-efi ipxe-qemu libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager seabios vgabios gir1.2-spiceclientgtk-3.0 xauth fonts-wqy-microhei
|
||||
sudo apt install qemu-kvm -y
|
||||
sudo apt install qemu-kvm -y
|
||||
check_kvm
|
||||
}
|
||||
check_kvm() {
|
||||
if [ -c /dev/kvm ]; then
|
||||
green "KVM is installed successfully."
|
||||
else
|
||||
red "KVM is not installed. Your system may not support KVM virtualization."
|
||||
fi
|
||||
}
|
||||
# 卸载QEMU/KVM虚拟机管理器
|
||||
uninstall_virt_manager() {
|
||||
@ -114,7 +122,6 @@ uninstall_cockpit() {
|
||||
sudo nft delete table ip filter
|
||||
}
|
||||
|
||||
|
||||
# 允许虚拟机通过指定的桥接网卡收发数据
|
||||
add_nft_rules_for_bridge() {
|
||||
apt install nftables -y
|
||||
@ -202,7 +209,7 @@ install_filemanager() {
|
||||
green "Aborted, unsupported or unknown OS: $uname"
|
||||
return 6
|
||||
fi
|
||||
green "Downloading File Browser for $filemanager_os/$filemanager_arch..."
|
||||
green "正在下载文件管理器($filemanager_os/$filemanager_arch) 请稍等..."
|
||||
if type -p curl >/dev/null 2>&1; then
|
||||
net_getter="curl -fsSL"
|
||||
elif type -p wget >/dev/null 2>&1; then
|
||||
@ -213,21 +220,18 @@ install_filemanager() {
|
||||
fi
|
||||
filemanager_file="${filemanager_os}-$filemanager_arch-filebrowser$filemanager_dl_ext"
|
||||
filemanager_url="https://cafe.cpolar.cn/wkdaily/filebrowser/raw/branch/main/$filemanager_file"
|
||||
echo "$filemanager_url"
|
||||
|
||||
# Use $PREFIX for compatibility with Termux on Android
|
||||
rm -rf "$PREFIX/tmp/$filemanager_file"
|
||||
|
||||
${net_getter} "$filemanager_url" >"$PREFIX/tmp/$filemanager_file"
|
||||
|
||||
green "Extracting..."
|
||||
green "下载完成 正在解压..."
|
||||
case "$filemanager_file" in
|
||||
*.zip) unzip -o "$PREFIX/tmp/$filemanager_file" "$filemanager_bin" -d "$PREFIX/tmp/" ;;
|
||||
*.tar.gz) tar -xzf "$PREFIX/tmp/$filemanager_file" -C "$PREFIX/tmp/" "$filemanager_bin" ;;
|
||||
esac
|
||||
chmod +x "$PREFIX/tmp/$filemanager_bin"
|
||||
|
||||
green "Putting filemanager in $install_path (may require password)"
|
||||
$sudo_cmd mv "$PREFIX/tmp/$filemanager_bin" "$install_path/$filemanager_bin"
|
||||
if setcap_cmd=$(PATH+=$PATH:/sbin type -p setcap); then
|
||||
$sudo_cmd $setcap_cmd cap_net_bind_service=+ep "$install_path/$filemanager_bin"
|
||||
@ -235,8 +239,7 @@ install_filemanager() {
|
||||
$sudo_cmd rm -- "$PREFIX/tmp/$filemanager_file"
|
||||
|
||||
if type -p $filemanager_bin >/dev/null 2>&1; then
|
||||
green "Successfully installed"
|
||||
green "安装成功,现在您可以执行第3项开启文件管理并设置自启动"
|
||||
light_magenta "不依赖于docker的 文件管理器安装成功"
|
||||
trap ERR
|
||||
start_filemanager
|
||||
return 0
|
||||
@ -255,11 +258,32 @@ start_filemanager() {
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Add configuration file generation and editing
|
||||
$sudo_cmd mkdir -p /etc/filebrowser
|
||||
$sudo_cmd touch /etc/filebrowser/.filebrowser.json
|
||||
$sudo_cmd chown $(id -u):$(id -g) /etc/filebrowser/.filebrowser.json
|
||||
|
||||
# Set the desired port
|
||||
desired_port="38080"
|
||||
cat >/etc/filebrowser/.filebrowser.json <<EOF
|
||||
{
|
||||
"port": "$desired_port",
|
||||
"root": "/etc/filebrowser",
|
||||
"database": "/etc/filebrowser/filebrowser.db",
|
||||
"auth": {
|
||||
"username": "admin",
|
||||
"password": "admin"
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
green "设置文件管理器的端口为: $desired_port"
|
||||
|
||||
# 启动 filebrowser 文件管理器
|
||||
echo "启动 filebrowser 文件管理器..."
|
||||
green "启动 filebrowser 文件管理器..."
|
||||
|
||||
# 使用 nohup 和输出重定向,记录启动日志到 filebrowser.log 文件中
|
||||
nohup sudo filebrowser -r / --address 0.0.0.0 --port 8080 >filebrowser.log 2>&1 &
|
||||
nohup sudo filebrowser -r / --address 0.0.0.0 --port $desired_port >filebrowser.log 2>&1 &
|
||||
|
||||
# 检查 filebrowser 是否成功启动
|
||||
if [ $? -ne 0 ]; then
|
||||
@ -268,15 +292,46 @@ start_filemanager() {
|
||||
fi
|
||||
local host_ip
|
||||
host_ip=$(hostname -I | awk '{print $1}')
|
||||
green "filebrowser 文件管理器已启动,可以通过 http://${host_ip}:8080 访问"
|
||||
green "filebrowser 文件管理器已启动,可以通过 http://${host_ip}:${desired_port} 访问"
|
||||
green "登录用户名:admin"
|
||||
green "默认密码:admin(请尽快修改密码)"
|
||||
sudo wget -O /etc/systemd/system/filebrowser.service "https://cafe.cpolar.cn/wkdaily/zero3/raw/branch/main/filebrowser.service"
|
||||
# 创建 Systemd 服务文件
|
||||
cat >/etc/systemd/system/filebrowser.service <<EOF
|
||||
[Unit]
|
||||
Description=File Browser Service
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
ExecStart=/usr/local/bin/filebrowser -r / --address 0.0.0.0 --port ${desired_port}
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
|
||||
sudo chmod +x /etc/systemd/system/filebrowser.service
|
||||
sudo systemctl daemon-reload # 重新加载systemd配置
|
||||
sudo systemctl start filebrowser.service # 启动服务
|
||||
sudo systemctl enable filebrowser.service # 设置开机启动
|
||||
yellow "已设置文件管理器开机自启动,下次开机可直接访问文件管理器"
|
||||
|
||||
SCRIPT_PATH="/usr/trim/bin/show_startup_info.sh"
|
||||
# 判断脚本是否存在
|
||||
if [ ! -f "$SCRIPT_PATH" ]; then
|
||||
exit 1
|
||||
fi
|
||||
HOST_NAME=$(hostname)
|
||||
cp "$SCRIPT_PATH" "${SCRIPT_PATH}.bak"
|
||||
# 在飞牛OS开机命令行界面插入Filebrowser地址和端口信息
|
||||
INSERT_INFO="Filebrowser Web console: http://$HOST_NAME:$desired_port or http://${host_ip}:${desired_port}"
|
||||
sed -i "/^Filebrowser Web console/d" "$SCRIPT_PATH"
|
||||
sed -i "/INFO_CONTENT=/a $INSERT_INFO" "$SCRIPT_PATH"
|
||||
light_magenta "文件管理器的访问地址和端口 已追加到飞牛OS开机命令行界面 预览如下"
|
||||
bash "$SCRIPT_PATH"
|
||||
cat /etc/issue
|
||||
|
||||
}
|
||||
|
||||
# 安装1panel面板
|
||||
@ -310,20 +365,19 @@ update_scripts() {
|
||||
exit 0
|
||||
}
|
||||
|
||||
|
||||
show_menu() {
|
||||
clear
|
||||
greenline "————————————————————————————————————————————————————"
|
||||
echo '
|
||||
*********** QEMU/KVM 虚拟机管理助手 **********
|
||||
环境: (Ubuntu/Debian/Armbian/RaspberryPiOS etc)
|
||||
环境: (Ubuntu/Debian/Armbian/RaspberryPiOS/fnOS etc)
|
||||
平台: arm64/x86-64
|
||||
'
|
||||
echo -e " https://github.com/wukongdaily/e20c/"
|
||||
greenline "————————————————————————————————————————————————————"
|
||||
echo "请选择操作:"
|
||||
# 特殊处理的项数组
|
||||
special_items=("安装QEMU/KVM虚拟机管理器" "安装Cockpit虚拟机Web管理工具")
|
||||
special_items=("安装QEMU/KVM虚拟机管理器" "安装Cockpit虚拟机Web管理工具" "安装文件管理器FileBrowser")
|
||||
for i in "${!menu_options[@]}"; do
|
||||
if [[ " ${special_items[*]} " =~ " ${menu_options[i]} " ]]; then
|
||||
# 如果当前项在特殊处理项数组中,使用特殊颜色
|
||||
|
Loading…
Reference in New Issue
Block a user