Witaj na Forum Linuxiarzy
Zanim zalogujesz się, by pisać na naszym forum, zapoznaj się z kilkoma zasadami savoir-vivre'u w dziale Administracja.
Wiadomości z problemami zamieszczone w wątku "Przywitaj się" oraz wszelkie reklamy na naszym forum będą usuwane.

Budowanie NAS

Zaczęty przez sebekoo, Luty 03, 2019, 02:02:52 PM

Poprzedni wątek - Następny wątek

sebekoo

W sumie masz rację.
To jeszcze tylko zmodyfikujemy skrypty aby zyxel się wyłączał po backup-ie

Wyłączenie Zyxela następuje po wydaniu komendy jako root: poweroff lub jako admin: sudo poweroff

TataPingu

Cytat: sebekoo w Kwiecień 01, 2019, 01:41:21 PM
Wyłączenie Zyxela następuje po wydaniu komendy jako root: poweroff lub jako admin: sudo poweroff

:D, to jasne !
- chodzi o to, czy próbowałeś to zdalnie, t.j. przez ssh ?

Np.:
ssh root@server 'shutdown -h now'

A może Zyxel przewidział/wbudował jakiś inny sposób ?

sebekoo

#332
ssh root@192.168.1.12 'poweroff'
Ta komenda wyłączyła zyxel

poweroff --help
BusyBox v1.17.2 (2017-06-23 10:40:08 CST) multi-call binary.

Usage: poweroff [-d DELAY] [-n] [-f]

root@NSA325-v2:~#

TataPingu

#333
Cytat: sebekoo w Kwiecień 01, 2019, 03:18:44 PM
ssh root@192.168.1.12 'poweroff'
Ta komenda wyłączyła zyxel

Więc w skrypcie wylaczenie.sh.PO_BACKUPIE zmień poniższe:

if [ $NUMCLIENTS -le $MINCLIENTS ]; then
    if [ ! -f "$STATUSFILE" ]; then
        echo "COUNT=$RETRIES" > $STATUSFILE
    fi
    . $STATUSFILE
    if [ $COUNT -le $MINCLIENTS ]; then
#
cp /usr/local/bin/wylaczenie.sh.DZIENNE /usr/local/bin/wylaczenie.sh
sleep 1s
echo "Spadamy...."
shutdown -h now;
#
    else
        let COUNT=$COUNT-1
        echo "COUNT=$COUNT" > $STATUSFILE
    fi;
else
    if [ -f "$STATUSFILE" ]; then
        rm $STATUSFILE
    fi


zmień na:


if [ $NUMCLIENTS -le $MINCLIENTS ]; then
    if [ ! -f "$STATUSFILE" ]; then
        echo "COUNT=$RETRIES" > $STATUSFILE
    fi
    . $STATUSFILE
    if [ $COUNT -le $MINCLIENTS ]; then
#
cp /usr/local/bin/wylaczenie.sh.DZIENNE /usr/local/bin/wylaczenie.sh
sleep 1s
                umount -f -l /Backup/BackupZYXEL
sleep 1s
                ssh root@192.168.1.12 poweroff
sleep 1s
echo "Spadamy...."
shutdown -h now;
#
    else
        let COUNT=$COUNT-1
        echo "COUNT=$COUNT" > $STATUSFILE
    fi;
else
    if [ -f "$STATUSFILE" ]; then
        rm $STATUSFILE
    fi


Powinno działać...
- oczywiście, przetestuj jeszcze...

sebekoo

#334
Wyłączyłem wszystkie urządzenia w sieci (z zakresu) i serwer nie wykonał żadnej reakcji:
- nie wyłączył się,
- nie uruchomił Zyxela w celu wykonaniu backup-a
- nie zrobił backup-a

Teraz plik wylacznie.sh wygląda następująco:
#!/bin/bash
#
# ok. 2013 Bogdan (TataPingu z https://linuxiarze.pl)
# /usr/local/bin/wylaczenie.sh
# Wylaczenie.sh

###
# CONFIG
###

# Filename of the statusfile
STATUSFILE="/tmp/wylaczenie-status"

# which ip range should be checked?
# this example looks in "192.168.5.10 to 192.168.5.30"
# and "192.168.178.20 to 192.168.178.30"
#RANGE="192.168.1.178.10-30"
#MOJE - np u mnie wszystkie IP pomiedzy 192.168.2.1 i 192.168.2.9
RANGE="192.168.1.12-50"
#RANGE="192.168.2.1" # - pojedynczy

# how many clients are always on (other servers, routers, etc)
MINCLIENTS=0

# shutdown after how many retries?
RETRIES=2

###
# END CONFIG
###

NUMCLIENTS=`nmap -sP $RANGE -oG - | grep "^Host" | wc -l`

