VerticalLabrador
Posts: 7
Joined: Sun Dec 16, 2012 9:39 pm

Raspberry Pi -> Google Drive

Sun Dec 16, 2012 9:56 pm

I'll add a detailed thread/blog post on this some time later but the Raspberry Pi, for me, where it's potential lies in my own happenstance is in running a very small always-on Linux box which can be used to rsync down data from large(r) webservers as a backup client. It is perfect for the job to put it mildly.

Admittedly the Pi isn't exactly going to be an enterprise grade solution, but for the home user, or the amateur or semi-pro web-developer, it makes an awesome back-up tool for syncing down data. At the moment I've got my one powering through about 2gb of a website at 4am each morning.

Sadly, whereas the Pi excels at rsyncing the actually data via ssh while sipping power and making no noise, where it falls down, and Linux in general, is the ability to drop the resultant data onto Google Drive with some simple command line tools.

(...I'm essentially writing this to help others out)

I've done some serious digging and none of the solutions available seem to do the trick. I've looked at both Grive (doesn't work on the Pi) and the Google-CLi tool (cumbersome to configure and a bit of a hack around given that it uses a Google Developer backdoor to upload to Google Drive), and many other code samples, and they either don't work, are 'hacky' to configure (ie. zero faith in them continuing to run) or use unusual ways of getting data into Google Drive aka the old Google Docs API.

In short, the very last feature missing to make the Pi the perfect always-on backup tool is the absence of a usable off-the-shelf Google Drive interface from the command line, or indeed, any sizable (free) cloud storage system.

If anyone has found a hackaround, please post below.

(Note: Even to circumvent the fact that Google Drives T&C's are not exactly clear on copyright for files uploaded, the Pi even powers through gpg encrypting files so Google can never own the content, boo ya! :) )

User avatar
bonelifer
Posts: 128
Joined: Thu Jan 12, 2012 4:01 am
Location: http://www.phpbb.com/community/memberli ... e&u=147848
Contact: Website

Re: Raspberry Pi -> Google Drive

Mon Dec 17, 2012 1:22 am

Not sure how much storage you were thinking about but 4sync has I think 15gb and supports Webdav:
https://webdav.4sync.com

Which means you can use Fuse's webdav module: WebDAV-davfs2

Box.net also supports webdav but is only 5gb:
Check this post at the Ubuntuforum(steps should work fine in Raspbian):
http://ubuntuforums.org/showthread.php?t=202761

VerticalLabrador
Posts: 7
Joined: Sun Dec 16, 2012 9:39 pm

Re: Raspberry Pi -> Google Drive

Mon Dec 17, 2012 9:30 am

Very interesting BoneLifer, will check out both and return back. What I'm hoping to achieve at the end of all this is a replicatable tutorial which anyone can follow to back up their own webserver (both files and MySQL) to their Pi, and for their Pi to shunt on the resultant data encrypted to a (free) cloud service like Google Drive.

Lke me it would cut out a lot of messing around with back-up servers and so forth.

bgirardot
Posts: 518
Joined: Wed Oct 10, 2012 6:20 am
Location: Switzerland

Re: Raspberry Pi -> Google Drive

Mon Dec 17, 2012 1:35 pm

What about something like either of these two python scripts:

http://code.google.com/p/fuse-for-google-docs/

StijnB
Posts: 1
Joined: Wed Nov 14, 2012 3:21 pm

Re: Raspberry Pi -> Google Drive

Mon Dec 17, 2012 2:01 pm

Why do you think that Grive does not work?

I have installed it and it works. Just follow the instructions on this website and you are good to go:
http://www.lbreda.com/grive/installation

Just make sure you install all the packages needed

VerticalLabrador
Posts: 7
Joined: Sun Dec 16, 2012 9:39 pm

Re: Raspberry Pi -> Google Drive

Mon Dec 17, 2012 10:59 pm

Followed those exact instructions with no luck, I'll copy and paste the exact error tomorrow. It may be that I'm using RaspBMC as my base-build my Pi is media centre by day, backup daemon by night ;) :D

I know that even with those dependencies manually installed that it generates an error at 2% when it attempts to run Grive.

I also had a look at the Python samples, I reckon that they're going to be the only option to complete a command line upload to Google Drive post encryption.

VerticalLabrador
Posts: 7
Joined: Sun Dec 16, 2012 9:39 pm

Re: Raspberry Pi -> Google Drive

Wed Dec 26, 2012 7:34 pm

pi@raspbmc:~/drive/grive$ make
[ 2%] Building CXX object libgrive/CMakeFiles/grive.dir/src/drive/State.cc.o
c++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.6/README.Bugs> for instructions.
make[2]: *** [libgrive/CMakeFiles/grive.dir/src/drive/State.cc.o] Error 4
make[1]: *** [libgrive/CMakeFiles/grive.dir/all] Error 2
make: *** [all] Error 2
pi@raspbmc:~/drive/grive$
Bashing at this again on an idle day off, error above, any asst. appreciated.

bgirardot
Posts: 518
Joined: Wed Oct 10, 2012 6:20 am
Location: Switzerland

Re: Raspberry Pi -> Google Drive

Wed Dec 26, 2012 9:27 pm

VerticalLabrador wrote:
pi@raspbmc:~/drive/grive$ make
[ 2%] Building CXX object libgrive/CMakeFiles/grive.dir/src/drive/State.cc.o
c++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.6/README.Bugs> for instructions.
make[2]: *** [libgrive/CMakeFiles/grive.dir/src/drive/State.cc.o] Error 4
make[1]: *** [libgrive/CMakeFiles/grive.dir/all] Error 2
make: *** [all] Error 2
pi@raspbmc:~/drive/grive$
Bashing at this again on an idle day off, error above, any asst. appreciated.
So far mine is going as expected, make is taking 20+ minutes so it is still on going, but I got past building State.cc.o

Interestingly, my first line, the 2% mark is this:
[ 2%] Building CXX object libgrive/CMakeFiles/grive.dir/src/drive/Drive.cc.o

and State.cc.o is 3rd at the 8% completed stage.

Edit: Mine completes make just fine. Have to see if it works now.
Edit2: Works as advertised, uploaded files to my gdrive.

VerticalLabrador
Posts: 7
Joined: Sun Dec 16, 2012 9:39 pm

Re: Raspberry Pi -> Google Drive

Thu Dec 27, 2012 2:51 am

...many thanks for your feedback, marginally upset that it works perfectly for you yet fails miserably for me, especially considering that my webserver backup is working perfectly. Just unable to shunt the resultant data directly to Google drive without using a Windows box as a proxy :evil: :mrgreen:

Can I ask what build your using? Presuming Raspian? I'm hunching that using raspbmc is partially the problem.

bgirardot
Posts: 518
Joined: Wed Oct 10, 2012 6:20 am
Location: Switzerland

Re: Raspberry Pi -> Google Drive

Thu Dec 27, 2012 3:54 am

VerticalLabrador wrote:...many thanks for your feedback, marginally upset that it works perfectly for you yet fails miserably for me, especially considering that my webserver backup is working perfectly. Just unable to shunt the resultant data directly to Google drive without using a Windows box as a proxy :evil: :mrgreen:

Can I ask what build your using? Presuming Raspian? I'm hunching that using raspbmc is partially the problem.
Yes, raspbian, 10-28-2012 version, kept up-to-date with apt-get update and upgrade.

VerticalLabrador
Posts: 7
Joined: Sun Dec 16, 2012 9:39 pm

Re: Raspberry Pi -> Google Drive

Thu Dec 27, 2012 9:59 am

Thank you. I'll retry with Raspian, I'm betting it will work. It will mean however hacking Raspian into a media player of some description which is annoying given that the only thing not working on RaspBMC is Grive.

Will post a tutorial when I'm done.

User avatar
LetHopeItsSnowing
Posts: 357
Joined: Sat May 26, 2012 6:40 am
Location: UK
Contact: Website

Re: Raspberry Pi -> Google Drive

Mon Mar 04, 2013 8:14 pm

Ive created some instructions about how to compile and use grive on the pi on my blog.

http://www.stuffaboutcode.com/2013/03/r ... grive.html

Im using my pi and grive to automatically backup my important files (pictures and stuff) to google drive - its a really simple backup solution.
"am I getting slower, or is stuff more complicated; either way I now have to write it down - stuffaboutcode.com"

rodhull
Posts: 1
Joined: Mon Feb 17, 2014 11:07 am

Re: Raspberry Pi -> Google Drive

Mon Feb 17, 2014 11:40 am

Been reading this with interest but I personally wanted a solution that either selectively synced a single GDrive folder to/fro my Pi or alternatively was able to mount the whole lot rather than sync it which takes up precious disk space.

I was ultimately trying to find a way to give my always-on Pi access to a cloud location. I then use that location as the directory that get_iplayer does an automatically scheduled download into of radio content each day. Then, my Android devices wherever they may be can pick up changes from Google Drive and sync automatically using the free app "Autosync for Google Drive". I can then listen to any show that I configure get_iplayer to download offline at a time that is convenient for me, all automated by software running on the Pi.

I settled on the mounting option since the only way I could get a selective sync was using the non-free "insync" software which works flawlessly but costs money.

Enter "google-drive-ocamlfuse":
https://github.com/astrada/google-drive-ocamlfuse

This DOES work on the Pi (currently I'm using it installed in a Raspbmc instance - my Pi is also my media center server - so regular hard-float Raspbian would work too).

However, I certainly needed to jump through plenty of hoops to get it working and it's not for the faint-hearted! I successfully managed to install it using opam.

All this is from a hazy memory and with limited access to a bash history of steps I used, so others mileage may vary - some of the steps might not be necessary!

Steps:
Pretty sure you'll first need to initially install a third-party PPA to get some of the ocaml libs that work on the Pi - this step MIGHT not be required if you install your own ocaml compiler (which I did as you'll see later) since the latest dev/trunk branch is patched to work on the Pi - from memory I think I encountered a chicken/egg situation where I had to have some kind of ocaml libs installed first - sorry my memory is hazy since I tried a few different steps to get it installed!

Anyway, here's what (I think) I did:
  • Add these lines to /etc/apt/sources.list

    Code: Select all

    deb http://www.cl.cam.ac.uk/~lpw25/ocaml-rpi/ wheezy main
    deb-src http://www.cl.cam.ac.uk/~lpw25/ocaml-rpi/ wheezy main
  • Install the initial ocaml stuff and the pre-reqs for google-drive-ocamlfuse as they recommend on their wiki:

    Code: Select all

    sudo apt-get update; sudo apt-get install ocaml ocaml-native-compilers camlp4-extra git m4 libcurl4-gnutls-dev libfuse-dev libsqlite3-dev
  • Get the latest opam:

    Code: Select all

    git clone https://github.com/OCamlPro/opam.git
    (You might want to symbolically link ~/opam to another location if your install media has little free space - it can get v. large! I use some external USB storage that all my media is stored on rather than my SD card)
  • Build it:

    Code: Select all

    cd opam ; ./configure ;make install ;opam init
  • I then switched to the latest dev+trunk branch compiler to make it work on the ARMv6 Pi - this can take a LONG time to complete:

    Code: Select all

    opam switch 4.01.0dev+trunk ; eval `opam config -env`
    Compile and install the application itself - this can also take a LONG time to complete:

    Code: Select all

    opam install google-drive-ocamlfuse
  • Once installed, I followed these instructions to authorize the app since I don't have a console display on the Pi
    https://github.com/astrada/google-drive ... horization
  • Add the "pi" user to the "fuse" group by editing /etc/group and appending "pi" (without quotes) to the end of the fuse line
  • Create an empty dir where you want GoogleDrive to exist, and then simply run:
    google-drive-ocamlfuse /dir_you_created
It's not super-fast due to the Pi's relatively weak processor and poor I/O, but you do then end up with a mounted version of your Google Drive which you can do with as you wish...

HiroProtagonist
Posts: 214
Joined: Sat Jun 29, 2013 9:45 am

Re: Raspberry Pi -> Google Drive

Tue Feb 18, 2014 12:48 am

VerticalLabrador wrote:
pi@raspbmc:~/drive/grive$ make
[ 2%] Building CXX object libgrive/CMakeFiles/grive.dir/src/drive/State.cc.o
c++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.6/README.Bugs> for instructions.
make[2]: *** [libgrive/CMakeFiles/grive.dir/src/drive/State.cc.o] Error 4
make[1]: *** [libgrive/CMakeFiles/grive.dir/all] Error 2
make: *** [all] Error 2
pi@raspbmc:~/drive/grive$
Bashing at this again on an idle day off, error above, any asst. appreciated.
Are you running out of memory? If you're running raspbmc, you should kill XBMC and consider adding some swap.

mesmariusz
Posts: 57
Joined: Fri Feb 15, 2013 6:07 am

Re: Raspberry Pi -> Google Drive

Fri May 23, 2014 5:19 am

Could you please help me?

Code: Select all

root@raspberrypi:/home/pi# opam switch 4.01.0dev+trunk ; eval `opam config -env`
[WARNING] Some of the compiler base packages are not installed. You should run:

    $ opam install base-threads base-bigarray base-unix

root@raspberrypi:/home/pi# opam install base-threads base-bigarray base-unix

The following actions will be performed:
 - install   base-threads.base
 - install   base-bigarray.base
 - install   base-unix.base
3 to install | 0 to reinstall | 0 to upgrade | 0 to downgrade | 0 to remove

=-=-= Synchronizing package archives =-=-=
[ERROR] Actions cancelled because of # opam-version    1.1.1 (71b2a01ee571507c18                                     19fbd282b0500d628f92d3)
# os              linux
opam: "fork" failed: Cannot allocate memory
Fatal error:
# opam-version    1.1.1 (71b2a01ee571507c1819fbd282b0500d628f92d3)
# os              linux
opam: "fork" failed: Cannot allocate memory
root@raspberrypi:/home/pi#

mesmariusz
Posts: 57
Joined: Fri Feb 15, 2013 6:07 am

Re: Raspberry Pi -> Google Drive

Thu Jun 12, 2014 5:52 am

Hello

google-drive-ocamlfuse works also for me but really short time after delete all inside /root/.gdfuse and configure it (again) via:

$ fusermount -u /media/backup
$ google-drive-ocamlfuse -headless -label rpi1_backup -id ###my_google_id##.apps.googleusercontent.com -secret ###my_secret###
$ google-drive-ocamlfuse -label rpi1_backup /media/backup/

Then it works correctly again but after some time (several minutes) google drive is still mounted but acces to it is impossible. You can enter is using cd command but content listing is not possible (@ midnight commander red colour and question mark before name of this folder (where google drive is mounted). Of course hdd is stil mounted:

root@raspberrypi:~/.gdfuse# mount
(...)
google-drive-ocamlfuse on /media/backup type fuse.google-drive-ocamlfuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0)

Any ideas? Do google-drive-ocamlfuse really works for you?

mesmariusz
Posts: 57
Joined: Fri Feb 15, 2013 6:07 am

Re: Raspberry Pi -> Google Drive

Thu Jun 12, 2014 11:46 am

Content of my gdfuse.log

[0.017575] TID=0: Setting up rpi1_backup filesystem...
[0.018262] TID=0: Loading configuration from /root/.gdfuse/rpi1_backup/config...done
Saving configuration in /root/.gdfuse/rpi1_backup/config...done
[0.282718] TID=0: Loading application state from /root/.gdfuse/rpi1_backup/state...done
Current version: 0.5.3
Setting up cache db...done
Setting up CURL...done
Refresh token already present.
[0.335672] TID=0: Starting filesystem /media/backup
[0.364782] TID=0: init_filesystem
[294.241680] TID=0: getattr /
Loading metadata from db...not valid
Refreshing metadata...Refreshing access token...fail (error_code=Exception)
Error refreshing access token (try=0):
Exception:GaeProxy.ServerError("error_code Exception")
Backtrace:
fail (error_code=Exception)
Error refreshing access token (try=1):
Exception:GaeProxy.ServerError("error_code Exception")
Backtrace:
fail (error_code=Exception)
Error refreshing access token (try=2):
Exception:GaeProxy.ServerError("error_code Exception")
Backtrace:
fail (error_code=Exception)
Error refreshing access token (try=3):
Exception:GaeProxy.ServerError("error_code Exception")
Backtrace:
fail (error_code=Exception)
Error refreshing access token (try=4):
Exception:GaeProxy.ServerError("error_code Exception")
Backtrace:
fail (error_code=Exception)
Error refreshing access token (try=5):
Exception:GaeProxy.ServerError("error_code Exception")
Backtrace:
[335.814038] TID=0: Exiting.
CURL cleanup...done
Clearing context...done

As I wrote before. On the begining it is working. After some minutes... Errors...

frahlg
Posts: 1
Joined: Mon Jun 30, 2014 7:17 pm

Re: Raspberry Pi -> Google Drive

Mon Jun 30, 2014 7:19 pm

You should try out the Insync client, https://www.insynchq.com/linux . They have a test client that works for Raspberry, it actually seems to work quite well.

mesmariusz
Posts: 57
Joined: Fri Feb 15, 2013 6:07 am

Re: Raspberry Pi -> Google Drive

Wed Jul 02, 2014 12:17 pm

Ocamfuse now is working for me and is much better than sync for me because I need to use this drive as external storage (I have no sparce to waste on my system sdcard for that files). Ocamfuse is able to mount a google drive exactly as a physical hard drive. For Insync it is not possible.

RudyNutbeij
Posts: 3
Joined: Fri Jul 18, 2014 10:43 pm

Re: Raspberry Pi -> Google Drive

Fri Jul 18, 2014 11:09 pm

rodhulls method is most accurate in this thread. there are quite some tuts out there, some of them are outdated and don't work well.

https://console.developers.google.com/ for your drive sdk

Code: Select all

#!/bin/bash
OPAMDIR=${HOME}/opam
DRIVEDIR=/mnt/drive
DRIVECFG=~/.gdfuse/default/config
echo -e "enter your client id:"
read CID
echo -e "\n \n enter your client secret:"
read CECRET

sudo apt-get -y --force-yes install ocaml ocaml-findlib sqlite3 camlidl m4 libcurl4-gnutls-dev libfuse-dev libsqlite3-dev camlp4-extra fuse build-essential ssh make git
cd $HOME
git clone https://github.com/OCamlPro/opam
cd $OPAMDIR
./configure && make && sudo make install
cd $HOME
opam init --yes && opam --switch=4.01.0dev+trunk --yes
echo "eval \`opam config env\`" >> ~/.bashrc
opam install google-drive-ocamlfuse --yes
sudo usermod -a -G fuse $USER
newgrp fuse
sudo chmod a+rw /dev/fuse
sudo mkdir -p /mnt/drive
sudo chown $USER.fuse /mnt/drive
sudo sed -i 's/\#user_allow/user_allow/g' /etc/fuse.conf #allows other users to allow_other users
google-drive-ocamlfuse -headless -id ${CID} -secret ${CECRET} ${DRIVEDIR} -o allow_other #allows other users as well
Linux master 3.12.22+ #691 PREEMPT Wed Jun 18 18:29:58 BST 2014 armv6l GNU/Linux
7.5
Raspbian GNU/Linux 7 \n \l

I'm using an almost full 100GB drive account, and the performance isn't that well to be honest. I'm searching for a way to selective mount or to selective cache. If I can't find a solution I'm considering to register a 15GB free account, share the data I'd like to have available on the Pi with that account and add it to that user's drive.

I hope this solves any problems, I've been struggling quite a while with this now. I messed up the opam switch part every time by switching to wrong versions of the compiler. 4.01.0dev+trunk is the right one.

I didn't need to add any repository for this and I've used a dist-upgraded minibian (19-07-2014).

blast1987
Posts: 16
Joined: Fri Jun 13, 2014 12:19 pm

Re: Raspberry Pi -> Google Drive

Wed Sep 03, 2014 9:10 am

Code: Select all

Executables will be installed in /usr/local/bin                                             
Manual pages will be installed in /usr/local/share/man                                      
mkdir -p /usr/local/bin                                                                     
make opam-install opam-admin-install opam-installer-install                                 
make[1]: ingresso nella directory "/home/pi/opam"                                           
install _obuild/opam/opam.byte                                                              
cp: impossibile eseguire stat di "_obuild/opam/opam.byte": File o directory non esistente   
Makefile:88: set di istruzioni per l'obiettivo "opam-install" non riuscito                  
make[1]: *** [opam-install] Errore 1                                                        
make[1]: uscita dalla directory "/home/pi/opam"                                             
Makefile:121: set di istruzioni per l'obiettivo "install" non riuscito                      
make: *** [install] Errore 2  
can anyone help me?

blast1987
Posts: 16
Joined: Fri Jun 13, 2014 12:19 pm

Re: Raspberry Pi -> Google Drive

Wed Sep 03, 2014 11:59 am

i resolved the problem above, but now i have a new one...

Code: Select all

=-=-= Installing ocamlnet.3.7.5 =-=-=
Applying robust-host.patch.                                                                                                                          
Building ocamlnet.3.7.5:                                                                                                                             
  ./configure -bindir /root/.opam/system/bin -disable-pcre -disable-gtk2 -disable-ssl -disable-zip -enable-crypto -with-nethttpd                     
  make all                                                                                                                                           
  make opt                                                                                                                                           
  make install                                                                                                                                       
[ERROR] The compilation of ocamlnet.3.7.5 failed.
Removing ocamlnet.3.7.5.                                                                                                                             
  ocamlfind remove equeue      

etc... etc....

elatllat
Posts: 1337
Joined: Sat Dec 17, 2011 5:05 pm

Re: Raspberry Pi -> Google Drive

Fri Oct 03, 2014 3:03 am

blast1987 wrote: ...can anyone help me?
Maybe if you posted exactly what you did.
This worked for me:

Code: Select all

echo "deb http://www.cl.cam.ac.uk/~lpw25/ocaml-rpi/ wheezy main
deb-src http://www.cl.cam.ac.uk/~lpw25/ocaml-rpi/ wheezy main" >> /etc/apt/sources.list
apt-get update
apt-get install -y ocaml ocaml-native-compilers m4 libcurl4-gnutls-dev libfuse-dev libsqlite3-dev
cd /opt
git clone https://github.com/OCamlPro/opam.git
cd opam
git checkout 1.1.1
./configure
make
make install
opam switch -y 4.02.0
opam init -y
eval 'opam config env'
opam update
opam install -y google-drive-ocamlfuse
SBC with 32GB RAM: https://hardkernel.com

FAQ : https://raspberrypi.stackexchange.com

Unanswered: https://www.raspberrypi.org/forums/search.php?search_id=unanswered

RudyNutbeij
Posts: 3
Joined: Fri Jul 18, 2014 10:43 pm

Re: Raspberry Pi -> Google Drive

Fri Oct 03, 2014 11:08 pm

elatllat wrote:
blast1987 wrote: ...can anyone help me?
Maybe if you posted exactly what you did.
This worked for me:

Code: Select all

echo "deb http://www.cl.cam.ac.uk/~lpw25/ocaml-rpi/ wheezy main
deb-src http://www.cl.cam.ac.uk/~lpw25/ocaml-rpi/ wheezy main" >> /etc/apt/sources.list
apt-get update
apt-get install -y ocaml ocaml-native-compilers m4 libcurl4-gnutls-dev libfuse-dev libsqlite3-dev
cd /opt
git clone https://github.com/OCamlPro/opam.git
cd opam
git checkout 1.1.1
./configure
make
make install
opam switch -y 4.02.0
opam init -y
eval 'opam config env'
opam update
opam install -y google-drive-ocamlfuse
I really didn't need those extra repositories to get it working. There's this howto on the web somewhere that has these steps in it but it's not necessary anymore. I think most errors are probably caused by using the wrong opam compiler, the shipped defaults aren't compiling it.

How is your performance doing? I managed to tune it by using an extra gmail account and shared folders instead of mounting my full drive.

elatllat
Posts: 1337
Joined: Sat Dec 17, 2011 5:05 pm

Re: Raspberry Pi -> Google Drive

Fri Oct 03, 2014 11:49 pm

Yah I only used the repo because the default did not come with a native compiler. No idea why the default is not the latest stable.... I started with an empty drive and will see what it's like when I fill it to 30GB. ( more if that unlimited educational thing happens). It's extra slow because I'm using encription but after a GB uploaded it's still going. rsync is not giving stable speed reports; starts the file at my connection up speed 3mbps and drops to 0.3 by the time the file finishes.

It's not very stable so I have rsync in a loop re-mounting on error(12)
SBC with 32GB RAM: https://hardkernel.com

FAQ : https://raspberrypi.stackexchange.com

Unanswered: https://www.raspberrypi.org/forums/search.php?search_id=unanswered

Return to “Networking and servers”