Publicado por Angel
Tags: , Antergos , PC , Raspberry , instalación , podcast , syncthing , ubuntu ,
| Suscribete al Blog | RSS del Blog |
| Suscribete al Podcast | RSS | ITunes | ivoox |
Your browser does not support the audio element.
En el siguiente post os explicaré como instalar Syncthing en Ubuntu, Antergos o Raspberry Pi.
Como explico en el audio, Syncthing no solo sincroniza carpetas entre dispositovos, servidores, etc… Si no que además, podremos hacer esta sicronización con la sencillez de no tener que abrir puertos y creando backups de versiones de todos los archivos, decidiendo el numero de versiones que queremos que se creen tanto en un dispositivo, como en otro.
Vamos con la instalación en los diferente dispositivos:
Antergos
sudo pacman -S syncthing syncthing-gtk
Ubuntu, Raspbian o derivadas de debian
Añadimos el repositorio
curl -s https://syncthing.net/release-key.txt | sudo apt-key add -
sudo echo "deb http://ift.tt/1NxLqvJ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list
Actualizamos los repositorio y comenzamos la instalación
sudo apt-get update
sudo apt-get install syncthing
Ahora ya podemos lanzar la aplicación
syncthing
Se abrirá nuestro navegador automáticamente o lo abriremos nosotros, y para acceder a la interfaz web escribiremos localhost:8384
Hasta aquí, el proceso de instalación es igual en todas las distros derivadas de debian. Para que Syncthing se inicie cada vez que arranquemos el sistema operativo, escribimos en la terminal:
systemctl --user enable syncthing.service
Reiniciamos y comprovamos el estado con:
systemctl --user status syncthing.service
Si da error:
sudo systemctl start service
Si estamos utilizando Raspbian Lite, la terminal nos devolverá un error, ya que el método para que inicie cada vez que reiniciemos nuestra Raspberry Pi es diferente.
Raspbian Lite
Lo primero que debemos hacer, si queremos acceder desde otro dispositivo a la interfaz web de Syncthing, dentro de nuestra red local, es editar un archivo de configuración mediante SSH.
Introduciremos esta línea en la Terminal y añadiremos la ip de nuestra Raspberry Pi, en lugar de 127.0.0.1.
sudo nano ~/.config/syncthing/config.xml
Cambiamos aquí la ip
<gui enabled="true" tls="false">
<address>127.0.0.1:8384</address>
</gui>
Ahora creamos un script:
sudo nano /etc/init.d/syncthing
Copiamos esto:
#!/bin/sh
### BEGIN INIT INFO
# Provides: Syncthing
# 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: Syncthing
# Description: Syncthing is for backups
### END INIT INFO
# Documentation available at
# http://ift.tt/1IC6M8t
# Debian provides some extra functions though
. /lib/lsb/init-functions
DAEMON_NAME="syncthing"
DAEMON_USER=pi
DAEMON_PATH="/usr/bin/syncthing"
DAEMON_OPTS=""
DAEMON_PWD="${PWD}"
DAEMON_DESC=$(get_lsb_header_val $0 "Short-Description")
DAEMON_PID="/var/run/${DAEMON_NAME}.pid"
DAEMON_NICE=0
DAEMON_LOG='/var/log/syncthing'
[ -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
Damos poderes de ejecución
sudo chmod +x /etc/init.d/syncthing
Habilitamos que inicie cada vez que reiniciemos
sudo update-rc.d syncthing defaults
Ahora podemos iniciar así
sudo service syncthing start
/**
* RECOMMENDED CONFIGURATION VARIABLES: EDIT AND UNCOMMENT THE SECTION BELOW TO INSERT DYNAMIC VALUES FROM YOUR PLATFORM OR CMS.
* LEARN WHY DEFINING THESE VARIABLES IS IMPORTANT: http://ift.tt/2iw9uDv
/*
var disqus_config = function () {
this.page.url = PAGE_URL; // Replace PAGE_URL with your page’s canonical URL variable
this.page.identifier = PAGE_IDENTIFIER; // Replace PAGE_IDENTIFIER with your page’s unique identifier variable
};
*/
(function() { // DON’T EDIT BELOW THIS LINE
var d = document, s = d.createElement(‘script’);
s.src = ‘http://ift.tt/2p6Qmft’;
s.setAttribute(‘data-timestamp’, +new Date());
(d.head || d.body).appendChild(s);
})();
Please enable JavaScript to view the comments powered by Disqus.
//https-angelbcn-github-io-ugeek.disqus.com/count.js
<img src="http://ift.tt/2pJ9jc3" height="1" width="1" alt="" /><br><br>
uGeek http://ift.tt/2p6CbqI