if [ $NUMCLIENTS -le $MINCLIENTS ]; then
    if [ ! -f "$STATUSFILE" ]; then
        echo "COUNT=$RETRIES" > $STATUSFILE
    fi
    . $STATUSFILE
    if [ $COUNT -le $MINCLIENTS ]; then
                #----- w tym miejscu dojdzie RSYNC_BACKUP_SERVER
                ##################/usr/local/bin/./rsync_backup_server
                ##################exit 0
                #----- w tym miejscu dojdzie RSYNC_BACKUP_SERVER
                #
                #----- gdy dojdzie RSYNC_BACKUP_SERVER -> DO ZAMKNIECIA
        echo "Shutdown, kolego (my dear)..."
        shutdown -h now;
        #----- gdy dojdzie RSYNC_BACKUP_SERVER -> DO ZAMKNIECIA
    else
        let COUNT=$COUNT-1
        echo "COUNT=$COUNT" > $STATUSFILE
    fi;
else
    if [ -f "$STATUSFILE" ]; then
        rm $STATUSFILE
    fi
fi


Uprawnienia pliku 755 root
Edit
już wiem dlaczego
jak zmieniłem zakres to serwer wszedł w zakres pomiarowy aktywnych hostów

pytanie zakres

# which ip range should be checked?
# this example looks in "192.168.5.10 to 192.168.5.30"
# and "192.168.178.20 to 192.168.178.30"
#RANGE="192.168.1.178.10-30"
#MOJE - np u mnie wszystkie IP pomiedzy 192.168.2.1 i 192.168.2.9
RANGE="192.168.1.12-50"
#RANGE="192.168.2.1" # - pojedynczy


mogę tak zmodyfikować (patrz ostatnia linia) pojedynczy IP

# which ip range should be checked?
# this example looks in "192.168.5.10 to 192.168.5.30"
# and "192.168.178.20 to 192.168.178.30"
#RANGE="192.168.1.178.10-30"
#MOJE - np u mnie wszystkie IP pomiedzy 192.168.2.1 i 192.168.2.9
RANGE="192.168.1.21-50"
RANGE="192.168.1.12" # - pojedynczy

TataPingu

Jeśli serwer jest 192.168.1.12, to po prostu zakres ustaw na:
RANGE="192.168.1.13-50"

W którymś momencie już wspominałem, że IP serwera musi być POZA ZAKRESEM...

sebekoo

#336
Tak przypominam sobie ale po czasie jak coś nie gra
serwer 192.168.1.13
zyxel 192.168.1.12

Dobra zmienię konfigurację
zyxel na 192.168.1.20
serwer192.68.1.19
Tylko to wiąże się ze zmianą we wszystkich skryptach, ruterze i zyxelu

Tylko w tych skryptach muszę pozmieniać
/usr/local/bin/

TataPingu

Cytat: sebekoo w Kwiecień 01, 2019, 07:40:54 PM
Tak przypominam sobie ale po czasie jak coś nie gra
serwer 192.168.1.13
zyxel 192.168.1.12

Dobra zmienię konfigurację
zyxel na 192.168.1.20
serwer192.68.1.19
Tylko to wiąże się ze zmianą we wszystkich skryptach, ruterze i zyxelu

Tylko w tych skryptach muszę pozmieniać
/usr/local/bin/

Przecież to nie problem, dopasować kilka plików...
- jedynie, to przemyśl sobie to gruntownie, np. router ma 192.68.1.1, to serwer robię na 192.68.1.2 i pozostały zakres mam do dyspozycji (np. RANGE="192.168.1.3-50")

sebekoo

Cytat: TataPingu w Kwiecień 01, 2019, 08:22:27 PM

Przecież to nie problem, dopasować kilka plików...
- jedynie, to przemyśl sobie to gruntownie, np. router ma 192.68.1.1, to serwer robię na 192.68.1.2 i pozostały zakres mam do dyspozycji (np. RANGE="192.168.1.3-50")
Problem to nie jest żaden.
Słuszna uwaga z tym IP

sebekoo

#339
Raport, co sprawdziłem.
Serwer włączony
Zyxel wyłączony
Po odłączeniu wszystkich hostów (z zakresu), serwer uruchomił Zyxel-a.
Po uruchomieniu Zyxel-a, serwer pod-montował udostępniony zasób.
Backup się wykonywał.

Czy wykonał się do końca, (nie wiem jak to można sprawdzić)
Fakt jest taki że w Zyxel-u dyski przestały (po czasie) pracować (było słychać usypianie), i oba urządzenia pozostały włączone.
Gdy wyłączyłem Zyxel-a "manualnie z przycisku" - serwer po 6 minutach wyłączył się.

Podsumowanie:
Muszę jeszcze raz sprawdzić komendę rsync (manualnie)czy działa prawidłowo, a następnie proces wyłączenie Zyxel-a przez serwer.
Prawdopodobnie rsync nie ukończył swego działania i dlatego nie doszło do wyłączenia Zyxel-a, ewentualnie nie zadziałała komenda "poweroff"
W /Backup/RsyncTMP nie było widać żadnego pliku w tym momencie

