当然,以下是在CentOS 7上使用普通用户minio安装和配置MinIO的完整步骤,包括设置密码、设置开机自启动,以及使用minio用户启动和关闭服务的过程:

  1. 创建MinIO用户:

    sudo useradd -m minio
    sudo passwd minio
    

    这将创建一个可以登录的用户minio并设置密码。

  2. 安装wget (如果系统尚未安装):

    sudo yum install wget
    
  3. 下载MinIO服务器:

    wget https://dl.min.io/server/minio/release/linux-amd64/minio
    chmod +x minio
    sudo mv minio /usr/local/bin
    

    这将下载MinIO二进制文件,赋予执行权限,并移动到/usr/local/bin

  4. 创建数据目录:

    sudo mkdir /data
    sudo chown -R minio:minio /data
    

    这将创建一个名为/data的目录,并将其所有权分配给minio用户。

  5. 创建环境变量文件:

    sudo nano /etc/default/minio
    

    在该文件中添加以下内容:

    MINIO_ROOT_USER=账号
    MINIO_ROOT_PASSWORD=密码
    MINIO_ACCESS_KEY=youraccesskey
    MINIO_SECRET_KEY=yoursecretkey
    

    替换成您的访问密钥和秘密密钥。

  6. 设置环境文件权限:

    sudo chown minio:minio /etc/default/minio
    sudo chmod 600 /etc/default/minio
    
  7. 创建Systemd服务文件:

    sudo nano /etc/systemd/system/minio.service
    

    添加以下内容:

    [Unit]
    Description=MinIO
    Documentation=https://docs.min.io
    Wants=network-online.target
    After=network-online.target
    
    [Service]
    WorkingDirectory=/usr/local/
    User=minio
    Group=minio
    EnvironmentFile=-/etc/default/minio
    ExecStart=/usr/local/bin/minio server /data
    
    Restart=always
    LimitNOFILE=65536
    
    [Install]
    WantedBy=multi-user.target
    
  8. 启用和启动MinIO服务:

    sudo systemctl daemon-reload
    sudo systemctl enable minio
    sudo systemctl start minio
    
  9. 检查MinIO服务状态:

    sudo systemctl status minio
    

完成以上步骤后,MinIO将作为一个服务在后台运行,由minio用户管理,并且在系统启动时自动启动。通过这种方式,您可以确保MinIO服务的安全运行。

要使用minio用户登录进去启动和关闭MinIO服务,您需要确保该用户有权限执行这些操作。由于systemctl命令通常需要root权限,您可能需要进行一些额外配置。但是,出于安全考虑,通常不建议直接赋予普通用户这种权限。相反,建议始终使用具有适当权限的用户(如root)来管理系统服务。

如果您坚持要使用minio用户来管理服务,有两种方法可以做到这一点:

方法1:使用sudo

  1. minio用户授予sudo权限:
    编辑sudoers文件,为minio用户添加特定的权限。使用visudo以安全方式编辑文件:

    sudo visudo
    

    在文件中添加以下行:

    minio ALL=(ALL) NOPASSWD: /bin/systemctl start minio, /bin/systemctl stop minio, /bin/systemctl restart minio, /bin/systemctl status minio
    

    这允许minio用户无需输入密码即可执行启动、停止、重启和检查MinIO服务的状态。

  2. 使用minio用户执行命令:
    登录为minio用户后,使用以下命令启动或停止MinIO服务:

    • 启动服务:

      sudo systemctl start minio
      
    • 停止服务:

      sudo systemctl stop minio
      
    • 重启服务:

      sudo systemctl restart minio
      
    • 检查服务状态:

      sudo systemctl status minio
      

方法2:配置特定的脚本(较为复杂)

  1. 编写脚本:
    minio用户编写特定的脚本来启动和停止MinIO服务,并将这些脚本放在用户可以访问的位置。

  2. 设置脚本权限:
    给予minio用户执行这些脚本的权限。

  3. 配置sudo:
    如上所述,使用visudo来授予minio用户执行这些脚本的权限。

请注意,第二种方法更复杂,需要确保脚本的安全性和正确性,因此不推荐非经验丰富的用户使用。在大多数情况下,建议使用具有适当权限的用户(如root)来管理系统服务。

12-23 08:33