Instruktaż/Tutorial Natywny Debian Squeeze (równoległy Debian z odrębnym SSH i rtorrent) dla platformy ARM

Status
Brak możliwości dodawania odpowiedzi.

Silas Mariusz

rm -rf /
Help us, GOD!
5 Kwiecień 2008
10 352
34
2 787
153
40
Nowy Sącz
forum.qnap.net.pl
QNAP
TS-x77
Ethernet
1 GbE
Natywny, czyli równolegle/jednocześnie działający
Debian Squeeze+Wheezy
na serwerach QNAP NAS opartych o platformę ARM
kontrolowany z Centrum Aplikacji (App Center)

(ARMel series, QNAP NAS model: TS-x12/x19/x20/x21)

- przewodnik instalacji -
2013, Silas Mariusz


[Notki informacyjne]
1 Natywna instalacja nie pozbawia użytkownika oryginalnego systemu QTS4 - dwa systemy pracują jednocześnie.
2 Na Debianie domyślnie uruchamia się odrębne SSH na porcie 2202 z użytkownikiem 'root' oraz rtorrent z interfejsem użytkownika do zarządzania nim na porcie 8808.


[Instalacja]
Wykonaj poniższe 4 punkty, aby zainstalować natywnego Debiana:
  1. Utwórz udział sieciowy o nazwie 'debpool' na pierwszym woluminie dysku. (HDA_DATA - pojedynczy dysk; lub MD0_DATA - w konfiguracji RAID).
  2. Wymagany jest udział sieciowy 'Download'. A więc jeśli w Twoim serwerze domyślne udziały sieciowe mają prefiks Q (np. 'Qdownload'), to utwórz udział sieciowy o nazwie 'Download'.
  3. Za pomocą klienta SSH (np. PuTTY) zaloguj się na serwer i wykonaj poniższe:
    Bash:
    # Utworz katalog tymczasowy
    mkdir -p /share/Public/debby
    cd /share/Public/debby
    
    # Pobierz Debian (armel) QNAP TurboNAS
    wget http://pool.qnapclub.pl/projects/packages/debian/native/armel/debiansqueezenwheezy.tar.gz
    tar zxvf debiansqueezenwheezy.tar.gz
    rm -f debiansqueezenwheezy.tar.gz
    
    # Przenies Debiana do udzialu sieciowego debpool
    mv debpool/squeeze /share/debpool/
    
    # Znajdz katalog w ktorym przechowywane sa paczki qpkg
    publicdir=`/sbin/getcfg Public path -f /etc/config/smb.conf`
    qpkgdir=`cd $publicdir && cd ../.qpkg/ && pwd`
    
    # Przenies program kontrolny Debiana w miejsce paczek
    mv .qpkg/debian6 $qpkgdir
    
    # Wykasuj katalog tymczasowy
    cd ..
    rm -rf debby
    
    # Podlinkuj skrypty
    ln -sf $qpkgdir/debian6/debian6.sh /etc/init.d/debian6.sh
    ln -sf $qpkgdir/debian6/debian6.sh /etc/rcS.d/QS101debian6
    ln -sf $qpkgdir/debian6/debian6.sh /etc/rcK.d/QK101debian6
    
    # Dodaj program uruchamiajacy Debiana do aplikacji zainstalowanych
    export PATH="$PATH:/sbin"
    qpkgconf=/etc/config/qpkg.conf
    setcfg debian6 Name debian6 -f $qpkgconf
    setcfg debian6 Version "6.0.7" -f $qpkgconf
    setcfg debian6 Author "Silas Mariusz" -f $qpkgconf
    setcfg debian6 QPKG_File "debian6.qpkg" -f $qpkgconf
    setcfg debian6 Date "2013-09-03" -f $qpkgconf
    setcfg debian6 Shell "$qpkgdir/debian6/debian6.sh" -f $qpkgconf
    setcfg debian6 Install_Path "$qpkgdir/debian6" -f $qpkgconf
    setcfg debian6 WebUI "/" -f $qpkgconf
    setcfg debian6 Enable FALSE -f $qpkgconf
    
    # Przekopiuj ikony Debiana do systemu
    cp -af $qpkgdir/debian6/.qpkg_icon.gif /home/httpd/RSS/images/debian6.gif
    cp -af $qpkgdir/debian6/.qpkg_icon_80.gif /home/httpd/RSS/images/debian6_80.gif
    cp -af $qpkgdir/debian6/.qpkg_icon_gray.gif /home/httpd/RSS/images/debian6_gray.gif
    
    # Utworz niezbedne katalogi dla rtorrenta
    RTBASE="/share/Download/rtorrent"
    mkdir -p $RTBASE/complete $RTBASE/downloads $RTBASE/watch
    mkdir -p $RTBASE/temp $RTBASE/session $RTBASE/logs
    mkdir -p $RTBASE/unpack $RTBASE/settings $RTBASE/settings/torrents
    
    # Ustaw w Debianie haslo dla systemowego uzytkownikowi root (SSH, RDP, ...)
    # -- o haslo zostaniesz zapytany
    chroot /share/debpool/squeeze passwd root
    
    # Przelacz status wlaczenia (Enable) aplikacji na TRUE
    /etc/init.d/debian6.sh enable
    
    # To juz koniec. Uruchom Debiana :)
    /etc/init.d/debian6.sh start
    # Enjoy!
  4. Uruchom kolejną sesje PuTTY i zaloguj się ponownie na serwer NAS, ale tym razem już do środowiska Debiana. Port SSH Debiana to 2202.
  5. Z konsoli wpisz poniższe polecenia, aby zainstalować X Window System i Gnome - czyli pulpit
    Bash:
    # aktualizacja repozytorium paczek
    aptitude update
    
    # Instalacja X Window System i Gnome
    aptitude install xfonts-100dpi xfonts-100dpi-transcoded xfonts-75dpi xfonts-75dpi-transcoded xfonts-base
    aptitude install gnome-desktop-environment
    
    # Instalacja xrdp
    
    # Uruchom xrdp
    service xrdp start

