个人服务器,非全盘备份,假设有/etc /home /data
这么三个目录,当选择好一个备份方案以后,是单独创建一个用户专门用于备份,还是用 root 用户备份呢?
目前我按照单独创建用户+ACL 设置权限来操作,但是遇到两个问题:
/etc/ssh
目录下的私钥必须保证权限为 600 ,强行设置 ACL 会导致权限变为 640 ,后果就是 ssh 无法登录至于使用 root 用户的话,好像权限又给的过大了,请教下各位在实践中是怎么操作的?
1
oneisall8955 167 天前
好问题,我用的 root
|
2
drymonfidelia 167 天前
用 docker 只读卷
|
3
povsister 167 天前
好问题,我用 600 的 root home 放备份脚本然后 root cron 执行脚本里的 rsync
|
4
esee 167 天前
个人服务器还分权限吗?反正我懒得分,除了执行对外提供服务的程序另外创建用户来运行,其他操作我都用 root ,要安全就要牺牲效率,平时操作注意一些就行了。
|
5
28Sv0ngQfIE7Yloe 167 天前
我个人服务器也按照公司标准维护权限,主要我害怕肌肉记忆不过脑子瞎操作公司的服务器
|
6
EyebrowsWhite OP @esee 我觉得还是分一下比较好,原因类似楼下说的,坏习惯养成就完蛋了
|
7
esee 167 天前
@EyebrowsWhite 不嫌麻烦也行,我个人的反正不分,效率第一,用了这么多年也没事。至于操作习惯,不管是个人还是公司,敏感操作都是要再三确认,这也是一种习惯
|
8
zlowly 167 天前
有一种实践方式是,用 root 编写备份脚本,然后/etc/sudoers 里设置允许某个普通用户运行这个脚本。
|
9
ferock 167 天前
不用 root 但是用 sudo ,留一线,偶尔 rm 的时候,可以救命
|
10
EVANGELIONAir 167 天前
rsync -a 不行?
|
11
caola 167 天前
好问题,出于安全考虑建议创建一个专门的用户只给读取的权限就可以了,强烈建议你这么做,千万不要为了方便而学我用 root ,我这样的做法是不对的,但我不接受我自己的建议,希望你能接受。
|
12
cnt2ex 167 天前
用 root 用户和 rsync archive 模式,用户/组权限都是保留和原来一样的。
不用 root 的话,某些文件无法被读取。 |
13
EyebrowsWhite OP |
14
libook 167 天前
创建一个 docker 容器,将要备份的目录只读映射到容器内,然后在容器内用 root 来备份数据到你的备份设备。
可以看看 docker 的 volume 功能怎么用。 |
15
w292614191 167 天前
好问题,正好问问大家,怎么对 centos 备份,类似 win 的 ghost 随时可以还原的那种。
|
16
pckillers 167 天前
个人服务器也需要 24 小时不间断么? 我备份直接重启进 PE 用 ghost 备份整个磁盘 压根不关心什么 root 不 root 的。
|
17
pckillers 167 天前
@w292614191 ghost 支持 ext4 的,像 Windows 一样备份不就完事了?
|
18
tool2dx 167 天前
我备份资料都是走数据库权限,全部都是网络协议。
单机备份意义不大,容灾异地备份是最好的。 |
19
blackmirror 167 天前
个人服务器不就 root 直接用了,还真去搞权限划分啊
|
20
zlowly 166 天前
@EyebrowsWhite sudo 就是让你可以临时以系统管理员 root 身份运行,脚本以 root 用户身份运行,自然脚本里面的一切命令都是 root 来跑的,对于 root 来说哪个用户的文件就算 600 都能查看。
|
21
EyebrowsWhite OP @zlowly 我理解错了,我以为你的意思是类似这样设置
user ALL=(ALL) NOPASSWD:/usr/bin/apt 为某个用户设置脚本的 sudo nopassword 权限,因为我是用 cron job 自动备份,所以我觉得 sudo nopassword 和直接用 root 区别不大。 之所以这么纠结不想用 root ,是因为我觉得备份任务它就需要个只读的权限,没有必要用 root 做这件事。 不过我搜索了一大圈,目前还是没有找到让我觉得满意的用户设置方案,所以暂时只能用 root 了 |