Skip to content

Latest commit

 

History

History
145 lines (113 loc) · 3.11 KB

INSTALL.md

File metadata and controls

145 lines (113 loc) · 3.11 KB

1. install libaio devel

for CentOS or REHL:

yum install libaio-devel -y

for Unbuntu or Debian:

apt install libaio-dev -y

2. libfastcommon

git clone [email protected]:happyfish100/libfastcommon.git || git clone https://github.com/happyfish100/libfastcommon.git
cd libfastcommon/
git checkout master
./make.sh clean && ./make.sh && ./make.sh install

default install directories:

/usr/lib64
/usr/lib
/usr/include/fastcommon

3. libserverframe

git clone [email protected]:happyfish100/libserverframe.git || git clone https://github.com/happyfish100/libserverframe.git
cd libserverframe/
./make.sh clean && ./make.sh && ./make.sh install

4. libdiskallocator

git clone https://gitee.com/fastdfs100/libdiskallocator.git  || git clone https://github.com/happyfish100/libdiskallocator.git
cd libdiskallocator/
./make.sh clean && ./make.sh && ./make.sh install

5. Vote Node client

git clone [email protected]:happyfish100/FastCFS.git || git clone https://github.com/happyfish100/FastCFS.git
cd FastCFS/
./make.sh clean && ./make.sh --module=voteclient && ./make.sh --module=voteclient install

6. Auth client

git clone [email protected]:happyfish100/FastCFS.git || git clone https://github.com/happyfish100/FastCFS.git
cd FastCFS/
./make.sh clean && ./make.sh --module=authclient && ./make.sh --module=authclient install

7. fastDIR

git clone [email protected]:happyfish100/fastDIR.git || git clone https://github.com/happyfish100/fastDIR.git
cd fastDIR/
./make.sh clean && ./make.sh && ./make.sh install
mkdir -p /etc/fastcfs/fdir/
cp conf/*.conf /etc/fastcfs/fdir/

8. faststore

git clone [email protected]:happyfish100/faststore.git || git clone https://github.com/happyfish100/faststore.git
cd faststore/
./make.sh clean && ./make.sh && ./make.sh install
mkdir -p /etc/fastcfs/fstore/
cp conf/*.conf /etc/fastcfs/fstore/

9. fuse client

9.1. libfuse

libfuse requires meson and ninja which require python3.5 or higher version

9.1.1. pkg-config and python

packages: pkg-config python3 python3-pip

Ubuntu:

apt install pkg-config python3 python3-pip -y

CentOS:

yum install pkgconfig python3 python3-pip -y
9.1.2. meson and ninja
pip3 install meson
pip3 install ninja
9.1.3. gcc

Ubuntu:

apt install gcc g++ -y

CentOS:

yum install gcc gcc-c++ -y
9.1.4. libfuse
git clone [email protected]:libfuse/libfuse.git || git clone https://github.com/libfuse/libfuse.git
cd libfuse/
git checkout fuse-3.10.1
mkdir build/; cd build/
meson ..
meson configure -D prefix=/usr
meson configure -D examples=false
ninja && ninja install
sed -i 's/#user_allow_other/user_allow_other/g' /etc/fuse.conf
sed -i "s#prefix=.*#prefix=/usr#g" /usr/lib64/pkgconfig/fuse3.pc

9.2. fcfs_fused

cd FastCFS/
./make.sh --module=fuseclient clean && ./make.sh --module=fuseclient && ./make.sh --module=fuseclient install
mkdir -p /etc/fastcfs/fcfs/
mkdir -p /etc/fastcfs/vote/
mkdir -p /etc/fastcfs/auth/
cp conf/*.conf /etc/fastcfs/fcfs/
cp -R src/vote/conf/* /etc/fastcfs/vote/
cp -R src/auth/conf/* /etc/fastcfs/auth/