Bu konu, ossfs 1,0 kullanarak bir OSS paketini Linux'ta yerel dosya sistemine nasıl bağlayacağınızı açıklar.
Ön koşullar
Bağlama komutu biçimi
Komut biçimi:
ossfs bucket_name /tmp/ossfs -o url=http://oss-cn-hangzhou.aliyuncs.com -o sigv4 -o region=cn-hangzhou-
Parametre açıklaması
ossfs: ossfs komutu.bucket_name: Bağlanacak paketin adı./tmp/ossfs: Paketi bağlamak için kullanılan yerel dizin (bağlama noktası olarak da bilinir).-o: Bağlama seçenekleri için gerekli ön ek.-
url=http://oss-cn-hangzhou.aliyuncs.com:urlbağlama seçeneği, hedef paketin uç noktasını belirtir. Değer biçimihttp://endpointşeklindedir.Paketinizin uç noktasını bulmak için Bucket List sayfasına gidin, paketinizi seçin ve sol gezinme bölmesinde Overview öğesini tıklayın. Port bölümünde uç nokta görüntülenir. Bu örnekte Çin (Hangzhou) bölgesindeki bir paket kullanılmaktadır.
Belirli ağ ortamları için başka uç noktalar da mevcuttur:
oss-cn-hangzhou-internal.aliyuncs.comKlasik ağ veya VPC ağı üzerinden bir ECS örneğinden erişim için (dahili),oss-accelerate.aliyuncs.comküresel Transfer Acceleration alan adı için vecn-hangzhou-internal.oss-data-acc.aliyuncs.comOSS Accelerator için. Ağ ortamınıza göre bir uç nokta seçin. sigv4: V4 imzasını etkinleştirir. Bağlama komutuna-osigv4ekleyin. Varsayılan olarak ossfs V1 imzasını kullanır. Bu bağlama seçeneğini eklerseniz ossfs, istekleri OSS'ye V4 imzalama sürecini kullanarak gönderir.region=cn-hangzhou: OSS paketi isteği için bölge kimliği. Paketi bağlarken-oregion=<region_id>ekleyin. Varsayılan değer boştur. Bu seçenek, istek için bölgeyi belirtmek amacıyla V4 imzaları kullanılırken gereklidir.
Temel bağlama
Yapılandırma dosyası kullanarak bağlama
-
Bağlama dizinlerini oluşturun.
Paketleriniz için bağlama noktası olarak kullanmak üzere
/tmp/ossfs-1ve/tmp/ossfs-2boş dizinlerini oluşturmak için aşağıdaki komutu çalıştırın.mkdir /tmp/ossfs-1 /tmp/ossfs-2 -
Bağlama örneği.
Varsayılan yapılandırma dosyasında yapılandırılmış olan
bucket-test-1vebucket-test-2paketlerini sırasıyla/tmp/ossfs-1ve/tmp/ossfs-2dizinlerine bağlamak için aşağıdaki komutları çalıştırın.ossfs bucket-test-1 /tmp/ossfs-1/ -o url=http://oss-cn-hangzhou.aliyuncs.com -o sigv4 -o region=cn-hangzhou ossfs bucket-test-2 /tmp/ossfs-2/ -o url=http://oss-cn-hangzhou.aliyuncs.com -o sigv4 -o region=cn-hangzhou -
Çıktı aşağıdaki gibidir.
root@i-xxx:~# ossfs xxx /tmp/ossfs-1 -o url=http://oss-cn-hangzhou.aliyuncs.com -o sigv4 -o region=cn-hangzhou [NOTICE] OSS signature V1 service will not be available for new uids since March 1st, 2025. It is recommended to mount with OSS signature V4: ossfs [oss-bucket] [mount-path] [options] -osigv4 -oregion=[your-region-id] root@i-xxx:~# root@i-xxx :~# df -h /tmp/ossfs-1 Filesystem Size Used Avail Use% Mounted on ossfs 16E 0 16E 0% /tmp/ossfs-1
ECS RAM rolü kullanarak bağlama
-
Bir bağlama dizini oluşturun.
Paketiniz için bağlama noktası olarak kullanmak üzere
/tmp/ossfsboş dizinini oluşturmak için aşağıdaki komutu çalıştırın.mkdir /tmp/ossfs -
Bağlama örneği.
NotBir örnek meta verileri URL'si kullanarak ossfs bağlarken yalnızca normal erişim modu desteklenir. Meta veri erişim modları hakkında daha fazla bilgi için bkz. Örnek meta verileri.
bucket1adlı bir paketi yerel/tmp/ossfsdizinine bağlamak için aşağıdaki komutu çalıştırın.Not: Bir ECS RAM rolü kullanarak paket bağlarken, örnek meta verileri URL'sini
ram_roleparametresiyle belirtmeniz gerekir.100.100.100.200IP adresi, Alibaba Cloud ECS örnek meta verileri hizmeti için varsayılan değerdir ve değiştirilmemelidir.EcsRamRoleOssTestifadesini ECS örneğinize eklenen rolün adıyla değiştirin. Diğer bilgileri değiştirmeyin.ossfs bucket1 /tmp/ossfs -o url=http://oss-cn-hangzhou.aliyuncs.com -o ram_role=http://100.100.100.200/latest/meta-data/ram/security-credentials/EcsRamRoleOssTest -o sigv4 -o region=cn-hangzhou -
Çıktı aşağıdaki gibidir.
root@xxx xxx:~# ossfs xxx /tmp/ossfs -o url=http://oss-cn-hangzhou.aliyuncs.com -o ram role=http://100.100.100.200/latest/meta-data/ram/security-credentials/xxx -o sigv4 -o region=cn-hangzhou [NOTICE] OSS signature V1 service will not be available for new uids since March 1st, 2025. It is recommended to mount with OSS signature V4: ossfs [oss-bucket] [mount-path] [options] -osigv4 -oregion=[your-region-id] root@xxx xxx:~# root@xxx xxx:~# df -h /tmp/ossfs Filesystem Size Used Avail Use% Mounted on ossfs 16E 0 16E 0% /tmp/ossfs
Belirli senaryolarda bağlama
Belirli bir dizini bağlayabilir veya bağlama seçenekleri ekleyebilirsiniz. Seçeneklerin listesi için bkz. bağlama seçenekleri. Not: Bağlama komutunu çalıştırmadan önce yerel bağlama dizininin boş olduğundan emin olun.
Belirli bir dizini bağlama
bucket-ossfs-test paketindeki folder dizinini yerel /tmp/ossfs-folder dizinine bağlamak için aşağıdaki komutu çalıştırın.
ossfs bucket-ossfs-test:/folder /tmp/ossfs-folder -o url=http://oss-cn-hangzhou.aliyuncs.com -o sigv4 -o region=cn-hangzhou
Belirtilen bir yapılandırma dosyası kullanarak bağlama
Bağlama seçeneği: Varsayılan olmayan bir ossfs 1,0 yapılandırma dosyasının yolunu belirtmek için passwd_file bağlama seçeneğini kullanın. Dosyanın izinlerini 600 olarak ayarlayın.
-
Bağlama örneği
Belirtilen yapılandırma dosyasında yapılandırılmış olan
bucket-test-3paketini yerel/tmp/ossfs-3dizinine bağlamak için aşağıdaki komutu çalıştırın.ossfs bucket-test-3 /tmp/ossfs-3 -o url=http://oss-cn-hangzhou.aliyuncs.com -o passwd_file=/etc/passwd-ossfs-3 -o sigv4 -o region=cn-hangzhou
Bağlama sırasında hata ayıklama günlüklerini etkinleştirme
Bağlama seçeneği: dbglevel bağlama seçeneği günlük düzeyini ayarlar. Aşağıdaki günlük düzeyleri desteklenir:
critical,error,warn,infovedebug. Varsayılan değercriticaldeğeridir. Varsayılan olarak günlükler CentOS sistemlerinde /var/log/messages dosyasına ve Ubuntu sistemlerinde /var/log/syslog dosyasına kaydedilir. Günlük dosyası için özel bir yol belirtmek amacıylalogfilebağlama seçeneğini de kullanabilirsiniz.-
Bağlama örneği 1
bucket-ossfs-test-1paketini yerel/tmp/ossfs-1dizinine bağlamak için aşağıdaki komutu çalıştırın. Bu komutta,libfusehata ayıklama günlüğünü etkinleştirmek için-dseçeneği eklenir ve günlük düzeyinidebugolarak ayarlamak içindbglevelbağlama seçeneği kullanılır.ossfs bucket-ossfs-test-1 /tmp/ossfs-1 -d -o dbglevel=debug -o sigv4 -o region=cn-hangzhou -
Bağlama örneği 2
bucket-ossfs-test-2paketini yerel/tmp/ossfs-2dizinine bağlamak için aşağıdaki komutu çalıştırın. Günlük düzeyidebugolarak ayarlanır velibfusehata ayıklama günlüğü etkinleştirilir. Günlük iletileri-fseçeneği kullanılarak ön plan terminaline yazdırılır.ossfs bucket-ossfs-test-2 /tmp/ossfs-2 -d -o dbglevel=debug -f -o sigv4 -o region=cn-hangzhou
Bağlama sırasında erişim izinlerini yapılandırma
Varsayılan olarak, bağlama komutunu çalıştıran kullanıcı (sahip) dışında hiç kimse bağlanan dizine erişemez. Diğer kullanıcıların bağlama noktasına erişmesine izin vermek için paketi bağlarken aşağıda açıklanan parametreleri yapılandırın.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
Bağlama örneği 1
bucket_namepaketini yerelmount_pointdizinine bağlamak ve tüm kullanıcılara erişim izni vermek içinallow_otherbağlama seçeneğini kullanmak üzere aşağıdaki komutu çalıştırın. Bu işlem, bağlama dizininin izinlerini 777 olarak ayarlar.ossfs bucket_name mount_point -o url=endpoint -o allow_other -o sigv4 -o region=cn-hangzhou -
Bağlama örneği 2
bucket_namepaketini yerelmount_pointdizinine bağlamak ve bağlama dizini ile içindeki dosyaların izinlerini 770 olarak ayarlamak içinumaskbağlama seçeneğini kullanmak üzere aşağıdaki komutu çalıştırın. Bu işlem, erişimi yalnızca aynı gruptaki kullanıcılarla sınırlar.ossfs bucket_name mount_point -o url=endpoint -o umask=007 -o sigv4 -o region=cn-hangzhou -
Bağlama örneği 3
-
Belirli bir kullanıcının UID, GID ve gruplarını almak için aşağıdaki komutu çalıştırın. Bu örnekte
wwwkullanıcısı kullanılmaktadır.id wwwKomut çıktısı aşağıdaki gibidir.
root@iZbp1325rf1sja6ye4kbm2Z:~# id www uid=xxx(www) gid=xxx(www) groups=xxx(www) -
bucket_namepaketini yerelmount_pointdizinine bağlamak ve kullanıcı ile grubu belirtmek içinuidvegidbağlama seçeneklerini kullanmak üzere aşağıdaki komutu çalıştırın. Bu yapılandırma, erişimi yalnızca aynı gruptaki kullanıcılarla sınırlar ve izinleri 770 olarak ayarlar. Bu örnekteuidvegiddeğerleri 1000'dir. Bağlama komutunu çalıştırmadan önce bu değerleri hedef kullanıcınınuidvegiddeğerleriyle değiştirin.ossfs bucket_name mount_point -o url=endpoint -o allow_other -o uid=1000 -o gid=1000 -o umask=007 -o sigv4 -o region=cn-hangzhou
-
Kullanışlı ipuçları
Başlangıçta otomatik bağlama
Paketin bağlantısını kaldırma
Bir paketin bağlantısını kaldırmak için aşağıdaki komutu çalıştırın. Örneğin, /tmp/ossfs konumuna bağlanan dosya sisteminin bağlantısını kaldırmak için:
umount /tmp/ossfs
SSS
Windows sisteminde bir OSS paketi bağlamak için Cloud Storage Gateway (CSG) kullanın. Daha fazla bilgi için bkz. Alibaba Cloud konsolunda dosya ağ geçidi kullanma ve SMB paylaşılan dizine erişme.
Bir ECS örneğinden dahili uç nokta üzerinden bir OSS paketi bağlamak trafik ücretine neden olmaz. Trafik ücretleri hakkında daha fazla bilgi için bkz. Trafik ücretleri.
ECS örneğiniz ve OSS paketiniz farklı bölgelerdeyse ve paketi bölgeler arasında bağlamanız gerekiyorsa ağ bağlantısını sağladığınızdan emin olun. Paketi bağlamak için doğrudan genel bir uç nokta kullanabilirsiniz. Ayrıca ECS örneğinin başka bir bölgedeki OSS hizmetine özel ağ üzerinden erişmesini etkinleştirme özelliğini de kullanabilirsiniz.
Cloud Storage Gateway kullanarak bir IIS web sitesi oluşturmanız ve veri depolama için OSS kullanmanız gerekiyorsa bkz. Alibaba Cloud Storage Gateway kullanarak IIS web sitesi oluşturma.
Windows işletim sisteminde bir OSS paketi bağlamanız gerekiyorsa bkz. Rclone.
Bağlama ve izinlerle ilgili sorunlar hakkında daha fazla bilgi için bkz. SSS.