linux系统中如何在root用户中将某个文件夹目录的权限赋值给其它用户(主要说的是 方法 1)

✅ 方法 1:使用 root 用户创建目录(推荐)

最安全、最标准的做法是:用 root 用户创建目录,然后赋权给 elasticsearch 用户

复制代码
# 切换到 root 用户(或直接登录 root)
sudo su -

# 在 /opt 下创建 kibana 目录
mkdir /opt/kibana

# 将目录所有权交给 elasticsearch 用户和组
chown elasticsearch:elasticsearch /opt/kibana

# 设置权限(可选)
chmod 755 /opt/kibana

# 退出 root
exit

然后你就可以用 elasticsearch 用户操作了:

复制代码
su - elasticsearch
cd /opt/kibana
# 此时可以自由解压、配置 Kibana

✅ 方法 2:临时给 elasticsearch 用户添加 sudo 权限(不推荐用于生产)

如果你确实需要elasticsearch 用户使用 sudo(例如用于自动化脚本),可以将其加入 sudoers

步骤:
复制代码
# 用 root 编辑 sudoers 文件(必须用 visudo)
sudo visudo

# 添加以下行(推荐使用 wheel 组)
elasticsearch ALL=(ALL) NOPASSWD: ALL

# 或者将用户加入 wheel 组(更标准)
usermod -aG wheel elasticsearch

⚠️ 注意:生产环境不建议给服务账户(如 elasticsearchsudo 权限,有安全风险


✅ 方法 3:不要把 Kibana 装在 /opt(替代方案)

你可以选择在 elasticsearch 用户有权限的目录下安装 Kibana,例如:

复制代码
su - elasticsearch
cd ~
mkdir kibana
cd kibana
# 在这里解压 kibana-*.tar.gz

即:把 Kibana 安装在 /home/elasticsearch/kibana,避免权限问题。

但通常生产环境还是推荐统一放在 /opt


🛠️ 最佳实践建议

建议 说明
服务目录归 root 创建,属主给服务用户 如:/opt/kibana 由 root 创建,chown elasticsearch:elasticsearch
服务用户不要给 sudo 权限 避免权限过大,违反最小权限原则
使用 systemd 管理服务 启动时自动以正确用户运行,无需手动 su
保持 /opt 目录整洁 所有中间件统一管理

✅ 验证修复

修复后,你应该可以:

复制代码
# 切换到 elasticsearch 用户
su - elasticsearch

# 直接创建文件(无需 sudo)
cd /opt/kibana
echo "test" > test.txt

不会报权限错误。


📌 总结

问题 原因 解决方案
elasticsearch is not in the sudoers file elasticsearch 用户不能使用 sudo root 创建目录并赋权
无法在 /opt 创建文件 /opt 默认只有 root 可写 root 创建 + chownelasticsearch
服务用户是否该有 sudo? ❌ 不推荐 遵循最小权限原则

推荐操作流程:

复制代码
# 1. 用 root 操作
sudo su -
mkdir /opt/kibana
chown elasticsearch:elasticsearch /opt/kibana
exit

# 2. 切换回 elasticsearch 用户
su - elasticsearch
cd /opt/kibana
# 现在可以自由操作了

这样既安全又符合 Linux 权限管理规范。

相关推荐
Java小白笔记26 分钟前
Docker 安装配置完全指南:MacOS 、Windows、Linux环境下的安装、配置与验证
linux·macos·docker
qetfw2 小时前
CentOS 7 搭建 LDAP 目录服务
linux·运维·centos
ALINX技术博客3 小时前
【黑金云课堂】FPGA技术教程Linux开发:系统进阶-PS DMA
linux·fpga开发
IT方大同4 小时前
linux简介
linux·运维·服务器
mounter6254 小时前
从内存隔离到运行时防线:透视 Linux 内核安全强化的博弈与演进
linux·网络·安全·linux kernel·kernel
微道道5 小时前
Linux盒子局域网内使用 .local 域名访问,告别IP变化烦恼
linux·运维·服务器·hermes
Bug退散师6 小时前
多路IO复用[select版TCP服务器与poll版TCP服务器]与常用网络编程函数详解
linux·服务器·c语言·网络·驱动开发·tcp/ip
xiaoye-duck6 小时前
《Linux系统编程》Linux 系统多线程(一):线程概念(从虚拟地址空间与分页机制到优缺点解析)
linux·线程
国服第二切图仔6 小时前
05-构建与特性开关
linux·服务器·ubuntu
FREEDOM_X6 小时前
嵌入式——定时器工作原理
linux·c语言·单片机·嵌入式硬件·ubuntu