非Root用户/普通用户权限下安装/运行FastDFS
1.准备安装包
libfastcommon-1.0.39.tar.gz
fastdfs-5.11.tar.gz
2.安装相关依赖
yum install gcc gcc-c++ make automake autoconf libtool pcre* zlib openssl openssl-devel
3.新建普通用户
useradd fastdfs
su - fastdfs
4.新建安装目录
mkdir -pv /home/opt/fastdfs
目录层级示意
/home/fastdfs/
├── opt
│ └── fastdfs
├── data
└── soft
├── fastdfs-5.11.tar.gz
├── libfastcommon-1.0.39.tar.gz
5.编译安装fastdfs
export DESTDIR=/home/fastdfs/opt/fastdfs
设置一个环境变量,软件的安装路径,因为作者自己的make.sh文件中有这个变量,但为空所以默认root用户编译的安装的时候就在系统根目录下,但普通用户是没有根目录的写入权限的。
5.1安装公共lib
5.1.1解压安装文件
cd /home/fastdfs/soft
tar -zxvf libfastcommon-1.0.39.tar.gz
5.1.2编译安装
cd libfastcommon-1.0.39/
./make.sh
./make.sh install
安装路径及文件示意
/home/fastdfs/opt/
└── fastdfs
└── usr
├── include
│ └── fastcommon
│ ├── avl_tree.h
│ ├── base64.h
│ ├── chain.h
│ ├── char_converter.h
│ ├── char_convert_loader.h
│ ├── common_blocked_queue.h
│ ├── common_define.h
│ ├── connection_pool.h
│ ├── fast_allocator.h
│ ├── fast_blocked_queue.h
│ ├── fast_buffer.h
│ ├── fast_mblock.h
│ ├── fast_mpool.h
│ ├── fast_task_queue.h
│ ├── fast_timer.h
│ ├── fc_list.h
│ ├── flat_skiplist.h
│ ├── hash.h
│ ├── http_func.h
│ ├── id_generator.h
│ ├── ini_file_reader.h
│ ├── ioevent.h
│ ├── ioevent_loop.h
│ ├── local_ip_func.h
│ ├── logger.h
│ ├── md5.h
│ ├── multi_skiplist.h
│ ├── multi_socket_client.h
│ ├── _os_define.h
│ ├── php7_ext_wrapper.h
│ ├── process_ctrl.h
│ ├── pthread_func.h
│ ├── sched_thread.h
│ ├── shared_func.h
│ ├── skiplist_common.h
│ ├── skiplist.h
│ ├── skiplist_set.h
│ ├── sockopt.h
│ └── system_info.h
├── lib
│ └── libfastcommon.so -> /home/fastdfs/opt/fastdfs/usr/lib64/libfastcommon.so
└── lib64
└── libfastcommon.so
5.2安装fastdfs
cd /home/fastdfs/soft
tar -zxvf fastdfs-5.11