我们在Hyper-V系统上运行Ubuntu 10.04虚拟机,
虚拟机专门运行我们的一个Web应用程序。
我们在/etc/initramfs-tools/modules
启用了Hyper-V驱动程序,如下所示:
hv_vmbus hv_storvsc hv_blkvsc hv_netvsc
并像这样更新了内核映像:
$ update-initramfs -u
一切都很好,直到..
今天早上,我得到了一个支持请求,我们的Web应用程序正在抛出一个错误500,所以我检查了日志,什么都没有。
然后我想起我在另外一台Ubuntu服务器上看到了这个,所以我…
$ touch foo.txt
我的怀疑得到了证实:
touch: cannot touch `foo.txt': Read-only file system
这只在Ubuntu上的HV? 这是RedHat或Cent上的问题吗?
你能检查日志吗? 很可能文件系统有错误,因此而进入只读状态。
(假设你使用的是ext3或ext4,就像Ubuntu的默认值:)你可以使用errors
挂载选项来调整这个行为。
errors=remount-ro
是默认值; errors=continue
(保持自己的危险读写)和errors=panic
(停止,下降和滚动崩溃)是您的其他选项。
这是Hyper-V问题,运行Red Hat或Centos的主机也会遇到同样的问题