所有涉及系统级权限的操作(如创建用户、修改文件所有者)均需root权限。建议通过sudo -i切换至root用户,或使用sudo命令执行后续操作。
为隔离FetchLinux服务权限,避免使用root账户直接操作,需创建专用用户与组:
# 创建fetchlinux组
sudo groupadd fetchlinux
# 创建fetchlinux用户(-r表示系统用户,-g指定所属组)
sudo useradd -r -g fetchlinux fetchlinux
此步骤确保FetchLinux服务以非root身份运行,提升系统安全性。
将FetchLinux的安装目录(默认/opt/fetchlinux)所有权赋予fetchlinux用户与组,防止未授权访问:
# 递归修改/opt/fetchlinux目录的所有者为fetchlinux:fetchlinux
sudo chown -R fetchlinux:fetchlinux /opt/fetchlinux
若需调整特定文件(如配置文件)的权限,可使用chmod命令。例如,为fetchlinux.conf添加读写权限:
sudo chmod 640 /opt/fetchlinux/fetchlinux.conf
(注:640表示属主可读写,属组可读,其他用户无权限)。
修改FetchLinux服务的配置文件,指定服务运行时使用的用户与组:
# 编辑FetchLinux服务配置文件(路径可能因版本而异,常见为/etc/sysconfig/fetchlinux或/etc/default/fetchlinux)
sudo vi /etc/sysconfig/fetchlinux
在文件中添加或修改以下内容:
USER=fetchlinux
GROUP=fetchlinux
保存后重启服务,使配置生效:
sudo systemctl restart fetchlinux
通过ps aux | grep fetchlinux命令可验证服务是否以fetchlinux用户身份运行。
若需允许普通用户使用FetchLinux工具或访问其资源,可通过以下方式调整权限:
sudo usermod -aG fetchlinux target_user
此操作允许target_user访问fetchlinux组的资源(如/opt/fetchlinux目录)。sudo组:sudo usermod -aG sudo target_user
之后,用户可通过sudo command执行特权操作。ls -l /opt/fetchlinux确认目录所有者为fetchlinux:fetchlinux。ps aux | grep fetchlinux查看服务进程的用户信息。su - target_user),尝试访问/opt/fetchlinux目录或执行FetchLinux命令,确认权限是否符合预期。getent passwd、getent group命令定期检查用户与组设置,及时清理闲置账户。/etc/passwd、/etc/group、/opt/fetchlinux/fetchlinux.conf)。