Zepsułem FreeBSD czyli instalujemy s3cmd na FreeNAS

O FreeNASie pisałem już kilka razy. Wszyscy już wiedzą, że jest to okrojona wersja FreeBSD linii 7.2 która pozwala na szybkie i bezproblemowe uruchomienie NAS na praktycznie dowolnym sprzęcie PC. Moja instalacja działa już ponad 2 lata bez żadnego „grzebania”. No, ale oczywiście zapragnąłem odrobinę „więcej”.

Ponieważ zachwycam się wszystkim chmurzastym, a głównie Google Storage i Amazon S3 postanowiłem doinstalować zestaw małego majsterkowicza – s3tools. Dla nieznających tematu, jest to zestaw skryptów napisanych w Pythonie do operowania na kontenerach (nie wiem jak przetłumaczyć bucket) przy pomocy linii poleceń.

Oczywiście problemów było kilka – pierwszy to taki, że linia FreeBSD 7.2 nie jest już rozwijana, więc nie zainstalujemy nic „automagicznie” – trzeba pobierać pakiety ręcznie (z FreeBSD 7.3 – nikt sie nie zorientuje). Wszakże to nie jest problem, bo można znaleźć repozytoria online,  potem ściągnąć co trzeba. Tak więc pobrałem py-s3cmd do tego oczywiście trzeba było pobrać Pythona. Wszystko pięknie, ale okazało się że na / mamy za mało miejsca… hmm… growfs na systemie do którego nie mamy konsoli? Ryzykowne.

Z racji na to, że to NAS więc miejsca na m nie brakuje. Pierwszy problem pojawił się już przy dekompresji pobranych pakietów: pkd_add zaczął krzyczeć, że nie ma gdzie rozpakować plików. Małe oszustwo i udało się zmienić domyślną ścieżkę do rozpakowywania pakietów setenv PKG_TMPDIR /mnt/m02/tmp/. Pierwsza bariera pokonana, niestety… to nie wszystko. Instalacja się udała, ale pacjent zmarł 🙂

Po rozpakowaniu wszystkiego s3cmd zaczął wołać o brakujące pliki .so, ale to stary problem – można podlinkować odpowiednie pliki (z wcześniejszych wersji) w /lib. Potem niestety okazało się, że chce jakieś brakujące klasy w postaci _md5. To już wyższa wyższość dla nieznającego Pythona człowieka.

Cóż – po kolejnej sesji googlowania dowiedziałem się, że muszę zainstalować openssl, którego Python nie wymaga, ale żyć bez niego nie może. Po pobraniu openssl i instalacji okazało się, że… skończyło się miejsce na pendrive na którym zainstalowany był cały FreeNAS. Niestety aktualnie nie da się tego problemu obejść.

Prawdopodobnie spróbuję całą operację „po bożemu” przeprowadzić na maszynie wirtualnej, a następnie przenieść tylko to niezbędne na FreeNASa – co powinienem zrobić od samego początku, niestety lenistwo i pośpiech zaowocował rozwaleniem systemu.

Także morał z tej bajki taki: zanim zaczniesz kombinować – sprawdź ilość wolnego miejsca 🙂