重置 NTFS 脏位
我想知道是否可以在 bash 脚本中清除 NTFS 脏位。
I'd like to know whether it's possible to clear the NTFS dirty bit in bash script.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我想知道是否可以在 bash 脚本中清除 NTFS 脏位。
I'd like to know whether it's possible to clear the NTFS dirty bit in bash script.
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
虽然这个问题属于 Unix.SE,但您可以使用
ntfsfix
工具清除 NTFS 脏位,该工具在大多数 Linux 发行版中随ntfs-3g
软件包一起提供。-d
标志显式清除脏位。Though this question belongs on Unix.SE, you can clear the NTFS dirty bit with the
ntfsfix
tool, which comes with thentfs-3g
package in most Linux distributions. The-d
flag explicitly clears the dirty bit.这样做本质上是不安全的。 ntfsprogs 计划推出 ntfsck,这将允许您安全地修复文件系统并将其标记为干净的文件系统。然而,该工具尚未实施。
也就是说,简单地清除脏部分会带来麻烦。如果文件系统崩溃,您必须在使用它之前运行恢复,据我所知,目前需要 Windows。
你为什么要这么做?也许有更好的方法来完成您想要完成的任务?
Doing so is inherently unsafe. ntfsprogs has plans for a ntfsck, which would allow you to safely fix up and mark as clean a filesystem. However, the tool has not been implemented yet.
That said, simply clearing the dirty bit is a recipe for trouble. If a filesystem crashed you must run recovery before using it, which for now requires Windows as far as I know.
Why do you want to do that? Maybe there's a better way to do whatever you're trying to accomplish?
脏位之所以存在,是因为 NTFS 见证了一些损坏,而不是因为它需要重播其日志(尽管这里的直觉是有道理的)。
您是否试图避免在启动时运行 chkdsk?我们称之为“autochk”,您可以通过 chkntfs 禁用它。 (显然我们只是喜欢“chk”这个词。)那么当您要求运行时,您只会得到 chkdsk 运行。
The dirty bit is there because NTFS witnessed some corruption, not because it needs to replay its log (though the intuition here makes sense).
Are you trying to avoid a chkdsk run at startup? We call that 'autochk', and you can disable that via chkntfs. (Apparently we just love the term 'chk'.) Then you'll only get a chkdsk run when you ask for one.