diff --git a/README.md b/README.md index 425df27..7b84e53 100644 --- a/README.md +++ b/README.md @@ -1 +1,8 @@ -# ipfs_daemon +# Install IPFS as Daemon + +used on Debian based Distros + + git clone https://github.com/6543/ipfs_daemon + sudo ./setup-ipfs-daemon + +ipfs sores its file on /var/spool/ipfs/.ipfs/ diff --git a/ipfs.initd b/ipfs.initd old mode 100644 new mode 100755 index fee274b..c6bb6fe --- a/ipfs.initd +++ b/ipfs.initd @@ -11,8 +11,8 @@ PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/local/bin/ipfs -IPFS_UID=1001 -IPFS_GID=1001 +IPFS_UID=#UID# +IPFS_GID=#GID IPFS_PID_FILE=/var/run/ipfs.pid test -x $DAEMON || exit 0 diff --git a/setup-ipfs-daemon b/setup-ipfs-daemon old mode 100644 new mode 100755 index 2470ede..2c40b08 --- a/setup-ipfs-daemon +++ b/setup-ipfs-daemon @@ -1,31 +1,71 @@ +#!/bin/bash +# Licence GPL 3 -## daemon user +##################### +## S e t t i n g s ## +##################### -#adduser ipfs -nologin -home /var/spool/ipfs/ -#GID=`id -g ipfs` -#UID=`id -u ipfs` +VERSION=0.4.13 +AIM=/usr/local/bin/ipfs + +####### ENDE ####### + +[ "`id -u`" != "0" ] && { echo run as root; exit 1; } + +################# +## daemon user ## +################# + +adduser ipfs --disabled-password --disabled-login --home /var/spool/ipfs/ --system -## init skript +################# +## init skript ## +################# cp ipfs.initd /etc/init.d/ipfs -#sed -i 's/IPFS_GID=1001/IPFS_GID=$GID/g' -#sed -i 's/IPFS_UID=1001/IPFS_UID=$GID/g' +sed -i "s/#GID#/`id -g ipfs`/g" /etc/init.d/ipfs +sed -i "s/#UID#/`id -u ipfs`/g" /etc/init.d/ipfs +chmod +x /etc/init.d/ipfs update-rc.d ipfs defaults -## install ipfs +################## +## install ipfs ## +################## -# wget ipfs_go_{arch}_{vers}.tar.gz -# tar xzf ipfs_go_{arch}_{vers}.tar.gz -# rm ipfs_go_{arch}_{vers}.tar.gz -# ./go-ipfs/install.sh -# chmod 770 `whereis -b ipfs | cut -d ":" -f 1` -# chown ipfs:ipfs `whereis -b ipfs | cut -d ":" -f 1` +# creat tmp and enter it +cd `mktemp -d` + +# select CPU architecture +ARCH=`uname -m` +case "$ARCH" in + i?86) ARCH=386 ;; + x86_64) ARCH="amd64" ;; + *arm*) ARCH="arm" ;; + *) echo ipfs for $arch not available; exit 1 ;; +esac + +#download ... +wget "https://dist.ipfs.io/go-ipfs/v"$VERSION"/go-ipfs_v"$VERSION"_linux-"$ARCH".tar.gz" + +#extract +tar xzf go-ipfs_* + +#delete old one if exit +[ -f $AIM ] && rm $AIM + +# install new +cp go-ipfs/ipfs $AIM + +#set permissions +chmod 770 $AIM +chown ipfs:ipfs $AIM ## init ipfs su ipfs -c "ipfs init" -#sed -i 's/127.0.0.1/0.0.0.0/g' /var/spool/ipfs/.ipfs/config +sed -i 's/127.0.0.1/0.0.0.0/g' /var/spool/ipfs/.ipfs/config - -service ipfs start +#go back and delete temp +cd - +rm -r `cd -`