[Notki poinstalacyjne]
1 Aby zalogować się na konsolę Debian Squeeze, za pomocą PuTTY lub innego klienta SSH, zaloguj się na port 2202 przy użyciu nazwy użytkownika 'root' oraz ustalonego hasła w punkcie 4.

2 Będać zalogowanym na shell Debiana, nie zapomnij zsynchronizować jego listy pakietów z repozytorium
Bash:
apt-get update   #aktualizacja listy pakietow
dpkg -l | more   #wyswietla liste zainstalowanych pakietow

3 Język w konsoli zmienisz za pomocą polecenia
Bash:
dpkg-reconfigure locales

4 Interfejs rtorrent'a jest postawiony na serwerze lighttpd pracujący na porcie 8808. Uruchom przeglądarkę i wprowadź adres:
Kod:
http://IP_of_QNAP_ARM_NAS:8808/rutorrent/

[Rozwiązywanie problemów]
  • Nie można zalogować się do Debiana za pomocą SSH!
Bash:
# Jeśli podczas próby logowania dostałeś komunikat: "Connection refused" może to pomóc
# Najpierw zaloguj się serwera QNAP za pomocą SSH,
# dokładnie tak samo jak była robiona instalacja
# przejdź do środowiska debiana
chroot /deb/squeeze

# uruchom ponownie usługe ssh
/etc/init.d/ssh restart

# sprawdź status uslugi
/etc/init.d/ssh status

# od tego momentu SSH powinno wpuścić
# referencyjnie: cat /env.init | grep ssh - jeśli zwróci napis #ssh to trzeba skasować #
# żeby odblokować usługę, jeśli zwróciło samo ssh to jest OK.

