644
e 755
são as permissões padrão para todos os inodes de arquivo e diretório em um sistema de arquivos gsfuse. Você pode usar os sinalizadores --file-mode
e --dir-mode
para controlá-los. Consulte aqui para documentação.
No momento, estamos tentando demonstrar a plataforma de nuvem do Google para algumas cargas de trabalho que exigem muito armazenamento. Estamos tentando usar o armazenamento em nuvem do Google, mas estamos tendo problemas para montar os blocos usando o gcsfuse. Atualmente, posso montar meu bloco de teste como o usuário raiz (com a opção allow_other configurada), mas os usuários não raiz só têm acesso de leitura.
Coisas que tentei e verifiquei:
gcloud config list | grep account
recebeu acesso de proprietário para este intervalo Aqui está a saída do console - Catting e tocando em animal.txt para atualizar o registro de data e hora.
root@vm-00 cloud]# grep bucket /etc/fstab
test_bucket_00 /data/cloud/tb-00 gcsfuse rw,allow_other
[root@vm-00 cloud]# mount tb-00
Calling gcsfuse with arguments: -o rw -o allow_other test_bucket_00 /data/cloud/tb-00
Using mount point: /data/cloud/tb-00
Opening GCS connection...
Opening bucket...
Mounting file system...
File system has been successfully mounted.
[root@vm-00 cloud]# mount | grep bucket
test_bucket_00 on /data/cloud/tb-00 type fuse (rw,nosuid,nodev,allow_other,default_permissions)
[root@vm-00 cloud]# ls -lh /data/cloud/tb-00/animal.txt ; date ; touch/data/cloud/tb-00/animal.txt ; ls -lh /data/cloud/tb-00/animal.txt
-rw-r--r--. 1 root root 20 Jan 21 00:24 /data/cloud/tb-00/animal.txt
Thu Jan 21 00:25:37 UTC 2016
-rw-r--r--. 1 root root 20 Jan 21 00:25 /data/cloud/tb-00/animal.txt
[root@vm-00 cloud]# cat /data/cloud/tb-00/animal.txt
ants bats cats dogs
[root@vm-00 cloud]# ls -lh /data/cloud
total 4.0K
drwxr-xr-x. 1 root root 0 Jan 21 00:25 tb-00
[root@vm-00 cloud]# chmod 777 /data/cloud/tb-00
[root@vm-00 cloud]# ls -lh /data/cloud
total 4.0K
drwxr-xr-x. 1 root root 0 Jan 21 00:25 tb-00
[root@vm-00 cloud]# gcloud config list
Your active configuration is: [NONE]
[core]
account = [email protected]
disable_usage_reporting = True
project = testing1-1148
[root@vm-00 cloud]#
e agora como um usuário não raiz, consigo ver o conteúdo de animal.txt, mas não consigo tocar no arquivo ou criar um novo arquivo nesse diretório. :
[testuser@vm-00 ~]$ cat /data/cloud/tb-00/animal.txt
ants bats cats dogs
[testuser@vm-00 ~]$ touch /data/cloud/tb-00/mineral.txt
touch: cannot touch '/data/cloud/tb-00/mineral.txt': Permission denied
[testuser@vm-00 ~]$ gcloud config list
Your active configuration is: [NONE]
[core]
account = [email protected]
disable_usage_reporting = True
project = testing1-1148
O gcs é o caminho certo para fazer isso ou há uma solução melhor para montar um repositório de armazenamento do Google Cloud disponível em todo o sistema? Eu sei que os médicos dizem para não montar o balde como root, mas eu não vi nada que explicasse porque é ruim. Eu tentei montar como um usuário nonroot, mas eu tenho um problema de permissão, mesmo depois que o usuário foi adicionado ao grupo de fusíveis. Eu não tenho certeza se isso está relacionado ao meu problema, mas eu adoraria mergulhar nisso uma vez que eu comecei a trabalhar.
644
e 755
são as permissões padrão para todos os inodes de arquivo e diretório em um sistema de arquivos gsfuse. Você pode usar os sinalizadores --file-mode
e --dir-mode
para controlá-los. Consulte aqui para documentação.
Para criar a entrada fstab usando o exemplo de echdee, especifique os atributos gsfuse dir-mode e file-mode com underscores:
test_bucket_00 /data/cloud/tb-00 gcsfuse rw,allow_other,file_mode=777,dir_mode=777