Halaman ini menjelaskan beberapa cara untuk memasang bucket Cloud Storage ke sistem file lokal Anda menggunakan Cloud Storage FUSE.
Sebelum memulai
Untuk memasang bucket, Anda harus menyelesaikan tugas berikut terlebih dahulu.
Mendapatkan peran yang diperlukan
Untuk memasang bucket, minta pemilik bucket untuk memberi Anda Storage Object Viewer
(roles/storage.objectViewer
) pada bucket. Perhatikan bahwa jika Anda membuat
bucket, Anda mungkin sudah memiliki peran Storage Admin (roles/storage.admin
)
pada bucket dan tidak memerlukan peran Storage Object Viewer.
Peran standar Storage Object Viewer berisi izin yang diperlukan untuk memasang bucket. Untuk melihat izin yang diperlukan, luaskan Bagian Izin yang diperlukan:
Izin yang diperlukan
storage.objects.list
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk mengetahui petunjuk tentang cara memberikan peran pada bucket, lihat Menggunakan IAM dengan bucket.
Menginstal Cloud Storage FUSE
Jika Anda belum melakukannya, instal Cloud Storage FUSE.
Melakukan Autentikasi permintaan Cloud Storage FUSE
Untuk mengautentikasi permintaan Cloud Storage FUSE ke Cloud Storage, Anda harus siapkan Kredensial Default Aplikasi. Secara default, Cloud Storage FUSE otomatis memuat Kredensial Default Aplikasi yang ada tanpa konfigurasi lebih lanjut.
Agar dapat menggunakan Google Cloud CLI untuk menyiapkan Kredensial Default Aplikasi, selesaikan langkah-langkah berikut:
- Menginstal Google Cloud CLI.
-
Untuk initialize gcloud CLI, jalankan perintah berikut:
gcloud init
-
Buat kredensial autentikasi lokal untuk Akun Google Anda:
gcloud auth application-default login
Saat Anda membuat mesin virtual (VM) Compute Engine, akun layanannya juga dapat digunakan untuk mengautentikasi akses ke Cloud Storage FUSE.
Memasang bucket
Untuk memasang bucket ke sistem file lokal, gunakan perintah berikut:
gcsfuse GLOBAL_OPTIONS BUCKET_NAME MOUNT_POINT
Dengan keterangan:
GLOBAL_OPTIONS
adalah opsi yang dapat Anda sertakan untuk mengontrol cara pemasangan. Untuk informasi lebih lanjut tentang opsi dan cara menggunakannya, lihat opsi Cloud Storage FUSE CLI.BUCKET_NAME
adalah nama bucket yang ingin Anda pasang. Misalnya,my-bucket
. Jika ingin menjalankan pemasangan dinamis, kecualikan nama bucket dari perintah.MOUNT_POINT
adalah direktori lokal tempat bucket dipasang. Misalnya,/path/to/mount/point
.
Setelah Cloud Storage FUSE keluar, Anda dapat mengakses bucket yang telah terpasang dengan menjalankan
ls
pada direktori pemasangan bucket. Jika ingin Cloud Storage FUSE tetap berada di
latar depan (misalnya, untuk logging debug), Anda dapat menjalankan perintah gcsfuse
dengan flag --foreground
.
Contoh pemasangan
Bagian ini menjelaskan berbagai contoh perintah untuk memasang bucket.
Pemasangan statis
Pemasangan statis mengacu pada pemasangan bucket tertentu. Misalnya, untuk memasang
bucket my-bucket
ke direktori /path/to/mount/point
, jalankan perintah
berikut:
mkdir /path/to/mount/point
gcsfuse my-bucket /path/to/mount/point
Pemasangan dinamis
Pemasangan dinamis mengacu pada pemasangan semua bucket yang dapat diakses pengguna sebagai subdirektori.
Saat menjalankan pemasangan dinamis, Anda mengecualikan
nama bucket dari perintah. Misalnya, Anda memiliki akses ke my-bucket-1
,
my-bucket-2
, dan my-bucket-3
. Untuk memasang semua bucket ke direktori
/path/to/mount/point
, jalankan perintah berikut:
mkdir /path/to/mount/point
gcsfuse /path/to/mount/point
Selanjutnya, Anda dapat mengakses bucket sebagai subdirektori:
ls /path/to/mount/point/my-bucket-1/
ls /path/to/mount/point/my-bucket-2/
ls /path/to/mount/point/my-bucket-3/
Bucket yang dipasang secara dinamis tidak dapat dicantumkan dari direktori pemasangan root. Sebagai gantinya, nama bucket harus ditentukan sebagai bagian dari operasi daftar.
Memasang bucket sebagai hanya-baca
Untuk memasang bucket sebagai hanya baca, teruskan opsi -o ro
ke
perintah gcsfuse
Anda. Misalnya, untuk memasang bucket my-bucket
sebagai hanya baca ke
direktori /path/to/mount/point
, jalankan perintah berikut:
gcsfuse -o ro my-bucket /path/to/mount/point
Memasang direktori dalam bucket
Secara default, Cloud Storage FUSE memasang bucket secara keseluruhan, yang mencakup semua
konten bucket dan struktur direktori. Untuk memasang direktori tertentu dalam
bucket, teruskan opsi --only-dir
ke perintah gcsfuse
Anda. Misalnya,
untuk memasang direktori my-bucket/a/b
ke direktori /path/to/mount/point
,
jalankan perintah berikut:
gcsfuse --only-dir a/b my-bucket /path/to/mount/point
Pemasangan menggunakan perintah mount
Linux
Penginstalan FUSE Cloud Storage menyertakan helper yang dipahami oleh Linux
Perintah mount
, yang memungkinkan Anda menggunakan perintah mount
untuk memasang bucket.
Perintah mount
harus dijalankan dari root jika Anda menggunakan Linux. Misalnya,
perintah berikut memasang bucket my-bucket
ke jalur
/path/to/mount/point
:
sudo mount -t gcsfuse -o rw,user my-bucket /path/to/mount/point
Saat memasang menggunakan perintah mount
Linux, opsi CLI Cloud Storage FUSE dapat diteruskan sebagai argumen ke flag -o
, tetapi tanda hubung (-
) di dalamnya harus diganti dengan garis bawah (_
).
Misalnya, implicit_dirs
, bukan implicit-dirs
.
sudo mount -t gcsfuse -o implicit_dirs my-bucket /path/to/mount/point
Pemasangan persisten
Penginstalan Cloud Storage FUSE menyertakan bantuan yang diinstal ke
sistem Anda di jalur /sbin/mount.gcsfuse
. Helper ini memungkinkan Anda membuat
titik pemasangan menggunakan file /etc/fstab
, sehingga Anda dapat mempertahankan pemasangan.
Misalnya, saat ditambahkan ke file /etc/fstab
, baris berikut menentukan
direktori pemasangan untuk bucket my-bucket
di jalur /mount/point
:
my-bucket /mount/point gcsfuse rw,noauto,user
Dengan keterangan:
Opsi
rw
menentukan bahwa direktori pemasangan dibuat dengan izin baca dan tulis.Opsi
noauto
menentukan bahwa sistem file tidak boleh dipasang saat booting.Opsi
user
memungkinkan siapa saja membuat direktori pemasangan yang ditentukan dalam file/etc/fstab
. Setelah baris contoh ditambahkan ke file/etc/fstab
, Anda dapat menjalankanmount /mount/point
sebagai pengguna non-root.
Jika ingin memasang bucket secara otomatis saat booting, Anda mungkin perlu menyertakan
opsi x-systemd.requires=network-online.target
atau opsi _netdev
dalam entri /etc/fstab
, untuk memastikan bahwa Cloud Storage FUSE menunggu agar
sistem jaringan siap sebelum dipasang. Contoh:
my-bucket /mount/point gcsfuse rw,x-systemd.requires=network-online.target,user
Anda dapat memasang bucket secara otomatis sebagai pengguna non-root tertentu dengan menyertakan
opsi uid
, gid
, atau keduanya dalam entri /etc/fstab
Anda. Contoh:
my-bucket /mount/point gcsfuse rw,_netdev,allow_other,uid=1001,gid=1001
Mirip dengan perintah mount
linux, flag yang digunakan untuk memasang di
file /etc/fstab
harus menggunakan garis bawah (_
), bukan tanda hubung (-
).
Misalnya, implicit_dirs
, bukan implicit-dirs
.
Memasang bucket dengan folder
Untuk memasang bucket termasuk folder terkelola, sertakan
--implicit-dirs
dalam perintah Anda.
Misalnya, untuk memasang bucket my-bucket
dan folder terkelolanya ke
direktori /path/to/mount/point
, jalankan perintah berikut:
mkdir /path/to/mount/point
gcsfuse --implicit-dirs my-bucket /path/to/mount/point
Saat memasang bucket dengan folder terkelola, pastikan hal berikut keterbatasan dan pertimbangan:
Folder terkelola kosong tidak akan muncul di bucket yang terpasang.
Anda tidak dapat menetapkan atau mengelola izin IAM di folder terkelola dengan menggunakan Cloud Storage FUSE. Untuk menetapkan atau mengelola IAM izin pada folder terkelola, lihat Menggunakan IAM dengan folder terkelola.
Anda dapat menyalin dan memindahkan folder terkelola di bucket yang terpasang menggunakan
cp
danmv
. Saat Anda menyalin atau memindahkan folder terkelola, Kebijakan IAM pada folder terkelola asli tidak berlaku ke folder terkelola yang baru. Anda harus menetapkan kebijakan IAM baru pada folder terkelola yang baru.
Mengontrol izin akses ke direktori pemasangan
Secara default, Cloud Storage FUSE membuat direktori pemasangan bucket dengan izin yang hanya memungkinkan pengguna yang memanggil untuk mengakses konten bucket yang terpasang. Ini adalah langkah keamanan yang diimplementasikan dalam kernel FUSE.
Untuk memasang bucket dan mengizinkan orang lain mengakses direktori pemasangan bucket, Anda dapat menjalankan
perintah mount
sebagai root dengan opsi -o allow_other
:
mount -t gcsfuse -o allow_other my-bucket /path/to/mount/point
Jika ingin menghindari pemasangan bucket sebagai root, Anda harus menambahkan user_allow_other
ke file /etc/fuse.conf
agar orang lain dapat mengakses
direktori pemasangan bucket.
Untuk mengakses bucket yang terpasang, pengguna lain, selain pengguna yang memanggil,harus memiliki izin IAM yang diperlukan.
Peran yang diperlukan untuk mengakses bucket yang terpasang
Untuk membaca dari dan menulis ke bucket yang terpasang, minta pemilik bucket untuk memberi Anda
peran Storage Object User (roles/storage.objectUser
) di bucket.
Peran yang telah ditetapkan ini berisi izin yang diperlukan untuk membaca dari bucket dan menulis ke bucket yang terpasang. Untuk melihat izin yang tepat yang diperlukan, luaskan bagian Izin yang diperlukan:
Izin yang diperlukan
storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.list
storage.objects.update
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk mengetahui petunjuk tentang cara memberikan peran pada bucket, lihat Menggunakan IAM dengan bucket.
Melepas bucket
Untuk melepaskan bucket, gunakan alat fusermount
:
fusermount -u /path/to/mount/point
Langkah selanjutnya
Pelajari praktik terbaik dan tips untuk menggunakan FUSE Cloud Storage, seperti caranya untuk mengontrol perilaku penyimpanan cache atau aktivitas log.
Pelajari semantik direktori di Cloud Storage FUSE.