I have recently started using VGrive on my Kubuntu 18.04 and I must say it does the job.
It is released under GPL V3 license. It has been originally developed for Elementary OS, but it is also available for Ubuntu either on Flathub :
https://flathub.org/apps/details/com.github.bcedu.vgrive
or as a .deb file on the author's GitHub repository :
https://github.com/bcedu/VGrive/releases
Basically, it allows synchronizing a local folder with your Google Drive via a simple graphical interface.
Some tests to give you an idea of how stable it is:
- I tried to put in my local folder a huge file (a 1.7 GB .iso file) and it never did the job. The client looked like it crashed, but I cannot know if Google Drive was ending the connection or not. It seems it was just stopping at some point ;
- Then I put 85 files locally, the biggest one being 19 MB, the total being 163 MB. They uploaded fine on Google Drive. Then I downloaded them from the Google Drive web interface and made a diff among them and the originally uploaded files. No difference found ;
- I modified one of the files locally. The change was detected and synchronized with Google Drive ;
- I uploaded a document in Google Drive directly. VGrive detected it and downloaded it ;
- My Google Docs were not synchronized, they just stayed on the Google Drive ;
- The files shared with me were not synchronized, they just stayed on the Google Drive ;
- Google Drive is slow, and VGrive is slow too :( Took about 1 hour to upload the 163 MB files from local folder, and then to generate the zip to download by Google Drive ;
- You can monitor what is synchronizing in the VGrive client by ticking "Advanced View". Notice that it is not parallelizing tasks, the client takes files one after the other and upload / download them sequentially.
So globally I find the experience quite nice, just too slow. It sounds perfect for using Google Drive as a file backup. I don't know how it would react if I was working on a big enough file locally, making regular saves at a pace that VGrive cannot follow. I also ignore what is the maximum reasonable size to synchronize.