mercredi 12 octobre 2016

installer ubooquity sur rasberry pi et utilisation nas synology


Pour gérer sa bibliothèque d'ebooks, il y a l'excellent logiciel Calibre, mais si on veut accéder à distance à sa bibliothèque d'ebooks, ce n'est pas très pratique.
La solution : avoir un logiciel qui permet de partager avec une interface web sa bibliothèque d'ebooks. C'est là qu’intervient Ubooquity ! En plus de proposer une interface web, il permet également de gérer les BDs, chose qui manque à Calibre.


Nous allons commencer par choisir le répertoire où seront stockés vos ebooks. Pour ma part, je monte un répertoire de mon Nas (en ayant au préalable autorisé le NFS sur le répertoire adéquat) sur le Raspberry Pi avec la méthode suivante :

donner accès au nas synology

sur le synology on doit donner les persmission NFS
Nas
Nas
Nas
10
nom de hôte l’ip de la raspberry
après vous aurez un nom de partage en bas de la page
image10
sur la rasp on fait ça pour le montage dans dossier /mnt par exemple
Nas
(ne pas faire attention ils ‘agit d’une interface linux mais c’est la même chose)
pour éviter de devoir monter le volume à chaque reboot on va l’ajouter au FSTAB
donc dans le terminal de la rasberry on tape:
“sudo nano /etc/fstab “
et on rajoute la ligne:
IP_NAS:/volume1/music /mnt nfs rw,user 0 0”
(volume1/music est le nom de partage nfs que j’ai repris dans le screen)
on vérifie par un reboot de la raspberry ( sudo reboot) si tout est OK. si oui on passe à l’étape suivante:

Installation de ubooquity

installation de java sur la PI
“sudo apt-get update && sudo apt-get -y install oracle-java8-jdk”
Il faut ensuite télécharger les sources d'Ubooquity, ainsi qu'un script permettant de gérer le lancement du logiciel :
mkdir ubooquity && cd ubooquity
wget http://vaemendis.net/ubooquity/downloads/Ubooquity-1.7.6.zip
unzip Ubooquity-1.7.6.zip
wget http://vaemendis.net/ubooquity/downloads/scripts/ubooquity.sh
chmod +x ubooquity.sh
Lancer Ubooquity avec la commande ./ubooquity.sh start et vérifier que l'interface est bien accessible depuis votre navigateur avec l'adresse http://IP_RASPBERRY:2202.



Pour accéder à l'interface d'administration, il faut se rendre sur l'adresse http://IP_RASPBERRY:2202/admin, et choisir un mot de passe pour y accéder ultérieurement.

solution alternative pour l'installation:

Install unzip to unpack ubooquity
sudo apt-get install unzip -y
Create the ubooquity folder
sudo mkdir -p /opt/ubooquity
Enter the ubooquity folder
cd /opt/ubooquity
Grab the latest ubooquity package
sudo wget "http://vaemendis.net/ubooquity/service/download.php" -O ubooquity.zip
sudo unzip ubooquity*.zip
sudo rm ubooquity*.zip
Change ownership of the ubooquity folder to avoid permission issues
sudo chown -R pi:pi /opt/ubooquity
Start ubooquity in headless mode since we aren’t relying on a gui and enable administration, you can change the port as well by adding -port portnumber at the end
sudo java -jar /opt/ubooquity/Ubooquity.jar -adminport 2022 -headless -remoteadmin -libraryport 2023

démarrer automatiquement ubooquity au démarrage de la pi

on va créé un Ubooquity init.d script
sudo nano /etc/init.d/ubooquity”
on copie colle
#!/bin/sh
### BEGIN INIT INFO
# Provides:          Ubooquity
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Ubooquity
# Description:       Ubooquity for ebook management
### END INIT INFO


# Documentation available at
# http://refspecs.linuxfoundation.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/iniscrptfunc.html
# Debian provides some extra functions though
. /lib/lsb/init-functions

export UBOOQUITY_HOME=/opt/ubooquity
DAEMON_NAME="Ubooquity"
DAEMON_USER=root
DAEMON_PATH="/usr/bin/java"
DAEMON_OPTS="-jar /opt/ubooquity/Ubooquity.jar -adminport 2022 -headless -remoteadmin -libraryport 2023"
DAEMON_PWD="/opt/ubooquity"
DAEMON_DESC=$(get_lsb_header_val $0 "Short-Description")
DAEMON_PID="/var/run/${DAEMON_NAME}.pid"
DAEMON_NICE=0
DAEMON_LOG='/var/log/cherrymusic'

