اتصال گوگل درایو به گوگل کولب
گوگل کولب (Google Colab) یکی از ابزارهای قدرتمند گوگل برای اجرای نوتبوکهای پایتون در محیط ابری است. یکی از ویژگیهای مهم و کاربردی این ابزار، امکان اتصال به گوگل درایو (Google Drive) است که به کاربران اجازه میدهد به آسانی فایلهای ذخیره شده در درایو خود را در پروژههای کولب استفاده کنند. در این مقاله، نحوه اتصال گوگل درایو به گوگل کولب را با هم مرور میکنیم. همچنین چند دستور لینوکسی مفید را با هم مرور خواهیم کرد.
چرا باید گوگل درایو را به گوگل کولب متصل کنیم؟
همانطور که میدانید، گوگل کولب یک Virtual Machine یا ماشین مجازی است. دسترسی ما به این ماشین همیشگی نیست و با Restart آن، تمام فایلهای ذخیره شده در این ماشین از دست خواهند رفت!
یکی از مهمترین ویژگیهای گوگل کولب، امکان اتصال آن به گوگل درایو است. خب حالا این به چه درد میخورد. گفتیم که با ریست نوتبوک کولب، اطلاعات ما از دست خواهد رفت. اما اگر اطلاعاتمان را در درایو ذخیره و درایو را به کولب متصل کنیم، میتوانیم از اطلاعاتمان در کولب استفاده کنیم درست است؟ حتی میتوانیم بعد از پردازشهایی که روی دادهها انجام دادیم، نتایج را مجدد در درایو ذخیره کنیم. با این کار دیگر لازم نیست نگران از دست رفتن اطلاعاتمان باشیم. در ادامه توضیح خواهیم داد که چگونه میتوان گوگل درایو را به کولب متصل نمود.
اتصال گوگل درایو به گوگل کولب
برای اتصال گوگل درایو به گوگل کولب، مراحل زیر را دنبال کنید:
فراخوانی drive
در اولین قدم باید drive را فراخوانی کنیم. برای این کار، دستور زیر را اجرا کنید:
from google.colab import drive
اتصال درایو
حالا برای راهاندازی درایو و اتصال آن به کولب، دستور زیر را اجرا کنید:
drive.mount('/content/drive')
آدرسی که به عنوان ورودی به متد mount میدهیم، دلخواه است. یعنی شما میتوانید مسیر دیگری با نام دیگری انتخاب کنید.این آدرس، در واقع همان مسیری است که درایو در آن قرار خواهد گرفت. با اجرای این دستور، یک پاپآپ باز خواهد شد:
گزینه Connect to Google Drive را انتخاب کنید. با این کار از شما خواسته میشود که اکانت ایمیل خود را مشخص کنید:
بعد از انتخاب ایمیل دو مرحله دیگر هم هست که باید گزینه Continue را انتخاب کنید. گوگل در این مراحل از شما اجازههای لازم را برای دسترسی به اطلاعات اکانت و درایو میگیرد. در نهایت، با گذراندن این دو مرحله، مشاهده خواهید که درایو شما در مسیری که مشخص کردید ظاهر میشود:
میانبر اتصال به کولب!
در بخش قبل گفتیم که باید کدنویسی کنیم و یکسری تاییدها را انجام دهیم که به درایو برسیم. برای آن بخش کدنویسی یک میانبر وجود دارد. اگرچه وقعا در چشم بر هم زدنی این دو خط کد نوشته میشوند.
روی نوار سمت چپ کولب، فایل و سپس آیکن mount drive را انتخاب کنید:
پیام زیر ظاهر خواهد شد:
باز هم Connect to Google Drive را انتخاب کنید. مشاهده میکنید که به راحتی درایو شما mount شد. البته گاهی اوقات در این روش، آن دو خط کدی که گفتیم را در یک سلول میگذارد و میگوید این سلول را اجرا کن، که در این صورت مطابق با روش قبلی مراحل را انجام دهید.
خب، تمام شد. تا اینجا گوگل درایو را به گوگل کولب متصل کردیم. در ادامه چند دستور کاربردی که در محیط گوگل کولب میتواند مفید باشد را با هم مرور خواهیم کرد. این دستورها هم برای فایلها و پوشههای Google Colab و هم برای Google Drive قابل استفاده هستند.
دستورهای مفید برای کار با درایو در Colab
همانطور که قبلا هم گفتیم، گوگل کولب یک ماشین مجازی است. سیستم عامل این ماشین، لینوکس است. گاهی شما نیاز به انجام دادن کارهایی مثل ساختن یک پوشه، حذف یک فایل و غیره داشته باشید که با استفاده از دستورات لینوکسی این امر امکانپذیر است. در ادامه چند مورد از این دستورها را بررسی خواهیم کرد.
برای پیشبرد بهتر این بخش، در گوگل درایو یک پوشه با نام images ساختهام و در آن تعدادی تصویر گذاشتهام. دستورها را روی این پوشه و فایلهایش اجرا خواهیم کرد.
لیست فایلهای موجود در یک پوشه
برای اینکه تمام فایلهای موجود در یک پوشه را لیست کنیم، از ls استفاده میکنیم. به این شکل:
!ls /content/drive/MyDrive/images
با اجرای این خط کد خواهیم داشت:
dog-puppy-on-garden.jpg Dogs-For-Good.jpg Golden+Retrievers+dans+pet+care.jpeg Orange-colored-cat-yawns-displaying-teeth.jpg two-different-breeds-of-cats-side-by-side-outdoors-in-the-garden.jpg 'VIER PFOTEN_2016-07-08_011-4993x3455-1920x1329.jpg'
مشاهده میکنید که نام تمامی تصاویر موجود در پوشه images، لیست شده است.
کپی کردن یک فایل از کولب به درایو و برعکس
کپی کردن یک فایل از کولب به درایو و برعکس با استفاده از دستور cp انجام میشود. جلوی این دستور ابتدا آدرس فایلی که میخواهیم جابجا کنیم را نوشته و سپس آدرس مسیری که میخواهیم فایل را به آنجا منتقل کنیم مینویسیم. من یک تصویر را در کولب کپی کردم و حالا میخواهم آن را به پوشه images در درایو منتقل کنم. برای این کار کافی است بنویسم:
!cp /content/cutest-dog-breeds.jpg /content/drive/MyDrive/images/
با اجرای این کد انتقال مورد نظر ما انجام خواهد شد. این کد خروجی ندارد، اما اگر این تکه کد را به انتهای آن اضافه کنیم، در صورتی که انتقال موفقیت آمیز باشد یا نباشد، پیامی که مشخص کردیم را نمایش خواهد داد:
!cp /content/cutest-dog-breeds.jpg /content/drive/MyDrive/images/ && echo "Transfer Successful!" || echo "Transfer Failed!"
دستور echo مشابه با دستور print در پایتون است و متن جلویش را نمایش میدهد. اگر کد با موفقیت اجرا شود، دستورهای جلوی && اجرا میشوند، در غیر اینصورت دستورهای جلوی || اجرا میشوند.
حذف کردن کردن یک فایل
برای حذف یک فایل از دستور rm استفاده کنید:
!rm /content/drive/MyDrive/images/cutest-dog-breeds.jpg
با اجرای این دستور، تصویر cutest-dog-breeds.jpg از درایو حذف خواهد شد. اگر بخواهید مطمئن شوید که این فایل واقعا حذف شده یا خیر، دستور زیر را اجرا کنید:
!test -f '/content/drive/MyDrive/images/cutest-dog-breeds.jpg' && echo "File exists!"|| echo "File does not exist."
این دستور چک میکند که آیا یک فایل خاص با آدرس مشخص شده وجود دارد یا خیر. با اجرای کد بالا خروجی زیر را خواهید داشت:
File does not exist.
که نشان میدهد فایل موردنظر با موفقیت حذف شده است.
ساختن یک پوشه
برای ساختن یک پوشه از دستور mkdir استفاده کنید. به عنوان مثال بیایید در پوشه images یک پوشه جدید با نام new بسازیم:
!mkdir /content/drive/MyDrive/images/new
حالا بیایید چک کنیم که آیا پوشه به درستی ساخته شده یا نه. برای این کار از کد زیر استفاده کنید:
!test -d /content/drive/MyDrive/images/new && echo "Folder exists!"|| echo "Folder does not exist."
Folder exists!
خب، مشاهده میکنید که پوشه مورد نظر ساخته شده است.
نتیجهگیری
در این پست، دو روش اتصال گوگل درایو به گوگل کولب را با هم مرور کردیم. گفتیم که اگر فایلهای بزرگی دارید که میخواهید روی آنها پردازشهای مختلف انجام دهید، شاید بهتر باشد آن را در درایو ذخیره کرده و بعد با آن کار کنید. چون فضای ذخیرهسازی کولب موقت بوده و با ریستارت کرنل، اطلاعات ذخیره شده روی آن از بین خواهد رفت! در ادامه هم چند دستور لینوکسی مفید برای کار با فایلها بررسی کردیم. لطفا نظر خودتان را در مورد این پست برایمان کامنت کنید. تا آموزش بعدی، خدانگهدار.
مطالب زیر را حتما مطالعه کنید
Markdown در Google Colab
3 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
سلام ممنون ازتون
فقط چطوری دسترسی گوگل درایو رو از کولب بگیریم؟
من بسیار لذت بردم مرسی از شما
سپاس 😊