我正在运行最新的 Ubuntu 12.04 AMI(ami-a29943cb
)来自 Canonical在 Amazon EC2 上,当我登录时,我经常会收到以下消息:
*** /dev/xvda1 will be checked for errors at next reboot ***
我读过很多关于这方面的文档,似乎知道每隔几次重启(大约 37 次,见Mount count
下文Maximum mount count
)Ubuntu 就会检查磁盘是否有错误。我可以通过以下方式看到dumpe2fs -h /dev/xvda1
(参考)获取如下信息:
Last mounted on: /
Filesystem UUID: 1ad27d06-4ecf-493d-bb19-4710c3caf924
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags: signed_directory_hash
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 524288
Block count: 2097152
Reserved block count: 104857
Free blocks: 1778055
Free inodes: 482659
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 511
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Flex block group size: 16
Filesystem created: Tue Apr 24 03:07:48 2012
Last mount time: Thu Nov 8 03:17:58 2012
Last write time: Tue Apr 24 03:08:52 2012
Mount count: 3
Maximum mount count: 37
Last checked: Tue Apr 24 03:07:48 2012
Check interval: 15552000 (6 months)
Next check after: Sun Oct 21 03:07:48 2012
Lifetime writes: 2454 MB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 28
Desired extra isize: 28
Journal inode: 8
Default directory hash: half_md4
Directory Hash Seed: 0a25e04c-6169-4d68-bfa6-a1acd8e39632
Journal backup: inode blocks
Journal features: journal_incompat_revoke
Journal size: 128M
Journal length: 32768
Journal sequence: 0x0000158b
Journal start: 1
我尝试过这些方法来消除这个消息,通常这些badblocks
方法对我有用:
运行此命令并重新启动:
sudo touch /forcefsck
运行 badblocks 检查磁盘:
badblocks /dev/sda1
编辑/etc/fstab
并更改最后一个“0”,即fs_passno
相应的列,然后重新启动:
根文件系统应指定为 fs_passno 1,其他文件系统应指定为 fs_passno 2。
我不明白:
- 如果这是一个虚拟驱动器,它不是更不容易出错吗?
- 图像创建时是否设置了某个标志?如果不是,是什么触发了它?
- 为什么在 Amazon EC2 Ubuntu 镜像上
fs_passno
设置为0
?这不是第一个这样的。
答案1
答案2
为什么在 Amazon EC2 Ubuntu 映像上将 fs_passno 设置为 0?
如果在启动时运行 fsck 并发现问题,那么它可能正在等待对提示的回答。但是,由于 Amazon EC2 不提供对实例上控制台的访问,因此您无法回答提示,并且实例将变得不可用。
链接问答: