zzw原创_非root安装fastDFS

本文详细介绍了如何在不使用root权限的情况下安装FastDFS,包括分析安装脚本、设置自定义安装路径、配置环境变量及安装后目录结构等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

zzw原创_非root安装fastDFS

fastDFS 想要非root安装,没找到资料,分析了一下安装脚本,原来作者是留了安装路径的,但没有放出来。

 

1、解包

[bdc@svr001 setup]$ tar  -xvf  libfastcommon-1.0.36.tar.gz

[bdc@svr001 setup]$ cd  libfastcommon-1.0.36

 

2、分析一下libfastcommon的make.sh脚本,发现其实前面的大段都是在判断是什么操作系统、32位还是64位、库路径等相关参数,真正的自身操作:

cd src
cp Makefile.in Makefile
sed_replace "s/\\\$(CFLAGS)/$CFLAGS/g" Makefile
sed_replace "s/\\\$(LIBS)/$LIBS/g" Makefile
sed_replace "s/\\\$(LIB_VERSION)/$LIB_VERSION/g" Makefile
make $1 $2 $3

只是简单的将Makefile.in文件替换几个参数后复制成 Makefile 文件,然后就make了,竟然没有涉及编译路径。

我们再分析一下它的Makefile文件:

install:
 mkdir -p $(DESTDIR)/usr/$(LIB_VERSION)
 mkdir -p $(DESTDIR)/usr/lib
 install -m 755 $(SHARED_LIBS) $(DESTDIR)/usr/$(LIB_VERSION)
 install -m 755 $(SHARED_LIBS) $(DESTDIR)/usr/lib
 mkdir -p $(DESTDIR)/usr/include/fastcommon
 install -m 644 $(HEADER_FILES) $(DESTDIR)/usr/include/fastcommon

make 带install参数时才传入路径,其中 $(DESTDIR)就是可以自定义路径了。

 

 

 

3、 安装  lib

[bdc@svr001 zzw_temp]$ pwd
/opt/aspire/product/bdc/zzw_temp
[bdc@svr001 zzw_temp]$ ll
总用量 4
drwxrwxr-x 3 bdc bdc 4096 11月  7 17:45 setup

[bdc@svr001 zzw_temp]$ export DESTDIR=/opt/aspire/product/bdc/zzw_temp/libfastcommon
[bdc@svr001 zzw_temp]$ echo  $DESTDIR
/opt/aspire/product/bdc/zzw_temp/libfastcommon

[bdc@svr001 setup]$ cd  setup/libfastcommon-1.0.36

[bdc@svr001 libfastcommon-1.0.36]$ ./make.sh  # 注意是make.sh ,不是make, 这与一般编译不同 !!

[bdc@svr001 libfastcommon-1.0.36]$ ./make.sh  install

[bdc@svr001 libfastcommon-1.0.36]$ cd /opt/aspire/product/bdc/zzw_temp/libfastcommon

[bdc@svr001 libfastcommon]$ ll
总用量 4
drwxrwxr-x 5 bdc bdc 4096 11月  7 18:09 usr

   安装成功!

4、 环境变量中加上库路径

export  LD_LIBRARY_PATH=/opt/aspire/product/dicmp_zzw/zzw_temp/fastddd/libfastcommon/usr/lib64:$LD_LIBRARY_PATH

注意使环境变量生效。

也可以将libfastcommon.so复制到/usr/lib下:  cp  /opt/aspire/product/dicmp_zzw/zzw_temp/fastddd/libfastcommon/usr/lib64/libfastcommon.so   /usr/lib 

 

 

5、安装fastdfs-5.11.tar.gz 同样的道理

 分析一下fastdfs的make.sh文件

ENABLE_STATIC_LIB=0
ENABLE_SHARED_LIB=1
TARGET_PREFIX=$DESTDIR/usr
TARGET_CONF_PATH=$DESTDIR/etc/fdfs
TARGET_INIT_PATH=$DESTDIR/etc/init.d

 所以安装时

[bdc@svr001 zzw_temp]$ export DESTDIR=/opt/aspire/product/dicmp_zzw/zzw_temp/fastddd/fastdfsaaa    # /opt/aspire/product/dicmp_zzw/zzw_temp/fastddd/fastdfsaaa 为安装目录

[bdc@svr001 ]$ ./make.sh      # 注意是make.sh ,不是make !!

[bdc@svr001 ]$ ./make.sh  install

二、安装后后目录结构

安装后的目录只用etc与usr两个文件夹。

[dicmp_zzw@linux245 fastdfsaaa]$ tree  .
.
|-- etc
|   |-- fdfs
|   |   |-- client.conf.sample
|   |   |-- storage.conf.sample
|   |   |-- storage_ids.conf.sample
|   |   `-- tracker.conf.sample
|   `-- init.d
|       |-- fdfs_storaged
|       `-- fdfs_trackerd
`-- usr
    |-- bin
    |   |-- fdfs_appender_test
    |   |-- fdfs_appender_test1
    |   |-- fdfs_append_file
    |   |-- fdfs_crc32
    |   |-- fdfs_delete_file
    |   |-- fdfs_download_file
    |   |-- fdfs_file_info
    |   |-- fdfs_monitor
    |   |-- fdfs_storaged
    |   |-- fdfs_test
    |   |-- fdfs_test1
    |   |-- fdfs_trackerd
    |   |-- fdfs_upload_appender
    |   |-- fdfs_upload_file
    |   |-- restart.sh
    |   `-- stop.sh
    |-- include
    |   `-- fastdfs
    |       |-- client_func.h
    |       |-- client_global.h
    |       |-- fdfs_client.h
    |       |-- fdfs_define.h
    |       |-- fdfs_global.h
    |       |-- fdfs_http_shared.h
    |       |-- fdfs_shared_func.h
    |       |-- mime_file_parser.h
    |       |-- storage_client1.h
    |       |-- storage_client.h
    |       |-- tracker_client.h
    |       |-- tracker_proto.h
    |       |-- tracker_types.h
    |       `-- trunk_shared.h
    |-- lib
    |   `-- libfdfsclient.so
    `-- lib64
        `-- libfdfsclient.so

 

三、配置

1、修改/opt/aspire/product/dicmp_zzw/zzw_temp/fastddd/fastdfsaaa/etc/init.d/fdfs_storaged  和 fdfs_trackerd  两个文件

# Source function library.
if [ -f /etc/init.d/functions ]; then
  . /etc/init.d/functions
fi

DESTDIR=/opt/aspire/product/dicmp_zzw/zzw_temp/fastddd/fastdfsaaa   #配置为安装路径

PRG=$DESTDIR/usr/bin/fdfs_storaged      #加上变量
CONF=$DESTDIR/etc/fdfs/storage.conf    
#加上变量

 

还没有空研究行不行

 

 
 
 
 
 
 
 
 
 
 
 
 

转载于:https://www.cnblogs.com/zzw-zyba/p/10155781.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值