+ -
当前位置:首页 → 问答吧 → 出现了Read-only file system错误

出现了Read-only file system错误

时间:2008-04-17

来源:互联网

lfs-6.2已经做成功了的,这次再实践,出现了如下的Read-only file system错误:

lfs:/mnt/lfs/sources/gcc-build$ make bootstrap
make[1]: Entering directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/libiberty'
make[2]: Entering directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/libiberty/testsuite'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/libiberty/testsuite'
make[1]: Leaving directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/libiberty'
make[1]: Entering directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/fixincludes'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/fixincludes'
make[1]: Entering directory `/mnt/lfs/sources/gcc-build/intl'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/mnt/lfs/sources/gcc-build/intl'
make[1]: Entering directory `/mnt/lfs/sources/gcc-build/libiberty'
make[2]: Entering directory `/mnt/lfs/sources/gcc-build/libiberty/testsuite'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/mnt/lfs/sources/gcc-build/libiberty/testsuite'
make[1]: Leaving directory `/mnt/lfs/sources/gcc-build/libiberty'
make[1]: Entering directory `/mnt/lfs/sources/gcc-build/libcpp'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/mnt/lfs/sources/gcc-build/libcpp'
Bootstrapping the compiler
make[1]: Entering directory `/mnt/lfs/sources/gcc-build/gcc'

Bootstrap complete - make "quickstrap" to redo last build,
"restage1" through "restage3" to rebuild specific stages,
"restrap" to redo the bootstrap from stage1, or
"cleanstrap" to redo the bootstrap from scratch.
make[1]: Leaving directory `/mnt/lfs/sources/gcc-build/gcc'
Comparing stage2 and stage3 of the compiler
make[1]: Entering directory `/mnt/lfs/sources/gcc-build/gcc'
rm -f .bad_compare
case "gnucompare" in *compare | *compare-lean ) stage=2 ;; * ) stage=`echo gnucompare | sed -e 's,^[a-z]*compare\([0-9][0-9]*\).*,\1,'` ;; esac; \
for dir in . build; do \
if [ "`echo $dir/*.o`" != "$dir/*.o" ] ; then \
for file in $dir/*.o; do \
case "gnucompare" in \
slowcompare* ) \
tail +16c ./$file > tmp-foo1; \
tail +16c stage$stage/$file > tmp-foo2 \
&& (cmp tmp-foo1 tmp-foo2 > /dev/null 2>&1 || echo $file differs >> .bad_compare) || true; \
;; \
fastcompare* ) \
cmp $file stage$stage/$file 16 16 > /dev/null 2>&1; \
test $? -eq 1 && echo $file differs >> .bad_compare || true; \
;; \
gnucompare* ) \
cmp --ignore-initial=16 $file stage$stage/$file > /dev/null 2>&1; \
test $? -eq 1 && echo $file differs >> .bad_compare || true; \
;; \
esac ; \
done; \
else true; fi; \
done
rm -f tmp-foo*
case "gnucompare" in *compare | *compare-lean ) stage=2 ;; * ) stage=`echo gnucompare | sed -e 's,^[a-z]*compare\([0-9][0-9]*\).*,\1,'` ;; esac; \
if [ -f .bad_compare ]; then \
echo "Bootstrap comparison failure!"; \
cat .bad_compare; \
exit 1; \
else \
case "gnucompare" in \
*-lean ) rm -rf stage$stage ;; \
*) ;; \
esac; true; \
fi
make[1]: Leaving directory `/mnt/lfs/sources/gcc-build/gcc'
Building runtime libraries
make[1]: Entering directory `/mnt/lfs/sources/gcc-build'
make[2]: Entering directory `/mnt/lfs/sources/gcc-build/libiberty'
make[3]: Entering directory `/mnt/lfs/sources/gcc-build/libiberty/testsuite'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/mnt/lfs/sources/gcc-build/libiberty/testsuite'
make[2]: Leaving directory `/mnt/lfs/sources/gcc-build/libiberty'
make[2]: Entering directory `/mnt/lfs/sources/gcc-build/fixincludes'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/mnt/lfs/sources/gcc-build/fixincludes'
make[2]: Entering directory `/mnt/lfs/sources/gcc-build/intl'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/mnt/lfs/sources/gcc-build/intl'
make[2]: Entering directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/libiberty'
make[3]: Entering directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/libiberty/testsuite'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/libiberty/testsuite'
make[2]: Leaving directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/libiberty'
make[2]: Entering directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/fixincludes'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/mnt/lfs/sources/gcc-build/build-i686-pc-linux-gnu/fixincludes'
make[2]: Entering directory `/mnt/lfs/sources/gcc-build/libcpp'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/mnt/lfs/sources/gcc-build/libcpp'
make[2]: Entering directory `/mnt/lfs/sources/gcc-build/gcc'
if test -f stage_last ; then \
LAST=`cat stage_last`; rm $LAST; make LANGUAGES="c gcov gcov-dump " BOOT_CFLAGS="-O2 -g -fomit-frame-pointer" $LAST; \
else \
make LANGUAGES="c gcov gcov-dump " BOOT_CFLAGS="-O2 -g -fomit-frame-pointer" stage1_build; \
fi
rm: cannot remove `stage3_build': Read-only file system
make[3]: Entering directory `/mnt/lfs/sources/gcc-build/gcc'
make[3]: `stage3_build' is up to date.
make[3]: Leaving directory `/mnt/lfs/sources/gcc-build/gcc'
make[2]: Leaving directory `/mnt/lfs/sources/gcc-build/gcc'
Checking multilib configuration...
/bin/sh: multilib.tmp: Read-only file system
cmp: multilib.tmp: No such file or directory
mv: cannot stat `multilib.tmp': No such file or directory
make[1]: *** [multilib.out] Error 1
make[1]: Leaving directory `/mnt/lfs/sources/gcc-build'
make: *** [bootstrap] Error 2



然后想删掉gcc-4.0.3与gcc-build目录,不管是用lfs用户删除还是退回到root用户,都是提示:
rm: cannot remove `gcc-build/gcc/print-tree.o': Read-only file system
rm: cannot remove `gcc-build/gcc/insn-attrtab.c': Read-only file system
rm: cannot remove `gcc-build/gcc/include/linux/a.out.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/mm3dnow.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/float.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/mmintrin.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/xmmintrin.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/openssl/bn.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/stddef.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/varargs.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/X11/Xos.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/X11/Xos_r.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/X11/Xosdefs.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/X11/Xtrans/Xtransint.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/X11/Xw32defs.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/unwind.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/limits.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/pmmintrin.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/slang.h': Read-only file system
rm: cannot remove `gcc-build/gcc/include/iso646.h': Read-only file system
rm: cannot lstat `gcc-build/gcc/include/seamonkey-1.0.5': Input/output error

作者: paraller   发布时间: 2008-04-17

感觉是你的硬件出错了。

作者: 晨想   发布时间: 2008-04-17

是不是你的grub里设置的ro参数引起的呢?

作者: byjxy   发布时间: 2008-04-17

我想应该是你的宿主系统/分区的错误,当根分区出现错误时,read-only,你这是pass1,我想有可能。打开/etc/fstab,默认/分区error=read-only.重新挂载/分区用mount -o remount /dev/xxx /

作者: longkz   发布时间: 2008-04-17