高端定制网站的特点,站长工具海角,长春南关网站建设,东莞seo建站推广费用FastDFS 一键自动安装脚本 目录 FastDFS 一键自动安装脚本1. 简介2. 脚本功能3. 使用说明准备工作执行脚本 4. 注意事项5.下载6.代码解释 1. 简介
该脚本是一个用于在离线环境下一键自动安装 FastDFS 的 Bash 脚本。它包含了安装 FastDFS 的所有步骤#xff0c;包括安装依赖、…FastDFS 一键自动安装脚本 目录 FastDFS 一键自动安装脚本1. 简介2. 脚本功能3. 使用说明准备工作执行脚本 4. 注意事项5.下载6.代码解释 1. 简介
该脚本是一个用于在离线环境下一键自动安装 FastDFS 的 Bash 脚本。它包含了安装 FastDFS 的所有步骤包括安装依赖、安装 libfastcommon、安装 tracker、配置和启动 tracker、配置和启动 storage以及将 FastDFS 配置为系统服务并设置为开机自启动。
2. 脚本功能
安装所需的依赖包。解压并安装 libfastcommon。解压并安装 FastDFS。配置和启动 tracker。配置和启动 storage。将脚本复制到 /etc/init.d/ 目录下并添加执行权限。创建 systemd 单元文件设置 FastDFS 服务的启动、停止和重启命令。添加 FastDFS 服务为系统服务并设置开机自启动。
3. 使用说明
准备工作
确保脚本运行在具有足够权限的用户下。下载并准备好 FastDFS 的安装包并将其放置在指定的路径下。
执行脚本
执行脚本./fastdfs_install.sh
4. 注意事项
在执行脚本之前请确保已经准备好了 FastDFS 的安装包并放置在正确的路径下。确保脚本运行时具有足够的权限来执行系统级的操作。在脚本运行期间请留意是否有任何错误信息输出确保每个步骤都成功执行。
5.下载
见文章资源绑定
6.代码解释
#!/bin/bash
set -e# Tracker 服务器 IP 地址tracker_server_ip192.168.0.106# FastDFS 安装目录fastdfs_home/dhxdata/fastdfs
DEPENDENCY_DIR/usr/local/autoinstall/third-lib/
PACKAGE_DIR/usr/local/autoinstall/lib/
SCRIPT_NAMEfastdfs_startup.sh
SERVICE_NAMEfastdfs_startup.service
SERVICE_DIR/etc/systemd/system/echo 安装依赖...
yum localinstall -y $DEPENDENCY_DIR/gcc/*.rpm
yum localinstall -y $DEPENDENCY_DIR/gcc-c/*.rpm
yum localinstall -y $DEPENDENCY_DIR/perl/*.rpm# 安装 libfastcommoncd $PACKAGE_DIR || { echo 无法进入目录 $PACKAGE_DIR; exit 1; }
if [[ ! -f libfastcommon-1.0.7.tar.gz ]]; thenecho 没有找到 libfastcommon 安装包exit 1
fitar -zxvf libfastcommon-1.0.7.tar.gz || { echo 解压 libfastcommon 安装包失败; exit 1; }
cd libfastcommon-1.0.7/ || { echo 无法进入目录 libfastcommon-1.0.7; exit 1; }
./make.sh ./make.sh install || { echo 编译安装 libfastcommon 失败; exit 1; }
cp /usr/lib64/libfastcommon.so /usr/lib# 安装 trackercd $PACKAGE_DIR || { echo 无法进入目录 $PACKAGE_DIR; exit 1; }
if [[ ! -f fastdfs-5.05.tar.gz ]]; thenecho 没有找到 FastDFS 安装包exit 1
fitar -zxvf fastdfs-5.05.tar.gz || { echo 解压 FastDFS 安装包失败; exit 1; }
cd fastdfs-5.05/ || { echo 无法进入目录 fastdfs-5.05; exit 1; }
./make.sh ./make.sh install || { echo 编译安装 FastDFS 失败; exit 1; }
cp conf/* /etc/fdfs/# 配置和启动 trackercd /etc/fdfs/ || { echo 无法进入目录 /etc/fdfs/; exit 1; }
sed -i s#base_path * */home/yuqing/fastdfs#base_path ${fastdfs_home}#g tracker.conf
sed -i s#http.server_port * *8080#http.server_port 80#g tracker.conf
mkdir -p $fastdfs_home || { echo 创建目录 $fastdfs_home 失败; exit 1; }
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart || { echo 启动 tracker 失败; exit 1; }# 配置和启动 storagecd /etc/fdfs/ || { echo 无法进入目录 /etc/fdfs/; exit 1; }
sed -i s#base_path * */home/yuqing/fastdfs#base_path ${fastdfs_home}#g storage.conf
sed -i s#store_path0 * */home/yuqing/fastdfs#store_path0 ${fastdfs_home}_storage#g storage.conf
sed -i s#tracker_server * *192.168.209.121:22122#tracker_server ${tracker_server_ip}:22122#g storage.conf
sed -i s#http.server_port * *8888#http.server_port 88#g storage.conf
mkdir -p ${fastdfs_home}_storage || { echo 创建目录 ${fastdfs_home}_storage 失败; exit 1; }
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart || { echo 启动 storage 失败; exit 1; }# 复制脚本到 /etc/init.d/sudo cp $PACKAGE_DIR/$SCRIPT_NAME /etc/init.d/ || { echo 复制脚本到 /etc/init.d/ 失败; exit 1; }# 添加执行权限sudo chmod x /etc/init.d/${SCRIPT_NAME} || { echo 添加执行权限失败; exit 1; }# 创建 systemd 单元文件cat EOF | sudo tee ${SERVICE_DIR}${SERVICE_NAME} /dev/null
[Unit]
DescriptionFastDFS Startup Service
Afternetwork.target[Service]
Typeoneshot
ExecStart/etc/init.d/${SCRIPT_NAME} start
ExecStop/etc/init.d/${SCRIPT_NAME} stop
ExecReload/etc/init.d/${SCRIPT_NAME} restart
RemainAfterExityes[Install]
WantedBymulti-user.target
EOF# 添加脚本为系统服务并设置开机自启动sudo systemctl daemon-reload || { echo 重新加载 systemd 失败; exit 1; }
sudo systemctl enable ${SERVICE_NAME} || { echo 设置开机自启动失败; exit 1; }
sudo systemctl start ${SERVICE_NAME} || { echo 启动服务失败; exit 1; }# 完成提示信息echo FastDFS已成功配置为系统服务并设置为开机自启动。