Pomoc MLDonkey 3.1.0 i svn z IPKG - nie działają razem

nnd_newbie

Nowy użytkownik
Noobie
9 Styczeń 2014
5
6
3
QNAP
TS-110
Ethernet
100 Mbps
QNAP TS-110 / firmware 4.0.2

Po zainstalowaniu Subversion (pakiet svn z IPKG) przestaje działać MLDonkey. Zatrzymuje się po:
Starting mldonkey...
Starting mlnet daemon...
2014/01/08 12:47:22 [cO] Starting MLDonkey 3.1.0 ...
2014/01/08 12:47:22 [cO] Language EN, locale UTF-8, ulimit for open files 1024
2014/01/08 12:47:22 [cO] MLDonkey is working in /root/.mldonkey
2014/01/08 12:47:22 [Gettext] Loading language resource mlnet_strings.en_US.UTF-8
2014/01/08 12:47:22 [cO] loaded language resource file
2014/01/08 12:47:22 [DNS] Resolving [qnap] ...
2014/01/08 12:47:22 [DNS] Resolving [www.mldonkey.org] ...

Nie ma logów, komunikatu o błędzie, po prostu start się urywa. Po krótkim śledztwie okazało się, że problemem jest pakiet "File - Ubiquitous file identification utility", jedno z wymagań Subversion. Wskazywałbym na biblioteki libmagic, które mldonkey posiada własne w katalogu "/share/HDA_DATA/.qpkg/MLDonkey/lib/" podczas gdy File instaluje swoje w "/share/HDA_DATA/.qpkg/Optware/lib".

Próby podmiany bilbiotek nic nie dały:
  • Zamiana bibliotek MLDonkeya tymi od File - nie naprawia problemu
  • Zamiana bibliotek File tymi od MLDonkeya - Mldonkey przy starcie sypie błędami na kilka ekranów, po czym się uruchamia. Niestety biorąc pod uwagę liczbę błędów, nie uznałbym to za dobre rozwiązanie.

Efekt:
  • Pakiet File zainstalowany: subversion działa, MlDonkey nie działa.
  • Pakiet File odinstalowany: subversion nie działa, MlDonkey działa.
Jakieś pomysły na rozwiązanie?
 
Może tak?
Bash:
 ipkg -d <location> install <packagename> # installs the package of your choice
gdzie paczkę trzeba by mieć lokalnie, i spróbować określić jej położenie w parametrze
nie testowałem ...

Commandline Structure z innego systemu
Usage
usage: ipkg [options...] sub-command [arguments...]

Options
-d <dest_name> or Install, upgrade, or remove package from <dest_name>
-dest <dest_name> where <dest_name> is '''either''' a folder path '''or''' a pre-defined path in /etc/ipkg.conf
by default, ipkg on DD-WRT supports these pre-defined names:
root /jffs
ram /tmp​

-o <offline_root>Use <offline_root> as the root for offline installation.
-offline <offline_root> where <offline_root> is a path

-force-depends Make dependency checks warnings instead of errors

-force-defaults Use default options for questions asked by ipkg. (no prompts). Note that this will not prevent package installation scripts from prompting.

Sub Commands
update Update list of available packages from <src> defined in /etc/ipkg.conf
upgrade Upgrade all installed packages to latest version
install <pkg> Download and install <pkg> (and dependencies)
remove <pkg> Remove package <pkg>
list List available packages and descriptions
files <pkg> List all files belonging to <pkg>
search <file> Search for a packaging providing <file>
info [pkg [<field>]] Display all/some info fields for <pkg> or all
status [pkg [<field>]] Display all/some status fields for <pkg> or all
depends <pkg> Print uninstalled package dependencies for <pkg>
- <pkg> may be a package name, or a URI to the *.ipk or *.deb file
- arguments displayed in [ ] are optional

A tu Install Optware IPKG - QNAPedia, może się coś przyda ... jest tam instrukcja jak ręcznie instalować pakiety :D
 
Ostatnio edytowane:
Przeszukałem na stronie Index of /feeds/optware/ . Z potencjalnie pasujących architektur widzę:
cs05q1armel/
cs05q3armel/
cs06q3armel/
cs08q1armel/
W moim Qnapie jest ustawione na cs08q1armel. Niestety we wszystkich jest ten sam pakiet file_5.12-1_arm.ipk z 12-01-2013. Nie wiem skąd wziąć inny lub starszy.

Próbowałem też jakoś wymusić na MLDonkey, żeby ignorował zainstalowane pliki z IPKG, ale jak na razie bez powodzenia.
 
To przekracza moje umiejętności. Subversion ma ok. 10 pakietów jako zależności z IPKG, a MLDonkey z QPKG to w ogóle ciemna magia. Chyba, że ktoś mnie pokieruje krok po kroku.
 
Subversion potrzebuje file tak? A MLdonkey działa bez niego?
Wyrzuć svn i file do podkatalogu np. /opt/svn a zamiast oryginalnego svn ktory jest w bin podstaw skrypt, ktory wyeksportuje nowy path do file i uruchomi svn:
Bash:
#!/bin/sh

export PATH=/opt/svn:$PATH
export LD_LIBRARY_PATH=/opt/svn:$LD_LIBRARY_PATH

/opt/svn/svn $@

Jeśli do svn'a przekazuje się coś przez STDIN to podstaw:
Bash:
TMP_FILE="/tmp/my_svn.tmp"

{
        while IFS= read LINE; do
                echo ${LINE}
        done
} > $TMP_FILE

/opt/svn/svn $@ < "$TMP_FILE"
 
  • Lubię to
Reakcje: kaktus
Dzięki, działa!

Ponieważ chodziło mi bardziej o svnserve (i svnadmin) niż svn, a nie wiedziałem z jakich podprogramów to wszystko korzysta przerzuciłem wszystkie binarki subversion z /opt/bin do /opt/svn. Wypakowałem też cały pakiet file z bibliotekami. Użyłem skryptów przekazujących tylko parametry (bez STDIN).

Przetestowałem najczęściej używane polecenia na QNAPie: svnadmin (create, load, dump) oraz svn (checkout, update). Uruchomiłem też server svnserve i potestowałem zdalnie. Żadnych problemów.
 

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

  1. mldonkey