在Google Colab中挂载多个驱动器

时间:2018-12-11 16:12:45

标签: google-colaboratory

我使用此功能挂载Google驱动器

from google.colab import drive
drive.mount('/content/drive', force_remount=True)

然后从其中复制文件

!tar -C "/home/" -xvf '/content/drive/My Drive/files.tar'

我想从2个驱动器中复制文件,但是当我尝试运行第一个脚本时,只需重新安装第一个驱动器

如何安装第一个驱动器,复制文件,然后安装另一个驱动器并从第二个驱动器复制文件?

2 个答案:

答案 0 :(得分:1)

colab驱动器模块并不真正支持您所描述的内容。

将要从第二个帐户的云端硬盘中读取的文件/文件夹共享到第一个帐户的云端硬盘(例如drive.google.com),然后从同一装载读取所有内容,这可能是最简单的。

答案 1 :(得分:0)

万一有人真的需要安装多个驱动器,这是安装两个驱动器的解决方法。

首先,使用安装第一个驱动器

from google.colab import drive
drive.mount('/drive1')

然后,使用以下脚本安装第二个驱动器。

!apt-get install -y -qq software-properties-common python-software-properties module-init-tools
!add-apt-repository -y ppa:alessandro-strada/ppa 2>&1 > /dev/null
!apt-get update -qq 2>&1 > /dev/null
!apt-get -y install -qq google-drive-ocamlfuse fuse
from google.colab import auth
auth.authenticate_user()
from oauth2client.client import GoogleCredentials
creds = GoogleCredentials.get_application_default()
import getpass
!google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret} < /dev/null 2>&1 | grep URL
vcode = getpass.getpass()
!echo {vcode} | google-drive-ocamlfuse -headless -id={creds.client_id} -secret={creds.client_secret}
!mkdir -p /drive2
!google-drive-ocamlfuse /drive2

现在,您将能够从/drive1/My Drive/访问第一个驱动器的文件,而从/drive2/访问第二个驱动器的文件(第二种方法不会创建我的驱动器文件夹自动)。 干杯!

有趣的事实:第二种方法实际上是在Google推出google.colab.drive

之前在Colab环境中挂载Google驱动器的常用方法。