[ -r "/etc/default/${DAEMON_NAME}" ] && . "/etc/default/${DAEMON_NAME}"

do_start() {
  local result

pidofproc -p "${DAEMON_PID}" "${DAEMON_PATH}" > /dev/null
if [ $? -eq 0 ]; then
log_warning_msg "${DAEMON_NAME} is already started"
result=0
else
log_daemon_msg "Starting ${DAEMON_DESC}" "${DAEMON_NAME}"
touch "${DAEMON_LOG}"
chown $DAEMON_USER "${DAEMON_LOG}"
chmod u+rw "${DAEMON_LOG}"
if [ -z "${DAEMON_USER}" ]; then
start-stop-daemon --start --quiet --oknodo --background \
--nicelevel $DAEMON_NICE \
--chdir "${DAEMON_PWD}" \
--pidfile "${DAEMON_PID}" --make-pidfile \
--exec "${DAEMON_PATH}" -- $DAEMON_OPTS
result=$?
else
start-stop-daemon --start --quiet --oknodo --background \
--nicelevel $DAEMON_NICE \
--chdir "${DAEMON_PWD}" \
--pidfile "${DAEMON_PID}" --make-pidfile \
--chuid "${DAEMON_USER}" \
--exec "${DAEMON_PATH}" -- $DAEMON_OPTS
result=$?
fi
log_end_msg $result
fi
return $result
}

do_stop() {
local result

pidofproc -p "${DAEMON_PID}" "${DAEMON_PATH}" > /dev/null
if [ $? -ne 0 ]; then
log_warning_msg "${DAEMON_NAME} is not started"
result=0
else
log_daemon_msg "Stopping ${DAEMON_DESC}" "${DAEMON_NAME}"
killproc -p "${DAEMON_PID}" "${DAEMON_PATH}"
result=$?
log_end_msg $result
rm "${DAEMON_PID}"
fi
return $result
}

do_restart() {
local result
do_stop
result=$?
if [ $result = 0 ]; then
do_start
result=$?
fi
return $result
}

do_status() {
local result
status_of_proc -p "${DAEMON_PID}" "${DAEMON_PATH}" "${DAEMON_NAME}"
result=$?
return $result
}

do_usage() {
echo $"Usage: $0 {start | stop | restart | status}"
exit 1
}

case "$1" in
start)   do_start;   exit $? ;;
stop)    do_stop;    exit $? ;;
restart) do_restart; exit $? ;;
status)  do_status;  exit $? ;;
*)       do_usage;   exit  1 ;;
esac”

rendre le script exécutable:
sudo chmod +x /etc/init.d/ubooquity”
dire au système de le mettre en auto démarrage
sudo update-rc.d ubooquity defaults”
et faire un reboot de la pi
“sudo reboot”












1 commentaire:

  1. Bonjour, je cherche désespérément de l'aide pour installer Ubooquity sur mon NAS Ds418play sous DSM 6.2.1. Je ne connais pas le langage Java. J'ai suivi le tuto (qui est pourtant très bien fait) https://vaemendis.github.io/ubooquity-doc/pages/tutorials/install-on-synology.html
    Mais je dois faire une erreur quelque part.
    Dans le tuto un moment il est dit : NOTE if Java8 is used

    If you used Synology Java8 package instead of Java Manager then the service script will have the wrong path to the java binary. Edit the /etc/init/ubooquity.conf and change path to java binary from:

    exec /var/packages/JavaManager/target/Java/bin/java -jar -Xmx1024m /var/packages/Ubooquity/Ubooquity.jar -port 2202 -webadmin -workdir "/volume1/Comics/Ubooquity"

    to

    exec /var/packages/Java8/target/j2sdk-image/bin/java -jar -Xmx1024m /var/packages/Ubooquity/Ubooquity.jar -port 2202 -webadmin -workdir "/volume1/Comics/Ubooquity"

    Et là vraiment je sèche, je ne sais vraiment pas ce que ça signifie.

    ou alors dans l'option 2 il est écrit : adapt the script to your environment and save it as ubooquity.sh on your server.

    Et là pareil, je ne connais pas du tout le langage Java, donc j'ai pas la moindre idée de ce qu'il faut faire... Si quelqu'un pouvait m'expliquer un peu ce serait formidable, vraiment, Merci d'avance !!

    RépondreSupprimer