美文网首页
Linux用户权限

Linux用户权限

作者: Aeroball | 来源:发表于2021-09-18 19:58 被阅读0次
问题:

linux环境下,/fileserve目录的所属组为transfer,有写权限;
现在有java程序运行用户runapp,所属组为appgrp,附属组为transfer
现发现linux服务器中,直接用runapp用户登录,可/fileserve目录下创建文件,但是由runapp创建的java进程却没有写权限。

    注:
       问题前后java进程启动了两次:
          1. 第一次由由自动化代理程序调起,自动化进程名:susagent 
          2. 第二次由linux服务器`runapp`手工执行脚本调起的
现场:

自动化进程启动时间:15号;
runapp用户附属组transfer是在17号添加的,之后没有重启过代理susagent进程;
18号发现问题,手工重启java进程后,发现java程序运行用户runapp/fileserve目录又拥有了写权限。

排查问题:

为什么手工重启java进程后又可以?

分析java进程前后差异,发现没有权限的java进程是由自动化代理进程susagent调起的,而且有权限java进程是linux服务器runapp手工执行脚本重启的。

定位问题:为什么自动化代理调起的进程无权?真的狗啊

用的runapp调起自动化代理进程,同时调起通过自动化调起的java进程运行用户也是runapp,所属组权限也没问题,怎么这么狗偏偏自动化代理调起的进程没权限?
最后发现自动化代理进程是15号调起的,而runapp用户附属组transfer是在17号添加的。
最后在无数次的调式中发现,自动化进程启动之后,对进程所属用户添加附加组,发现所属用户并没有附加组的权限,重启之后即可。

结论:
    `susagent`进程调起的`java`进程(运行用户为`runapp`),在linux服务器中直接对`runapp`
添加附加组,用自动化部署平台不断重启`java`进程,`runapp`用户所添加的附属组并不会生效,因为
自动化`java`进程是由`susagent`进程调起的,而`susagent`在`runapp`添加附加组后一直没有重启
过,所以`susagent`进程的运行用户`runapp`并不会拥有附属组权限,自然而然由`susagent`进程调起
的`java`也不会继承附属组权限

相关文章

  • Linux权限管理

    Linux的权限管理操作Linux的权限操作与用户、用户组是兄弟操作。 一、权限概述 总述:Linux系统一般将文...

  • Linux文件权限管理

    Linux文件权限管理 linux文件属性 改变权限 查看用户组

  • Lesson 006 —— Linux 用户与权限

    Lesson 006 —— Linux 用户与权限 useradd username 添加用户 Linux 系统中...

  • Linux 用户权限设置

    Linux系统权限 Linux系统默认root用户为系统最高权限 创建用户/用户组 可通过操作命令的方式为系统增加...

  • Linux的ROOT账号的思考

    Linux权限 Linux权限分为普通用户、sudo权限、ROOT权限。 【1】普通权限,能执行在操作系统执行一般...

  • linux权限管理

    linux 权限分组 linux的权限是以下分类owner 所属主group 所属主同组other 其他用户 权限...

  • Linux权限控制

    Linux权限控制Linux的权限,是指某个用户对某个文件(文件夹)的操作权限。这里涉及用户组的概念。注意事项:L...

  • Linux用户及用户组

    用户、组和权限管理 组 Linux用户和组管理

  • Linux的权限管理操作

    Linux的权限管理操作 在Linux中分别有读、写、执行权限: 读权限: 对于文件夹来说,读权限影响用户是否能够...

  • day15 预习笔记

    Linux系统权限知识 文件权限为说明: 前三位是用户权限位 中三位表示用户组权限位 ...

网友评论

      本文标题:Linux用户权限

      本文链接:https://www.haomeiwen.com/subject/pmeygltx.html