[Ciekawostka/Sugestia]
Możesz też zainstalować serwer VNC, odpalić X'y (czyli okna np. Gnome, XFCE, KDE, itp) i połączyć się na nie jak na zdalny pulpit za pomocą klienta VNC.
Bash:
apt-get install gnome-desktop-environment
apt-get install gnome-core
apt-get install xfonts-100dpi
apt-get install xfonts-100dpi-transcoded
apt-get install xfonts-75dpi
apt-get install xfonts-75dpi-transcoded
apt-get install xfonts-base
apt-get install tightvncserver
tightvncserver :1 # uruchomienie serwera VNC
tightvncserver -kill :1 # zatrzymanie serwera VNC
Lista pakietów(aplikacji), które można zainstalować poleceniem apt-get:

Przydatne linki:
debian vnc server vnc client - Installation and Configuration
[Linux] Setting Up a Debian VNC Server (via SSH tunnel) | ÏNCΘMPLΞTΞ-NΘΘZ _incomplete-news_

--------------------------
Uruchomienie XRDP pod Debianem:

Doinstalować:
Bash:
aptitude update
aptitude install xfonts-100dpi xfonts-100dpi-transcoded xfonts-75dpi xfonts-75dpi-transcoded xfonts-base
aptitude install gnome-desktop-environment xrdp

Po tym wszystkim powinna włączyć się sama usługa xRDP a gdyby nie zadziałała to należy ją włączyć:
Bash:
service xrdp start

Logujemy się danymi jak do SSH.

