gpt4 book ai didi

Azure 文件共享所有者/组权限在 VM 重新启动时恢复

转载 作者:行者123 更新时间:2023-12-02 22:27:49 26 4
gpt4 key购买 nike

我正在将 Azure 文件共享安装到 Ubuntu 16.04 LTS 虚拟机上的 /elasticdata/azshare。我使用以下脚本安装驱动器:

sudo mkdir /elasticdata/fileshare
if [ ! -d "/etc/smbcredentials" ]; then
sudo mkdir /etc/smbcredentials
fi
if [ ! -f "/etc/smbcredentials/fileshare.cred" ]; then
sudo bash -c 'echo "username=fileshare" >> /etc/smbcredentials/fileshare.cred'
sudo bash -c 'echo "password=password" >> /etc/smbcredentials/fileshare.cred'
fi
sudo chmod 600 /etc/smbcredentials/fileshare.cred

sudo bash -c 'echo "//fileshare.file.core.windows.net/analysis /elasticdata/fileshare cifs nofail,vers=3.0,credentials=/etc/smbcredentials/fileshare.cred,dir_mode=0777,file_mode=0777,serverino" >> /etc/fstab'
sudo mount -t cifs //fileshare.file.core.windows.net/analysis /elasticdata/fileshare -o vers=3.0,credentials=/etc/smbcredentials/fileshare.cred,dir_mode=0777,file_mode=0777,serverino,uid=$(id -u elasticsearch),gid=$(id -g elasticsearch)

在最后一行中,我将安装位置的所有者和组设置为用户 elasticsearch 的所有者和组。我可以在安装驱动器后验证这是真的。

然后我创建一个符号链接(symbolic link),如下所示:

ln -s /elasticdata/fileshare/analysis /etc/elasticsearch

/etc/elasticsearch/analysis 中,我可以看到所有者和组是 elasticsearch 用户的所有者和组。

当我重新启动虚拟机时,我设置的所有者和组权限将恢复为 root 用户的权限,并且我的 Elasticsearch 集群由于以下错误而无法启动:

[HTTP/1.1 500 Internal Server Error]{"error":{"root_cause":[{"type":"access_control_exception","reason":"access denied (\"java.io.FilePermission\" \"/etc/elasticsearch/analysis/charmapping.txt\" \"read\")"}],"type":"access_control_exception","reason":"access denied (\"java.io.FilePermission\" \"/etc/elasticsearch/analysis/charmapping.txt\" \"read\")"},"status":500}`.

如何防止权限恢复?或者,我怎样才能让elasticsearch以不同的方式访问文件?

最佳答案

尝试使用/etc/fstab 在启动时挂载 cifs 文件系统。

基本的/etc/fstab 看起来像这样

/dev/hda2   /              ext2 defaults             1 1
/dev/hdb1 /home ext2 defaults 1 2
/dev/cdrom /media/cdrom auto ro,noauto,user,exec 0 0
/dev/fd0 /media/floppy auto rw,noauto,user,sync 0 0
proc /proc proc defaults 0 0
/dev/hda1 swap swap pri=42 0 0

我的猜测是您想在 cifs 文件系统的文件中添加一行。它应该看起来像这样。

//fileshare.file.core.windows.net/analysis /elasticdata/fileshare cifs defaults,uid=<user id you want>,gid=<group id you want> 0 0

关于Azure 文件共享所有者/组权限在 VM 重新启动时恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56266103/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com