克隆的服务器将仅以只读方式启动

克隆的服务器将仅以只读方式启动

我已将我的一台服务器(即将关闭)克隆到 VirtualBox 机器中。我用于rsync此目的,记得保留相关属性等。我还修改了fstab.我之前已经成功克隆过类似的服务器。

虚拟服务器可以启动,但只能只读。这是一些输出:

Loading, please wait...
INIT: version 2.86 booting
mount: only root can do that
touch: cannot touch '/lib/init/rw/.ramfs': Read-only file system
mkdir: cannot create directory '/lib/init/rw/sendsigs.omit.d/ : File exists
mount: only root can do that
Starting the hotplug events dispatcher: udevd
Synthesizing the initial hotplug events...done
Waiting for /dev to be fully populated... [  6.435055] piix4_smbus 0000:00:08.0
: SMB base address uninitialized - upgrade BIOS or use force_addr=0xaddr
[   6.609103] Error: Driver 'pcspkr' is already registed, aborting.....

这样持续了一段时间,出现了大量与只读文件系统相关的错误,但最终我得到了登录提示。

我可以登录,但系统严重瘫痪。例如,即使我以 root 身份登录,对于大多数命令,我都会收到“只有 root 可以执行此操作”。

我已经尝试过,fsck但没有帮助。

任何使其正常启动的想法将不胜感激。

顺便说一下,这是一个相当老的 Debian Lenny。

编辑:这是 rsync 命令:

rsync -azhv  --exclude-from=exclude.lst / [email protected]:/backup/

except.lst 包含以下内容:

# Exclude
- /dev/*
- /proc/*
- /sys/*
- /tmp/*
- lost+found/
- /media/*
- /mnt/*

答案1

/sbin/init 是由 root 拥有,还是由其他用户拥有?

它可能由非 root 用户拥有,以及 /bin/mount 等文件。这意味着当它们运行时(它们设置了 SUID 位)它们以非 root 身份运行。

下面的例子。查看 mount 和 mount.steve 如何具有相同的内容,但 mount.steve 归 steve 所有。因此 mount.steve 失败并显示“只有 root 可以执行此操作”,因为它是对 steve 而不是 root 进行 SUIDing。

[root@localhost bin]# ls -l mount mount.steve
-rwsr-xr-x. 1 root  root  44208 Nov 27  2014 mount
-rwsr-xr-x. 1 steve users 44208 Jun 30 14:11 mount.steve
[root@localhost bin]# ./mount /foo /foo
mount: mount point /foo does not exist
[root@localhost bin]# ./mount.steve /foo /foo
mount.steve: only root can do that (effective UID is 1000)
[root@localhost bin]#

(我是新来的,不明白整个评论与答案的事情,感谢指导人员)

相关内容