首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >/tmp和/var/run中对子目录的权限丢失

/tmp和/var/run中对子目录的权限丢失
EN

Stack Overflow用户
提问于 2022-09-02 17:09:00
回答 1查看 58关注 0票数 0

我试图在k8s中部署一个停靠容器,该容器在/var/run下创建自己的子目录,但该目录的任何子目录似乎都不保留它们的权限。与root用户相比,docker映像是作为一个权限较低的用户运行的。我在k8s中运行这个程序,k8s的livenessCheck将在pod上执行并检查/var/run/myapp/somesubdir下的文件(在精神上类似于/proc和其他目录公开信息的方式)。

在代码中,在应用程序启动时,以下文件由代码编写:/var/run/myapp/test/var/run/myapp/somesubdir/test-2。在代码中,当试图写入这些文件时,我看到权限被拒绝的错误。

其中一个错误的示例:

代码语言:javascript
复制
threw exception; nested exception is java.nio.file.AccessDeniedException: /var/run/myapp/somesubdir/test-2

码头文件:

代码语言:javascript
复制
RUN adduser --system --disabled-password app-user && \
    groupadd app && \
    usermod -a -G app app-user && \
    mkdir -p /var/run/myapp/somesubdir && \
    chown -Rv app-user:app /var/run/myapp && \
    chmod -Rv 664 /var/run/myapp

USER app-user
# ...

如果我在舱里看到的是什么

代码语言:javascript
复制
app-user@mypod:/app$ stat /var/run/myapp/
  File: /var/run/myapp/
  Size: 4096        Blocks: 8          IO Block: 4096   directory
Device: 10008fh/1048719d    Inode: 12310926    Links: 3
Access: (0664/drw-rw-r--)  Uid: (  102/app-user)   Gid: ( 1000/     app)

app-user@mypod:/app$ stat /var/run/myapp/somesubdir
stat: cannot stat '/var/run/myapp/somesubdir': Permission denied

chown和chmod的输出确认这些更改正在使其成为所有子目录。这是预期的行为吗?这与它在/var/run下有什么关系吗?

编辑

我试着转到/tmp,我得到了同样的问题。

EN

回答 1

Stack Overflow用户

发布于 2022-09-02 21:36:05

chmod需要包含目录的执行权限。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73585949

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档