< OS 有关 > 利用 google-drive-ocamlfuse 工具,在 Ubuntu 24 系统上 加载 Google DRIVE 网盘

Created by Dave On 8Feb.2025

起因:

想下载 StableDiffusion,清理系统文件时把 i/o 搞到 100%,已经删除到 apt 缓存,还差 89MB,只能另想办法。 在网上找能不能挂在 Google 网盘,百度网盘,或 One Driver 也行。看了看文档,准备用  google-drive-ocamlfuse 工具实现在 Ubuntu 中加载谷歌网盘。

官方仓库: GitHub - astrada/google-drive-ocamlfuse: FUSE filesystem over Google Drive

在 Ubuntu 上使用 Google Drive 网盘

我不保证这个软件 google-drive-ocamlfuse 的安全性

1. 先添加源

sudo add-apt-repository ppa:alessandro-strada/ppa

2. 安装 google-drive-ocamlfuseFUSE

sudo apt install google-drive-ocamlfuse
sudo apt install fuse

3. 授权访问 Google Drive

这个过程有些复杂,需要在 Google 控制台上操作, 访问:https://console.cloud.google.com

本想介绍一下,但可以写一篇文章,不但照下面一步步做,也能体会到。就不献丑了。

1)创建一个项目,看图中的箭头

2)创建个项目:ggdrive 

名字随便起,方便阅读我用 ggdrive

3)创建可以操作网盘的 API

在控制台搜索: google drive

找到 Google Drive API

4)创建 API

点 ENABLE 进入界面

点右上角的 CREATE CREDENTAILS (创建证书)

要访问自己的网盘,选 Application data

描述一下

选个角儿:

点“CONTINUE" 继续操作

如果有分配,自己定义:

最后点 DONE 完成

5)在哪儿找到 API

6)Client ID

点击后,展开高级设置,可以找到 Client ID

这个是我们需要的。

7)下载服务账号密钥

8)创建 KEY

选 JSON 格式

成功后如图:

9)下载 .json 文件

在下载目录中找 

10)使用 json 文件登录

文件放到 Ubuntu:/root/scripts/ggdrive-key.json (发文时,已经换位置)

google-drive-ocamlfuse -headless -serviceaccountpath /root/scripts/ggdrive-key.json /root/ggdrive

11)验证

现在 Google Drive 已经加载到 /root/ggdrive 目录

4. 设置开机自动加载

1)创建配置文件

vi /etc/systemd/system/google-drive.service

2)文件内容

我的 JSON 文件名:ggdrive-key.json ,用实际的替换。

[Unit]
Description=Google Drive FUSE mount
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=root
ExecStartPre=/bin/mkdir -p /root/ggdrive
ExecStart=/usr/bin/google-drive-ocamlfuse -d -o nonempty -serviceaccountpath /root/scripts/ggdrive-key.json /root/ggdrive
ExecStop=/bin/bash -c 'pkill -f "google-drive-ocamlfuse /root/ggdrive" || true'
Restart=on-failure
RestartSec=30
TimeoutStopSec=20

[Install]
WantedBy=multi-user.target

5. Google Drive 上配置文件权限

最好在网页登录,比较直观。

在搜索框,填入上一步下载的 ggdrive-key.json 文件中记录的 服务账号(daven-jpn-srv@ggdrive-********t.com),并给它 "EDITOR" (修改)权限。

6. 获取目录 ID

最后几步。  在浏览器打开这个文件夹,获得目录 ID

7. 更新配置文件

完成这两步(目录ID,添加权限)后,就可以更新配置文件并重启服务了

cat > ~/.gdfuse/default/config << EOF
service_account_credentials_path=/root/scripts/< 下载的 JSON 文件 >
root_folder=<目录ID>
umask=0o022
EOF

8. 载入daemon、启用新服务、开启服务、查看服务

systemctl daemon-reload
systemctl enable google-drive
systemctl start google-drive
systemctl status google-drive

6. 验证

网盘的目录中已经有另一个帐号上传的文件。

updated on 9Feb.2025

modified file:/etc/systemd/system/google-drive.service
from: ExecStop=/bin/bash -c 'umount -l /root/ggdrive || true'
to:ExecStop=/bin/bash -c 'pkill -f "google-drive-ocamlfuse /root/ggdrive" || umount -l /root/ggdrive || true'

添加之前,忘记的杀进程命令,不然卸载盘是不成功的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值