Oczywiście z tym „własny DropBox” to może nie do końca (aż) tak, ale blisko jeśli chodzi o dostęp do plików (odczyt, zapis, odtwarzanie) z dowolnego miejsca przez przeglądarkę WWW… A w niektórych aspektach nawet więcej – choćby kalendarza, zadania…
Do tego ogranicza nas tylko nasze łącze, i pojemność dysków… Metoda zadziała nie tylko na Raspberry Pi (dla dostępu z Internetu wymagany jest publiczny adres IP), ale np. i na hostingu – byle była obsługa PHP i MySQL
Spis treści w artykule
ownCloud
Czym jest ownCloud? Chyba ciężko w dwóch zdaniach przedstawić całość, więc tylko w skrócie, bez wdawania się w sporą gamę dodatków i pluginów zwiększających możliwości… Tak więc dzięki ownCloud możecie np. z Raspberry Pi zrobić sobie prywatną chmurę – dysk sieciowy, z którego zasobów będziecie mogli korzystać z dowolnego miejsca, byle mieć dostęp do przeglądarki WWW i Internetu… Możecie m.in.:
- Kopiować, wgrywać i otwierać pliki…
- Odtwarzać prosto z przeglądarki multimedia, np. muzykę, filmy i zdjęcia…
Jest też obsługa:
- Kalendarz
- Obsługa szyfrowania
- Zadania
- Dokumenty
- Wersjonowanie plików
- LDAP / Active Directory
Oprócz obsługi poprzez przeglądarkę ownCloud obecnie posiada oprogramowanie klienckie na systemy:
- Windows
- Mac OS X
- Linux
Wstępem chyba tyle wystarczy, więcej możecie przeczytać m.in. na stronie projektu… ,
ownCloud na Raspberry Pi
Zakładam, że serwer WWW z obsługą PHP i MySQL jest już wcześniej skonfigurowany…
Download
Zaczynamy od pobrania skryptu instalacyjnego:
sudo wget --no-check-certificate https://download.owncloud.com/download/community/setup-owncloud.php -O /var/www/setup-owncloud.php
.
Baza danych
Teraz trzeba skonfigurować (i utworzyć) bazę danych, jak to zrobić pisałem na tej stronie:
Raspberry Pi jako serwer WWW (Apache + PHP + MySQL + phpMyAdmin)
Można ustawić np. takie opcje dla bazy danych:
- Nazwa użytkownika: owncloud
- Host: Host lokalny / localhost
- Hasło: [jakieś hasło]
- Utwórz bazę z taką sama nazwą i przyznaj wszystkie uprawnienia
.
Instalacja
Gdy już mamy przygotowaną bazę danych możemy przystąpić do instalacji, która sprowadza się do kilku prostych kroków… Zaczynamy od otworzenia pobranego pliku PHP w przeglądarce, za pomocą jednego z adresów:
- http://raspberrypi/setup-owncloud.php
- http://[IP Raspberry Pi]/setup-owncloud.php
- http://localhost/setup-owncloud.php
- http://127.0.0.1/setup-owncloud.php
Podajemy katalog docelowy instalacji (domyślnie owncloud): Tworzymy konto administratora, oraz podajemy parametry utworzonej bazy danych, możemy też wybrać lokalizację katalogu danych (np. wskazać dysk USB):
ownCloud zainstalowane, ekran startowy:
Obsługa
Instalacja za nami, teraz trzeba to jakoś wykorzystać… Pliki możemy wgrywać na różne sposoby, czy to przez stronę WWW, czy choćby za pomocą WinSCP do odpowiedniego katalogu:
/var/www/owncloud/data/[użytkownik]/files/[katalog]
Przy większej ilości danych warto korzystać z podkatalogów. .
Katalog „data”
Wprawdzie podczas instalacji można wybrać katalog danych, ale załóżmy, że wybraliśmy katalog standardowy, który znajduje się na karcie pamięci, i chcemy coś z tym zrobić… Można w pliku:
/var/www/owncloud/config/config.php
Zmienić katalog:
'datadirectory' => '/var/www/owncloud/data',
na inny… . Można też skorzystać linkowania, przenosząc katalog „data” np. na dysk USB (usb1), i tworząc w katalogu „owncloud” zamiast niego skrót:
sudo mv -t /media/usb1 /var/www/owncloud/data
sudo ln -s /media/usb1/data /var/www/owncloud/data
(Z racji „uprawnień” zalecam by były to dyski sformatowane np. jako ext3/ext4) .
Zasoby zewnętrzne, dyski USB
Jeśli chcemy do zasobów ownCloud dodać np. dysk USB, możemy to zrobić na 2 sposoby:
Za pomocą pluginu
Ustawienia > Aplikacje > External storage support: Włącz/Aktywuj
Następnie:
Ustawienia > Administrator > Zewnętrzna zasoby dyskowe
Może jeszcze być potrzebne (dla zapisu) ustawienie „mniej restrykcyjnych uprawnień” dla zasobu, np.:
sudo chmod 777 /media/usb1
.
Korzystając z linków
Podobnie, jak przy katalogu „data”, możemy też skorzystać z linków, np.:
sudo ln -s /media/usb1/[katalog] /var/www/owncloud/data/[użytkownik]/files/[katalog]
Lub tworząc z poziomu ownClodu katalog, a następnie przenosząc go na dysk USB, w zamian wstawiając link:
sudo mv -t /media/usb1 /var/www/owncloud/data/[użytkownik]/files/[katalog] sudo ln -s /media/usb1/[katalog] /var/www/owncloud/data/[użytkownik]/files/[katalog]
(Z racji „uprawnień” zalecam by były to dyski sformatowane np. jako ext3/ext4) .
Ps. Z „zewnątrz” zalecam korzystać z połączenia szyfrowanego:
https://adres_ip_lub_domena/owncloud
.
Zobacz wszystkie artykuły z serii „Raspberry Pi”
- Wakacje składkowe ZUS a zawieszenie działalności gospodarczej, czyli uważaj, bo być może nie będziesz mógł skorzystać (w 2024) - 1970-01-01
- Przykładowy kalkulator wyceny usługi druku 3D, czyli nie tylko materiał się liczy - 1970-01-01
- Home Assistant 2024.10, czyli nowa karta „nagłówek” i niedziałający TTS w ramach usługi Google Cloud - 1970-01-01
Projekt mi się bardzo podoba i świetnie śmiga na moim RP.
Dziękuje za bardzo dobrze napisany tutorial.
Mam pytanie, czy można obejść limit wysyłanych plików. Mam natywnie 2 MB. Wg mnie to zdecydowanie za mało na „chmurkę”
Dziękuje.
Jeśli chodzi o ustawienie limitu dla plików w OwnCloud, czyli np.:
Możesz ustawić/zmienić w ustawieniach:
Obecnie maksymalna wielkość obsługiwana przez OC to 2GB – czyli chyba OK :-)
Witam,
mam pytanie odnośnie płynności działania owncloud-6.0.1 czy u wszystkich działa chmura tak mułowato ? czy ktoś ma doświadczenie z innymi wersjami, w których stronka działa płynnie ?
Faktycznie ownCloud na Pi „trochę przymula”… Można spróbować podkręcić CPU w Pi do 1GHz – powinno dać małego kopa… Można też spróbować zmienić Apache na nginx – ale nie testowałem, więc nie wiem czy w tym przypadku „gra jest warta świeczki”.
Sam raczej nie używam „na co dzień” ownCloud na Pi, a na „troszkę mocniejszym” sprzęcie – i tam problemów z działaniem nie ma… Choć na Pi – czasem tylko trzeba „odrobinę cierpliwości” – też da radę. Zdarzyło mi się chyba nawet tak film obejrzeć, i kilkukrotnie posłuchać muzyki… :-)
No wersja 6 przymula na raspberry B masakrycznie..
udostępnienie zasobów na 3 komputery i pobieranie jednoczesne kilku plików i transfer pada do 200kb/s..
Niewiem czy to wina mojej wersji Raspbmc czy raspberry czy tego Clouda…
A tak wogole to zajebisty blog.. Bardzo duzo ciekawych rozwiazań dla raspbery :)
Już wcześniejsza wersja potrafiła „nauczyć cierpliwości”, dlatego też dawno nie korzystałem z ownCloud na Pi…
Co do transferu – to ogólnie Pi nie jest jakimś super wydajnym urządzeniem w tym temacie, zwłaszcza przy wykorzystaniu dysków USB – ten sam kontroler/chip obsługuje LAN i USB, więc czasem nawet nie ma co marzyć o tym by zbliżyć się 100Mbit.
Ps. Dziękuje, choć troszkę ostatnio się opuściłem z tym tematem… Jest całkiem pokaźna liczba poradników przygotowana do publikacji, ale cały czas brak czasu na ostateczną redakcję, ostatnie szlify itp… Mam jednak nadzieje, że uda się jakoś niebawem wznowić cykl – zwłaszcza że jest kilka chyba ciekawych tematów, wychodzących poza „podstawy”.
Pozdrawiam
Świetna robota! Krok po kroku udało mi się dzięki Tobie uruchomić na Raspberry Pi/Raspbian swojego własnego Ownclouda i działa! Minus jest tylko taki że wolno strasznie działa i mam tu na myśli Rpi.
Dzięki za pomoc!
No niestety, ale w przypadku RPi trzeba się pogodzić, że niektóre rozwiązania będą działać trochę wolniej… Jeśli nie korzystasz z GPIO (bo w moim przypadku powyżej 800MHz zaczynały się problemy) możesz podnieść taktowanie procesora do 1GHz – powinno dać to Pi małego kopa.
Choć może się okazać konieczne zapewnienie dodatkowego chłodzenia, choćby w postaci radiatorów…
A dzięki za sugestię. Nie używam go do niczego innego na razie poza konsolą i mam już radiatory kupione na zapas. Podkręcę go i zobaczę jak się polepszy. Byle nie na gorsze ;-)
Raczej problemów nie powinno być – choć radiatory mogą okazać się niezbędne, zwłaszcza przy pracy LAN/USB.
Jedyne problemy jakie zauważyłem przy 1GHz dotyczyły GPIO.
Panie Patryku, bardzo ciekawy opis.
Przymierzam się do wykonania takiej chmurki (mam już Rs PI + dysk USB).
Nie mogę się nigdzie doczytać (tj Google zawiodło:) nt dostępu z zewnątrz.
Mam internet w UPC. Mam statyczne IP – powiedzmy 83.zzz.yyy.xxx
Ale wewnętrzne IP sieci są całkiem inne powiedzmy 192.168.xxx.xxx.
Jak to ogarnąć??
Zewnętrzne, stałe IP to już połowa sukcesu, został jeszcze NAT ;-)
Teraz jeszcze trzeba ustawić „przekierowanie portów” na Pi, tak by jak ktoś wpisze adres IP 83.zzz.yyy.xxx (ew. 83.zzz.yyy.xxx:PORT) trafił do docelowego urządzenia – w tym wypadku do Pi.
W przypadku WWW (np. ownCloud) zazwyczaj jest to port 80 (adres URL: http://IP/ścieżka), choć jak polecam 443 (połączenie szyfrowane, adres URL: https://IP/ścieżka). Można też zmienić port na dowolny inny (http://IP:PORT/ścieżka).
Zazwyczaj (zależnie od routera) będzie to gdzieś w opcjach w stylu „Forwarding, Port Forwarding, Virtual Servers”.
I tam ustawiamy:
Można też skorzystać z opcji „DMZ”, co spowoduje przekierowanie całego ruchu przychodzącego na wybrany adres IP w sieci LAN (oczywiście bez wpływu na normalne działanie internetu na innych urządzeniach).
Należy przekierować na routerze dla https port np 443 (zew.) na adres serwera z owncloud np 192.168.x.x prot 443 dla http port 80 itp
Przy najprostszej topologii sieci tak, przy trochę bardziej rozbudowanej (więcej niż jeden serwer WWW) trzeba korzystać z różnych portów „zewnętrznych”, nie tylko standardowych, bo te mogą być już zajęte…
Więcej na ten temat w tym kontekście pisałem w jednym z komentarzy powyżej.
Po podaniu katalogu instalacji i wybraniu next pokazuje mi:
504 Gateway Time-out
nginx
Restart Pi i ew. kolejna próba… 504 oznacza, że serwer „się zmęczył” – Pi (pierwsza generacja) do najwydajniejszych maszyn nie należy..
Niestety mam Pi 2 w wersji B+ :(
Restart nic nie daje.
Zwiększ czasy wykonywania skryptów – poszukaj informacji m.in. o:
Witaj, Owncloud nie posiada najważniejszej dla mnie funkcji – backupu. Czyli client = read only + mogę z klienta usunąć rzeczy, ale na serwerze zostają do tego z pełnym directory tree.
Moje pytanie – znasz coś co taką opcję ma, posiada ładną i wygodną aplikację-klienta na androida i współpracuje dobrze z raspberry? Tak, jest rsync itd, ale chce coś w pełni automatycznego z aplikacją, która będzie np co 12 godzin zrzucać pliki na serwer (pomijając te istniejące).
Kilka(naście) dni za wcześnie ten komentarz, bo teraz będę musiał zdradzić jeden z tematów do których powoli się przymierzam, a konkretnie do opisu aplikacji Syncthing, z której sam korzystam do synchronizacji danych (4 komputery, 2 telefony i Raspberry Pi).
Aplikacja działa jako usługa, a sterowanie odbywa się za pomocą całkiem przyjemnego interfejsu webowego…
Można też na wybranym komputerze dla wybranego katalogu ustawić flagę „główny folder”, wtedy dane z tego folderu są przesyłane na inne urządzenia, ale na nim nie są zmieniane (synchronizacja w jedną stronę).
Całość dodatkowo w synchronizacji wspiera aplikacja FolderSync (Android), wprawdzie w wersji płatnej, ale jest też wersja bezpłatna, która głównie różni się obecnością reklam.
Być może to nie do końca to o co pytasz, ale nie przychodzi mi na razie nic innego do głowy, z czego korzystam i mógłbym polecić – stworzyłem sobie kompletny (eko)system pilnujący bezpieczeństwa moich danych (do tego jeszcze m.in. SpiderOak, czy CrashPlan), i z racji tego, że działa (były okazje testować w praktyce) trzymam się tego… :-)
Swego czasu korzystałem jeszcze z Duplicati, choć teraz nie pamiętam dlaczego przestałem (może Syncthing zastąpił).
Od jakiegoś czasu nie korzystam z OwnCloud (może trzeba to nadrobić), więc nie wiem czy, ale może jest jakaś wtyczka która doda do OwnCloud funkcje których potrzebujesz?
O, super, dzięki jutro to przetestuję :)
Witam. W sieci lokalnej wszystko ok natomiast z zewnątrz po wpisaniu adesu malinki oraz /owncloud wyświetla mi się komunikat o nie zaufanej witrynie.Gdy kliknę by zaufał w przeglądarce wyskakuje adres wewnętrzny maliny i nie może wyświetlić strony.Jakieś sugestie
Ostrzeżenie bo pewnie certyfikat samodzielnie wygenerowany – na stronie masz info jak dodać np. bezpłatne i zaufane certyfikaty Let’s Encrypt. Polecam, nawet jeśli to serwer tylko dla Ciebie…
A co masz na myśli pisząc „adres malinki”? Publiczny adres IP (ew. odpowiednio skonfigurowaną na Pi domenę), który wskazuje na Pi? Bo zakładam, że skoro jest sieć lokalna, to jest też router, na którym odpowiednie porty wskazują na Raspberry Pi?
Witam
Zainstalowałem OwnCloud 9.1.3 na malince z obrazem OSMC.
Problem mam taki że „chmura” nie widzi plików i katalogów wgranych w konsoli bezpośrednio do katalogu, lub wgranych przez winscp.
Wygląda na to że „chmura” widzi tylko pliki które sama wgra, albo przez stronę www, albo przez klienta windows. Można jakoś to obejść?
Pozdrawiam.
Nie korzystam obecnie z OC, ale zerknij na occ Commmand (ownCloud console).