Come creare un YSF REFLECTOR MONOFLUSSO
Il seguente howto descrive rapidamente l'installazione e la configurazione di
un sistemaInstallazione Automatica Se stai usando una distribuzione Debian Linux, puoi provare il seguente
bash install.sh
script di installazione: download install.sh (fai clic con il pulsante
destro del mouse e installa o scarica tramite wget sulla console).
Dopo aver scaricato il file nella tua directory utente, assicurati
di avere i pacchetti git e build-essential installati sul tuo sistema.
Dopotutto, eseguilo conTi verrà chiesto il nome e la descrizione del tuo riflettore e quindi
sudo /etc/init.d/YSFReflector.sh start
tutto verrà installato automaticamente.
Devi solo avviare il riflettore eseguendo il seguente comando:Manual Installation
Prima di tutto dovrai ottenere una copia dei sorgenti.
git clone https://github.com/g4klx/YSFClients.git
Si consiglia di farlo con git come segue:
Questo copia i sorgenti effettivi dell'intero progetto YSFClients in
make clean all
una cartella "YSFClients". All'interno di questa directory troverai
una cartella "YSFReflector". cd in esso e semplicemente faiUn minuto dopo il processo di compilazione è terminato e hai un file
eseguibile "YSFReflector". All'interno della directory hai anche un YSFReflector.ini che devi
personalizzare in base alle tue esigenze. Compila qui di seguito:Name=Your Reflector's name
Description=Your Reflector's description
C'è anche una linea
Daemon=1che forza l'eseguibile del riflettore a funzionare come demone dopo l'avvio.
Per questo dovrai configurare un utente "mmdvm" sul tuo sistema Linux.
Questo può essere fatto con:sudo groupadd mmdvm
sudo useradd mmdvm -g mmdvm -s /sbin/nologin
Ora assicurati che l'utente mmdvm abbia i permessi di scrittura
sudo chown mmdvm /var/log/YSFReflector
sulla directory di log fornita nel file ini. Puoi farlo conse la directory log sarebbe /var/log/YSFReflector
Come ultima istanza di installazione, potresti voler avviare
/etc/init.d/YSFReflector.sh
automaticamente i servizi all'avvio del tuo server.
Quindi avrai bisogno di uno script di avvio. Il mio èe ha i seguenti contenuti:
#!/bin/bash ### BEGIN INIT INFO # # Provides: YSFReflector # Required-Start: $all # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Example startscript YSFReflector # ### END INIT INFO ## Fill in name of program here. PROG="YSFReflector" PROG_PATH="/usr/local/bin/" PROG_ARGS="/etc/YSFReflector.ini" PIDFILE="/var/run/YSFReflector.pid" USER="root" start() { if [ -e $PIDFILE ]; then ## Program is running, exit with error. echo "Error! $PROG is currently running!" 1>&2 exit 1 else cd $PROG_PATH ./$PROG $PROG_ARGS echo "$PROG started" touch $PIDFILE fi } stop() { if [ -e $PIDFILE ]; then ## Program is running, so stop it echo "$PROG is running" rm -f $PIDFILE killall $PROG echo "$PROG stopped" else ## Program is not running, exit with error. echo "Error! $PROG not started!" 1>&2 exit 1 fi } ## Check to see if we are running as root first. ## Found at ## http://www.cyberciti.biz/tips/shell-root-user-check-script.html if [ "$(id -u)" != "0" ]; then echo "This script must be run as root" 1>&2 exit 1 fi case "$1" in start) start exit 0 ;; stop) stop exit 0 ;; reload|restart|force-reload) stop sleep 5 start exit 0 ;; **) echo "Usage: $0 {start|stop|reload}" 1>&2 exit 1 ;; esac exit 0 ### ENDDopo aver creato lo script, rendilo eseguibile con il seguente comando:
sudo chmod +x /etc/init.d/YSFReflector.shCome puoi vedere nella parte superiore dello script, il mio binario si
sudo chkconfig YSFReflector.sh on
trova in /usr/local/bin (dove l'ho copiato dopo la compilazione) e il mio
YSFReflector.ini è in /etc Fallo in modo simile per essere in standard. Per abilitare il servizio è sufficiente chiamareQuindi tutto sarebbe iniziato all'avvio. Spero che tu possa seguire tutti i passaggi. Si consiglia di eseguirli
come root :-) Una parola per finale: ogni modifica (rilevante per il sistema)
apportata (ad esempio nome o descrizione) viene aggiornata automaticamente
nel database di registrazione tramite il meccanismo di polling ogni 5 minuti.
Se desideri modificare il nome host/l'indirizzo IP o il numero di porta,
puoi farlo in modalità self-service dopo aver effettuato l'accesso.Risoluzione dei problemi Nonostante l'esecuzione di un YSFReflector utilizzando l'installazione-howto
ps ax | grep YSFReflector
sopra sarebbe molto semplice, potrebbero esserci dei problemi nel portarlo
online. Se hai difficoltà a trovare il tuo riflettore online dopo 20 minuti
dall'avvio, potrebbero esserci dei problemi da controllare: controlla se ci sono alcune regole del firewall che vietano il traffico
verso UDP 42000 da Internet controlla se il processo è in esecuzione con:Questo dovrebbe far apparire due processi. In caso contrario,
Cosa molto importante se al riavvio del server cloud lo YSF
il riflettore non è in funzione. se il riflettore non è in funzione, controlla il file di registro,
cosa succede lì.
non dovesse partire digitare quanto segue:
Per far partire l' YSF REFLECTOR dopo il riavvio
/etc/init.d/YSFReflector.sh start