[Linux] Зависание при проверке через dosfsck FAT32 раздела (dos vfat patch linux trouble fsck fs)
Ключевые слова: dos, vfat, patch, linux, trouble, fsck, fs, (найти похожие документы)
Date: Wed, 24 Jul 2002 23:40:53 +0600
From: Mike Novikoff <[email protected]>
Newsgroups: fido7.ru.linux
Subject: [Linux] Зависание при проверке через dosfsck FAT32 раздела
VB> Checking filesystems
VB> WARNING: FAT32 support is still ALPHA
VB> далее все висит Чем фиксить?
Обновить пакет dosfstools до версии >= 2.8.
=== CHANGES ===
version 2.8
===========
- dosfsck: Fixed endless loop whenever a volume label was present.
=== CHANGES ===
И ничего не надо отключать, всё теперь прекрасно работает.
=== /etc/fstab ===
# device mount-point fstype options dump fsck
#
/dev/hdc1 /mnt/simon vfat showexec,noexec,noatime,umask=022,uid=501,
gid=501,codepage=866,iocharset=koi8-r,shortname=win95 0 2
> ^^^
=== /etc/fstab ===
Кстати, я ещё сделал небольшой косметический патчик для dosfsck 2.8
(совершенно не обязательный, просто для улучшения внешнего вида):
>=== dosfsck-2.8-quiet-mn.patch ===<
# dosfsck 2.8: don't print the version-info and FAT32-warning unless verbose!
# (These messages are useless and ugly bulls**t when running from rc.sysinit).
# -- Mike Novikoff <[email protected]>, 20.04.2002
#
--- dosfsck/dosfsck.c.bak Thu Aug 12 16:43:17 1999
+++ dosfsck/dosfsck.c Sat Apr 20 06:00:00 2002
@@ -119,7 +119,7 @@
break;
case 'v':
verbose = 1;
- printf("dosfsck " VERSION " (" VERSION_DATE ")\n");
+ printf("dosfsck " VERSION " (" VERSION_DATE "), FAT32, LFN\n");
break;
case 'V':
verify = 1;
@@ -136,7 +136,7 @@
}
if (optind != argc-1) usage(argv[0]);
- printf( "dosfsck " VERSION ", " VERSION_DATE ", FAT32, LFN\n" );
+/* printf( "dosfsck " VERSION ", " VERSION_DATE ", FAT32, LFN\n" ); */
fs_open(argv[optind],rw);
read_boot(&fs);
if (verify) printf("Starting check/repair pass.\n");
--- dosfsck/boot.c.bak Tue Nov 28 19:20:02 2000
+++ dosfsck/boot.c Sat Apr 20 05:30:50 2002
@@ -295,7 +295,7 @@
fs->fsinfo_start = 0; /* no FSINFO structure */
fs->free_clusters = -1; /* unknown */
if (!b.fat_length && b.fat32_length) {
- fprintf( stderr, "Warning: FAT32 support is still ALPHA.\n" );
+ if (verbose) fprintf( stderr, "Warning: FAT32 support is still ALPHA.\n" );
fs->fat_bits = 32;
fs->root_cluster = CF_LE_L(b.root_cluster);
if (!fs->root_cluster && fs->root_entries)
>=== dosfsck-2.8-quiet-mn.patch ===<
Mike