----------------------------
Konfiguracja rtorrent'a:
Kod:
awk 'NF && !/^[:space:]*#/'  /wheezy/etc/rtorrent.conf
Bash:
min_peers = 40
max_peers = 100
min_peers_seed = 25
max_peers_seed = 60
max_uploads = 30
download_rate = 0
upload_rate = 60
trackers.numwant.set = -1
directory = /share/Download/rtorrent/downloads/
session = /share/Download/rtorrent/session
schedule = watch_directory,5,5,load_start=/share/Download/rtorrent/watch/*.torrent
schedule = untied_directory,5,5,stop_untied=
schedule = low_diskspace,5,60,close_low_diskspace=100M
ratio.enable=
ratio.min.set=500
ratio.max.set=2000
ratio.upload.set=200M
method.set = group.seeding.ratio.command, d.close=
method.set_key = event.download.finished,move_complete,"d.set_directory=/share/Download/rtorrent/complete/; execute=mv,-f,$d.get_base_path=,/share/Download/rtorrent/complete/"
method.set_key = event.download.finished,notify_event_log_finished,"execute=/share/Download/rtorrent/settings/settings/notify_svc.sh,event_log,FINISH,$d.get_name="
method.set_key = event.download.inserted_new,notify_event_log_inserted_new,"execute=/share/Download/rtorrent/settings/settings/notify_svc.sh,event_log,INSERT,$d.get_name="
method.set_key = event.download.finished,notify_smsc_finished,"execute=/share/Download/rtorrent/settings/settings/notify_svc.sh,smsc,FINISH,$d.get_name="
method.set_key = event.download.inserted_new,notify_smsc_inserted_new,"execute=/share/Download/rtorrent/settings/settings/notify_svc.sh,smsc,INSERT,$d.get_name="
port_range = 8192-65535
port_random = no
check_hash = yes
trackers.use_udp.set = yes
encryption = allow_incoming,enable_retry,prefer_plaintext
dht = auto
dht.port.set = 6881
peer_exchange = yes
scgi_port = 127.0.0.1:5000
xmlrpc_dialect=i8
encoding_list = UTF-8
http_capath = /usr/share/ca-certificates
network.http.ssl_verify_peer.set = 0
system.file.max_size.set = -1
pieces.preload.type.set = 1
pieces.preload.min_size.set = 262144
pieces.preload.min_rate.set = 5120
network.send_buffer.size.set = 1M
network.receive_buffer.size.set = 131072
pieces.sync.always_safe.set = no
pieces.sync.timeout.set = 600
pieces.sync.timeout_safe.set = 900
session.use_lock.set = yes
session.on_completion.set = yes
system.file.split_size.set = -1
system.file.split_suffix.set = .part
system.umask.set = 0000
execute={sh,-c,/usr/bin/php5-cgi /var/www/rtorrent/php/initplugins.php &}
log.open_file = "rtorrent.info.log", (cat,/share/Download/rtorrent/logs/rtorrent.info.log)
log.add_output = "info", "rtorrent.info.log"
log.open_file = "rtorrent.dht_debug.log", (cat,/share/Download/rtorrent/logs/rtorrent.dht_debug.log)
log.add_output = "dht_debug", "rtorrent.dht_debug.log"
log.open_file = "rtorrent.tracker_debug.log", (cat,/share/Download/rtorrent/logs/rtorrent.tracker_debug.log)
log.add_output = "tracker_debug", "rtorrent.tracker_debug.log"
log.open_file = "rtorrent.critical.log", (cat,/share/Download/rtorrent/logs/rtorrent.critical.log)
log.add_output = "critical", "rtorrent.critical.log"
log.open_file = "rtorrent.error.log", (cat,/share/Download/rtorrent/logs/rtorrent.error.log)
log.add_output = "error", "rtorrent.error.log"
log.open_file = "rtorrent.warn.log", (cat,/share/Download/rtorrent/logs/rtorrent.warn.log)
log.add_output = "warn", "rtorrent.warn.log"
log.execute = /share/Download/rtorrent/logs/rtorrent.execute.log
 
Ostatnio edytowane:
Kolego, działa. Podeslij nalezy mi namiary na siebie, jakaś flaszka sie nalezy za pomoc :D co bede tu stawial piwo, przynajmniej moje zdrowie wypijesz :)
P.S. A teraz w jaki sposób prawidłowo wyłączyć/zrestartować QNAPA, żeby później nie było cyrków takich jak teraz?
 
  • debiansqueezenwheezy.tar.gz

ma to jakiś rozmiar lub sumę kontrolną, aby można było sprawdzić "jakość" pobrania?
ale chodzi mi o calkowite wylaczenie/restart QTS

w web panela -> Administracja -> Zasilanie i później klik w "ZAMKNIJ"

lub przytrzymaj 4 sekundy wciśnięty guzik power.
No i ostatnio byly te burze

Znam przypadki kiedy znajomy odłączył kabel z gniazda i położył na podłodze koło/poniżej (odległość do 40cm była) gniazda a "pieron" i tak przeskoczył i "sfajfczył" elektronikę, od której był ten kabel. Tak, że jak burza to najlepiej poodłączać co "cenne" i wynieść do piwnicy ;-) albo olać wszystko, bo co ma się spalić to i tak się spali.
Ja jak już coś wyłączam z sieci w obliczu burzy z "pieronami" to kabel nigdy nie zostaje w pobliżu gniazda zasilania.
listwom przepieciowym zbytnio nie ufam

A masz je uziemione porządnie?

Załącczenie obsługi usb w debianie
zedytować plik /etc/init.d/debian6.sh i na końcu funkcji mount_deb dopisać:
Bash:
mount -t usbfs usbfs $DEB_BASE/proc/bus/usb -o devgid=60001,devmode=664
oraz na początku funkcji umount_deb:
Bash:
umount $DEB_BASE/proc/bus/usb

wklejam aby było "pod ręką"

od siebie mogę dodać że warto zaktualizować USB IDS dla lepszego rozpoznawania i obsługi podłączanych wynalazków
Bash:
update-usbisd
 
Fajny ten debian, ale:
1) jak pozbyć sie crapu startowego, i z PS1 i mieć normalne kolory?
2) mimo niewielkiego obciążenia przymula przy starcie/zakańczaniu dowolnej komendy przez shella. Podejrzewam że jest to spowodowane tym że w logując się na normalne QNAPowy shell, komenda df ma pauzę z powodu braku czegoś na USB. Da się to wyeliminować?
 
Te krapowe kolorki były na zamówienie :p
jak pozbyć sie crapu startowego, i z PS1 i mieć normalne kolory?
Zmodyfikuj plik /usr/local/etc/silas-bash-profile
i skomentuj linie 73:
Kod:
# PS1="$sq_color\342\224\214\342\224\200\$([[ \$? != 0 ]] && echo \"[\[\033[01;37m\]\342\234\227$sq_color]\342\224\200\")[\[\033[01;37m\]\t$sq_color]\342\224\200[\[\033[01;37m\]\u@\h$sq_color]\n\342\224\224\342\224\200\342\224\200> \[\033[01;37m\]\W$sq_color $ \[\033[01;37m\]>>\\[\\033[0m\\] "

mimo niewielkiego obciążenia przymula przy starcie/zakańczaniu dowolnej komendy przez shella. Podejrzewam że jest to spowodowane tym że w logując się na normalne QNAPowy shell, komenda df ma pauzę z powodu braku czegoś na USB. Da się to wyeliminować?
Z tego co pamiętam jest tam zainstalowany command-not-found, który jest skryptem perlowym. W wyżej wymienionym pliku skomentuj również linie 99 lub usuń apt-get'em:
Bash:
apt-get remove command-not-found
 
  • Lubię to
Reakcje: kaktus
pytanie za 100 punktów:
Czy mogę w trakcie dzialania w/w Debiana, dokonywać zmian w /debpool - mam na myśli operacje przenoszenia i kopiowania plików? Czy wiążą się z tym jakieś smutne konsekwencje ??
 
Te krapowe kolorki były na zamówienie :p

Zmodyfikuj plik /usr/local/etc/silas-bash-profile
i skomentuj linie 73:
Kod:
# PS1="$sq_color\342\224\214\342\224\200\$([[ \$? != 0 ]] && echo \"[\[\033[01;37m\]\342\234\227$sq_color]\342\224\200\")[\[\033[01;37m\]\t$sq_color]\342\224\200[\[\033[01;37m\]\u@\h$sq_color]\n\342\224\224\342\224\200\342\224\200> \[\033[01;37m\]\W$sq_color $ \[\033[01;37m\]>>\\[\\033[0m\\] "


Z tego co pamiętam jest tam zainstalowany command-not-found, który jest skryptem perlowym. W wyżej wymienionym pliku skomentuj również linie 99 lub usuń apt-get'em:
Bash:
apt-get remove command-not-found

command-not-found nie jest zainstalowane.

Jeszcze bym chciał usunąć linię nad promptem i cały szajs na powitanie.
 
Ok. No faktycznie :)

Mam jeszcze problem z udziałami. Wsześniej w wątku pisałeś o /etc/init.d/debian6.sh - wyedytowałem, ale po restarcie NASa zmiany mi zginęły. W debianie w /share nie mam widocznych moich udziałów,.
 
Napotkałem dziś na następującą przeszkodę
Kod:
ssh_exchange_identification: Connection closed by remote host
podczas próby nawiązania połączenia z natywnym debianem.
Posługując się znalezioną informacją, problemu nie udało mi się rozwiązać. Nie odnalazłem katalogu .ssh ze stosownym plikiem, sugestia druga była też nietrafiona.szukałem w środowisku Debianaa to pewno złe miejsce na poszukiwanie
 
A ja się zastanawiam czty sprawcą tej dysfunkcji nie jest opcja którą niedawno uaktywniłem
widok.png

W chwili obecnej mam takie prawa do katalogów
Bash:
[/share/HDA_DATA/debpool/squeeze] # ls -l
drwxrwx---    2 admin    administ    4096 Aug 11 15:46 bin/
drwxrwx---    2 admin    administ    4096 Aug 11 15:47 boot/
drwxrwx---    2 admin    administ    4096 Apr  2 13:09 dev/
drwxrwx---    2 admin    administ    4096 Mar 10  2013 env/
-rwxrwx---    1 admin    administ    2972 Aug 15 19:53 env.init*
drwxrwx---  107 admin    administ    4096 Sep  2 20:32 etc/
drwxrwx---    2 admin    administ    4096 Mar  7  2013 home/
lrwxrwxrwx    1 admin    administ      32 Sep  8 20:28 initrd.img -> boot/initrd.img-2.6.32-5-orion5x*
drwxrwx---  10 admin    administ    4096 Aug 11 15:46 lib/
drwxrwx---    2 admin    administ    4096 Mar 14  2011 media/
drwxrwx---    4 admin    administ    4096 Mar 19  2011 mnt/
drwxrwx---    2 admin    administ    4096 Mar 14  2011 opt/
drwxrwx---    2 admin    administ    4096 Dec 14  2010 proc/
drwxrwx---  27 admin    administ    4096 Sep  2 15:39 root/
drwxrwx---    2 admin    administ    4096 Mar  7  2013 sbin/
drwxrwx---    2 admin    administ    4096 Jul 21  2010 selinux/
[/share/HDA_DATA/debpool/squeeze] # ls -l
drwxrwxr--    2 admin    administ    4096 Aug 11 15:46 bin/
drwxrwxr--    2 admin    administ    4096 Aug 11 15:47 boot/
drwxrwxr--    2 admin    administ    4096 Apr  2 13:09 dev/
drwxrwxr--    2 admin    administ    4096 Mar 10  2013 env/
-rwxrwxr--    1 admin    administ    2972 Aug 15 19:53 env.init*
drwxrwxr--  107 admin    administ    4096 Sep  2 20:32 etc/
drwxrwxr--    2 admin    administ    4096 Mar  7  2013 home/
lrwxrwxrwx    1 admin    administ      32 Sep  8 20:28 initrd.img -> boot/initrd.img-2.6.32-5-orion5x*
drwxrwxr--  10 admin    administ    4096 Aug 11 15:46 lib/
drwxrwxr--    2 admin    administ    4096 Mar 14  2011 media/
drwxrwxr--    4 admin    administ    4096 Mar 19  2011 mnt/
drwxrwxr--    2 admin    administ    4096 Mar 14  2011 opt/
drwxrwxr--    2 admin    administ    4096 Dec 14  2010 proc/
drwxrwxr--  27 admin    administ    4096 Sep  2 15:39 root/
drwxrwxr--    2 admin    administ    4096 Mar  7  2013 sbin/
drwxrwxr--    2 admin    administ    4096 Jul 21  2010 selinux/
drwxrwxr--  21 admin    administ    4096 Mar 19  2011 share/
drwxrwxr--    2 admin    administ    4096 Mar 14  2011 srv/
drwxrwxr--    2 admin    administ    4096 Jan  1  2011 sys/
drwxrwxr--    6 admin    administ    4096 Sep 11 18:21 tmp/
-rwxrwxr--    1 admin    administ      851 Sep  2 15:37 usermin-setup.out*
drwxrwxr--  10 admin    administ    4096 Mar 14  2011 usr/
drwxrwxr--  18 admin    administ    4096 Sep  2 15:48 var/
lrwxrwxrwx    1 admin    administ      29 Sep  8 20:32 vmlinuz -> boot/vmlinuz-2.6.32-5-orion5x*
-rwxrwxr--    1 admin    administ    1028 Sep  2 15:37 webmin-setup.out*
drwxrwxr--  23 admin    administ    4096 Apr  2 20:18 wheezy/
Tutaj jeszcze jeden dobry opis na podobną przypadłość.Pomogło usunięcie kluczy i wygenerowanie nowych.
 
Status
Brak możliwości dodawania odpowiedzi.

Użytkownicy znaleźli tą stronę używając tych słów:

  1. domyslne hasła qnap
  2. chroot
  3. natywny debian