Pytanie co do procesu rsync-a uruchomionego przez skrypt.
Czy jest możliwość podglądu wykonywanej pracy w terminalu (w tym znaczeniu jak wydaje manualnie polecenie rsync.... to widzę co w danej chwili wykonuje.


TataPingu

#340
Cytat: sebekoo w Kwiecień 02, 2019, 07:29:29 AM
Czy wykonał się do końca, (nie wiem jak to można sprawdzić)
Prawdopodobnie wszystko OK, a sprawdzisz w logach (w pliku informacyjnym zdanie powinno być zakończone słowem "pomyślnie")...
Ewentualnie dla testu stwórz jakiś plik testowy (np. testbackupa.txt) pod którymkolwiek z katalogów na serwerze, odczekaj cały "proces", potem włącz wszystko na nowo i sprawdź po prostu na Zyxelu, czy plik tam się znajduje..
- następny test, to zlikwiduj ten plik znowu na serwerze, odczekaj "proces" i po ponownym załączeniu całości pliku nie powinno być na Zyxelu

Cytat: sebekoo w Kwiecień 02, 2019, 07:29:29 AM
Gdy wyłączyłem Zyxel-a "manualnie z przycisku" - serwer po 6 minutach wyłączył się.
Ponieważ Zyxel również powinien być poza naszym zakresem (np router 192.68.1.1, serwer 192.68.1.2, Zyxel 192.68.1.3, a RANGE="192.168.1.4-50")...
- nie pomyślałem o tym, by to podkreślić, a przecież to logiczne, jeśli Zyxel znajduje się w "zakresie", to serwer się nie wyłączy...
I to (i tylko to!) jest przyczyną ostatnich "zakłóceń"...

Cytat: sebekoo w Kwiecień 02, 2019, 07:29:29 AM
Muszę jeszcze raz sprawdzić komendę rsync (manualnie)czy działa prawidłowo, a następnie proces wyłączenie Zyxel-a przez serwer.
Prawdopodobnie rsync nie ukończył swego działania i dlatego nie doszło do wyłączenia Zyxel-a, ewentualnie nie zadziałała komenda "poweroff"
W /Backup/RsyncTMP nie było widać żadnego pliku w tym momencie

Nie mieszaj już nic oprócz tego, co napisałem o "zakresie"...
- katalog znajduje się na ssd, dlatego nic nie "zauważasz" (dysk jest na tyle szybki)...

Cytat: sebekoo w Kwiecień 02, 2019, 07:29:29 AM
Pytanie co do procesu rsync-a uruchomionego przez skrypt.
Czy jest możliwość podglądu wykonywanej pracy w terminalu (w tym znaczeniu jak wydaje manualnie polecenie rsync.... to widzę co w danej chwili wykonuje.

Chłopie, zastanów się trochę !
- jeśli na serwerze zmieniło się kilka/kilkanaście plików, to co Ty chcesz "podglądać" !?

Przecież rsync zmieni/uzupełni/zlikwiduje na Zyxelu TYLKO TE PLIKI !
- resztę pozostawi bez zmian i w gruncie rzeczy proces backupa nie potrwa dłużej, niż kilka/kilkanaście sekund...

Dopisek
- jeśli chcesz "zobaczyć", że "coś jest robione", to zlikwiduj wszystko na Zyxelu, a backup robiony będzie od początku i potrwa ileś tam godzin! (jak, za pierwszym kopiowaniem)...

sebekoo

Rsync wykonał się cały poprawnie - odczytałem z log
Sprawdziełm komende
sebek@ubuntu_server:~$ ssh root@192.168.1.20 poweroff
root@192.168.1.20's password:

wymagane jest hasło

TataPingu

#342
Cytat: sebekoo w Kwiecień 02, 2019, 04:57:45 PM
Sprawdziełm komende
W jakim celu?
- poza tym, przeprowadź wszystkie kroki, tak, jak to opisałem (włącznie z odpowiednim dopasowaniem IP, t.j. Zyxel poza "strefą")

Dopisek
- a cóż to tak zamilkłeś Kolego, jakieś problemy z serwerem ?

TataPingu

Brak czasu, czy rezygnacja ?

sebekoo

#344
Walczę z DMZ ale nie daje rady chyba sprzęt. Więc muszę zrezygnować z DMZ
Bez DMZ musimy robic dalej
Czyli
Cytat: TataPingu w Kwiecień 02, 2019, 07:45:57 PM
Cytat: sebekoo w Kwiecień 02, 2019, 04:57:45 PM
Sprawdziełm komende
W jakim celu?
- poza tym, przeprowadź wszystkie kroki, tak, jak to opisałem (włącznie z odpowiednim dopasowaniem IP, t.j. Zyxel poza "strefą")
Tego nie da rady zrobić
Ip zmieniłem
Pod konsolą sprawdzałem i brakuje hasła do zyxela aby ssh komenda zadziałała

Nie przyszło powiadomienie na e-mail że ktoś odpowiedział więc nie wchodziłem

Zobacz najnowsze wiadomości na forum