Linux Frequently Asked Questions with Answers (Part 6 of 6)

Linux Frequently Asked Questions with Answers (Part 6 of 6)

Post by rkiesl.. » Tue, 07 May 2002 18:38:37



Archive-Name: linux/faq/part6
URL: http://www.mainmatter.com/
Reply-to: rkiesl...@mainmatter.com
Posting-Frequency: weekly
Last-modified: 12/04/2001
Expires: Mon, 12 Nov 2001 05:00:00 GMT

/pub/linux/packages/GCC/ for binutils-2.6.0.2.bin.tar.gz.

9.5. GCC Says, "Internal compiler error."

If the fault is repeatable (i.e., it always happens at the same place
in the same file--even after rebooting and trying again, using a
stable kernel) you have discovered a bug in GCC. See the GCC Info
documentation (type F1-i in Emacs, and select GCC from the menu) for
details on how to report the error. Make sure you have the latest
version, though.

Note that this is probably not a Linux-specific problem. Unless you
are compiling a program many other Linux users also compile, you
should not post your bug report to any of the comp.os.linux groups.

If the problem is not repeatable, you may be experiencing memory
corruption. Refer to the answer: ("Make Says, "Error 139."")

9.6. Make Says, "Error 139."

Your compiler (GCC) dumped core. You probably have a corrupted, buggy,
or old version of GCC--get the latest release or EGCS. Alternatively,
you may be running out of swap space. Refer to: ("The Machine Runs
Very Slowly with GCC / X / ...")

If this doesn't fix the problem, you are probably having problems with
memory or disk corruption. Check that the clock rate, wait states, and
refresh timing for your SIMMS and cache are correct (hardware manuals
are sometimes wrong, too). If so, you may have some marginal SIMMS, or
a faulty motherboard or hard disk or controller.

Linux is a very good memory tester--much better than MS-DOS based
memory test programs.

Reportedly, some clone x87 math coprocessors can cause problems. Try
compiling a kernel with math emulation ("How To Upgrade/Recompile a
Kernel.") no387 kernel command line flag on the LILO prompt to force
the kernel to use math emulation, or it may be able to work and still
use the '387, with the math emulation compiled in but mainly unused.

More information about this problem is available on the Web at
http://www.bitwizard.nl/sig11/.

9.7. Shell-Init: Permission Denied when I Log In.

Your root directory and all the directories up to your home directory
must be readable and executable by everybody. See the manual page for
chmod or a book on Unix for how to fix the problem.

9.8. No Utmp Entry. You Must Exec ... when Logging In.

Your /var/run/utmp is screwed up. You should have

   /var/run/utmp

in your /etc/rc.local or /etc/rc.d/*. See, ("I Screwed Up the System
and Can't Log In to Fix It.") Note that the utmp may also be found in
/var/adm/ or /etc/ on some older systems.

9.9. Warning--bdflush Not Running.

Modern kernels use a better strategy for writing cached disk blocks.
In addition to the kernel changes, this involves replacing the old
update program which used to write everything every 30 seconds with a
more subtle daemon (actually a pair), known as bdflush. Get
bdflush-n.n.tar.gz from the same place as the kernel source code ("How
To Upgrade/Recompile a Kernel.") and compile and install it. bdflush
should be started before the usual boot-time file system checks. It
will work fine with older kernels as well, so there's no need to keep
the old update around.

9.10. Warning: obsolete routing request made.

This is nothing to worry about. The message means that your version
route is a little out of date, compared to the kernel. You can make
the message go away by getting a new version of route from the same
place as the kernel source code. ("How To Upgrade/Recompile a
Kernel.")

9.11. EXT2-fs: warning: mounting unchecked file system.

You need to run e2fsck (or fsck -t ext2 if you have the fsck front end
program) with the -a option to get it to clear the "dirty" flag, and
then cleanly unmount the partition during each shutdown.

The easiest way to do this is to get the latest fsck, umount, and
shutdown commands, available in Rik Faith's util-linux package ("Where
Are the Linux FTP Archives?") You have to make sure that your
/etc/rc*/ scripts use them correctly.

NB: Don't try to check a file system that's mounted read/write. This
includes the root partition if you don't see

   VFS: mounted root ... read-only

at boot time. You must arrange to mount the root file system read/only
to start with, check it if necessary, and then remount it read/write.
Almost all distributions do this. If your's doesn't, read the
documentation that comes with util-linux to find out how to do this.

Note that you need to specify the -n option to mount so it won't try
to update /etc/mtab, since the root file system is still read-only,
and this will otherwise cause it to fail.

9.12. EXT2-fs warning: maximal count reached.

This message is issued by the kernel when it mounts a file system
that's marked as clean, but whose "number of mounts since check"
counter has reached the predefined value. The solution is to get the
latest version of the ext2fs utilities (e2fsprogs-0.5b.tar.gz at the
time of writing) from the usual sites. ("Where Are the Linux FTP
Archives?")

The maximal number of mounts value can be examined and changed using
the tune2fs program from this package.

9.13. EXT2-fs warning: checktime reached.

Kernels from 1.0 onwards support checking a file system based on the
elapsed time since the last check as well as by the number of mounts.
Get the latest version of the ext2fs utilities. ("EXT2-fs warning:
maximal count reached.")

9.14. df Says, "Cannot read table of mounted file systems."

There is probably something wrong with your /etc/mtab or /etc/fstab
files. If you have a reasonably new version of mount, /etc/mtab should
be emptied or deleted at boot time (in /etc/rc.local or /etc/rc.d/*),
using something like

   $ rm -f /etc/mtab*

Some old Linux distributions have an entry for the root partition in
/etc/mtab made in /etc/rc* by using rdev. That is incorrect--the newer
versions of mount do this automatically.

Some old distributions also have a line in /etc/fstab that looks like:

   /dev/sdb1   /root   ext2   defaults

The entry for /root should read simply /.

9.15. fdisk Says, "Partition X has different physical/logical..."

If the partition number (X, above) is 1, this is the same problem as
in fdisk: Partition 1 does not start on cylinder boundary. If the
partition begins or ends on a cylinder numbered greater than 1024,
this is because the standard DOS disk geometry information format in
the partition table can't cope with cylinder numbers with more than 10
bits. You should see ("How To Get Linux to Work with a Disk.")

9.16. fdisk: Partition 1 does not start on cylinder boundary.

The version of fdisk that comes with many Linux systems creates
partitions that fail its own validity checking. Unfortunately, if
you've already installed your system, there's not much you can do
about this, apart from copying the data off the partition, deleting
and remaking it, and copying the data back.

You can avoid the problem by getting the latest version of fdisk, from
Rik Faith's util-linux package (available on all the usual FTP sites).
Alternatively, if you are creating a new partition 1 that starts in
the first cylinder, you can do the following to get a partition that
fdisk likes.

  * Create partition 1 in the normal way. A `p' listing will produce
    the mismatch complaint.
  * Type u to set sector mode and do p again. Copy down the number
    from the End column.
  * Delete partition 1.
  * While still in sector mode, re-create partition 1. Set the first
    sector to match the number of sectors per track. This is the
    sector number in the first line of the p output. Set the last
    sector to the value you wrote down in the step above.
  * Type u to reset cylinder mode and continue with other partitions.

Ignore the message about unallocated sectors. They refer to the
sectors on the first track apart from the Master Boot Record, and they
are not used if you start the first partition in track 2.

9.17. fdisk Says Partition n Has an Odd Number of Sectors.

The PC disk partitioning scheme works in 512-byte sectors, but Linux
uses 1K blocks. If you have a partition with an odd number of sectors,
the last sector is wasted. Ignore the message.

9.18. Mtools Utilities Say They Cannot Initialize Drive X.

This means that mtools is having trouble accessing the drive. This can
be due to several things.

Often this is due to the permissions on floppy drive devices
(/dev/fd0* and /dev/fd1*) being incorrect. The user running mtools
must have the appropriate access. See the manual page for chmod for
details.

Most versions of mtools distributed with Linux systems (not the
standard GNU version) use the contents of a file /etc/mtools to
determine which devices and densities to use, in place of having this
information compiled into the binary. Mistakes in this file often
cause problems. There is often no documentation about this.

For the easiest way to access your MS-DOS files (especially those on a
hard disk partition) see How do I access files on my DOS partition or
floppy? Note--you should never use mtools to access files on an
msdosfs mounted partition or disk!

9.19. At the Start of Booting: Memory tight

This means that you have an extra-large kernel, which means that Linux
has to do some special memory-management magic to be able to boot
itself from the BIOS. It isn't related to the amount of physical
memory in your machine. Ignore the message, or compile a kernel
containing only the drivers and features you need. ("How To
Upgrade/Recompile a Kernel.")

9.20. The System Log Says, "end_request: I/O error, ...."

This error message, and messages like it, almost always indicate a
hardware error with a hard drive.

This commonly indicates a hard drive defect. The only way to avoid
further data loss is to completely shut own the system. You must also
make sure that whatever data is on the drive is backed up, and restore
it to a non-defective hard drive.

This error message may ...

read more »

 
 
 

Linux Frequently Asked Questions with Answers (Part 6 of 6)

Post by rkiesl.. » Wed, 15 May 2002 18:38:13


Archive-Name: linux/faq/part6
URL: http://www.mainmatter.com/
Reply-to: rkiesl...@mainmatter.com
Posting-Frequency: weekly
Last-modified: 12/04/2001
Expires: Mon, 12 Nov 2001 05:00:00 GMT

/pub/linux/packages/GCC/ for binutils-2.6.0.2.bin.tar.gz.

9.5. GCC Says, "Internal compiler error."

If the fault is repeatable (i.e., it always happens at the same place
in the same file--even after rebooting and trying again, using a
stable kernel) you have discovered a bug in GCC. See the GCC Info
documentation (type F1-i in Emacs, and select GCC from the menu) for
details on how to report the error. Make sure you have the latest
version, though.

Note that this is probably not a Linux-specific problem. Unless you
are compiling a program many other Linux users also compile, you
should not post your bug report to any of the comp.os.linux groups.

If the problem is not repeatable, you may be experiencing memory
corruption. Refer to the answer: ("Make Says, "Error 139."")

9.6. Make Says, "Error 139."

Your compiler (GCC) dumped core. You probably have a corrupted, buggy,
or old version of GCC--get the latest release or EGCS. Alternatively,
you may be running out of swap space. Refer to: ("The Machine Runs
Very Slowly with GCC / X / ...")

If this doesn't fix the problem, you are probably having problems with
memory or disk corruption. Check that the clock rate, wait states, and
refresh timing for your SIMMS and cache are correct (hardware manuals
are sometimes wrong, too). If so, you may have some marginal SIMMS, or
a faulty motherboard or hard disk or controller.

Linux is a very good memory tester--much better than MS-DOS based
memory test programs.

Reportedly, some clone x87 math coprocessors can cause problems. Try
compiling a kernel with math emulation ("How To Upgrade/Recompile a
Kernel.") no387 kernel command line flag on the LILO prompt to force
the kernel to use math emulation, or it may be able to work and still
use the '387, with the math emulation compiled in but mainly unused.

More information about this problem is available on the Web at
http://www.bitwizard.nl/sig11/.

9.7. Shell-Init: Permission Denied when I Log In.

Your root directory and all the directories up to your home directory
must be readable and executable by everybody. See the manual page for
chmod or a book on Unix for how to fix the problem.

9.8. No Utmp Entry. You Must Exec ... when Logging In.

Your /var/run/utmp is screwed up. You should have

   /var/run/utmp

in your /etc/rc.local or /etc/rc.d/*. See, ("I Screwed Up the System
and Can't Log In to Fix It.") Note that the utmp may also be found in
/var/adm/ or /etc/ on some older systems.

9.9. Warning--bdflush Not Running.

Modern kernels use a better strategy for writing cached disk blocks.
In addition to the kernel changes, this involves replacing the old
update program which used to write everything every 30 seconds with a
more subtle daemon (actually a pair), known as bdflush. Get
bdflush-n.n.tar.gz from the same place as the kernel source code ("How
To Upgrade/Recompile a Kernel.") and compile and install it. bdflush
should be started before the usual boot-time file system checks. It
will work fine with older kernels as well, so there's no need to keep
the old update around.

9.10. Warning: obsolete routing request made.

This is nothing to worry about. The message means that your version
route is a little out of date, compared to the kernel. You can make
the message go away by getting a new version of route from the same
place as the kernel source code. ("How To Upgrade/Recompile a
Kernel.")

9.11. EXT2-fs: warning: mounting unchecked file system.

You need to run e2fsck (or fsck -t ext2 if you have the fsck front end
program) with the -a option to get it to clear the "dirty" flag, and
then cleanly unmount the partition during each shutdown.

The easiest way to do this is to get the latest fsck, umount, and
shutdown commands, available in Rik Faith's util-linux package ("Where
Are the Linux FTP Archives?") You have to make sure that your
/etc/rc*/ scripts use them correctly.

NB: Don't try to check a file system that's mounted read/write. This
includes the root partition if you don't see

   VFS: mounted root ... read-only

at boot time. You must arrange to mount the root file system read/only
to start with, check it if necessary, and then remount it read/write.
Almost all distributions do this. If your's doesn't, read the
documentation that comes with util-linux to find out how to do this.

Note that you need to specify the -n option to mount so it won't try
to update /etc/mtab, since the root file system is still read-only,
and this will otherwise cause it to fail.

9.12. EXT2-fs warning: maximal count reached.

This message is issued by the kernel when it mounts a file system
that's marked as clean, but whose "number of mounts since check"
counter has reached the predefined value. The solution is to get the
latest version of the ext2fs utilities (e2fsprogs-0.5b.tar.gz at the
time of writing) from the usual sites. ("Where Are the Linux FTP
Archives?")

The maximal number of mounts value can be examined and changed using
the tune2fs program from this package.

9.13. EXT2-fs warning: checktime reached.

Kernels from 1.0 onwards support checking a file system based on the
elapsed time since the last check as well as by the number of mounts.
Get the latest version of the ext2fs utilities. ("EXT2-fs warning:
maximal count reached.")

9.14. df Says, "Cannot read table of mounted file systems."

There is probably something wrong with your /etc/mtab or /etc/fstab
files. If you have a reasonably new version of mount, /etc/mtab should
be emptied or deleted at boot time (in /etc/rc.local or /etc/rc.d/*),
using something like

   $ rm -f /etc/mtab*

Some old Linux distributions have an entry for the root partition in
/etc/mtab made in /etc/rc* by using rdev. That is incorrect--the newer
versions of mount do this automatically.

Some old distributions also have a line in /etc/fstab that looks like:

   /dev/sdb1   /root   ext2   defaults

The entry for /root should read simply /.

9.15. fdisk Says, "Partition X has different physical/logical..."

If the partition number (X, above) is 1, this is the same problem as
in fdisk: Partition 1 does not start on cylinder boundary. If the
partition begins or ends on a cylinder numbered greater than 1024,
this is because the standard DOS disk geometry information format in
the partition table can't cope with cylinder numbers with more than 10
bits. You should see ("How To Get Linux to Work with a Disk.")

9.16. fdisk: Partition 1 does not start on cylinder boundary.

The version of fdisk that comes with many Linux systems creates
partitions that fail its own validity checking. Unfortunately, if
you've already installed your system, there's not much you can do
about this, apart from copying the data off the partition, deleting
and remaking it, and copying the data back.

You can avoid the problem by getting the latest version of fdisk, from
Rik Faith's util-linux package (available on all the usual FTP sites).
Alternatively, if you are creating a new partition 1 that starts in
the first cylinder, you can do the following to get a partition that
fdisk likes.

  * Create partition 1 in the normal way. A `p' listing will produce
    the mismatch complaint.
  * Type u to set sector mode and do p again. Copy down the number
    from the End column.
  * Delete partition 1.
  * While still in sector mode, re-create partition 1. Set the first
    sector to match the number of sectors per track. This is the
    sector number in the first line of the p output. Set the last
    sector to the value you wrote down in the step above.
  * Type u to reset cylinder mode and continue with other partitions.

Ignore the message about unallocated sectors. They refer to the
sectors on the first track apart from the Master Boot Record, and they
are not used if you start the first partition in track 2.

9.17. fdisk Says Partition n Has an Odd Number of Sectors.

The PC disk partitioning scheme works in 512-byte sectors, but Linux
uses 1K blocks. If you have a partition with an odd number of sectors,
the last sector is wasted. Ignore the message.

9.18. Mtools Utilities Say They Cannot Initialize Drive X.

This means that mtools is having trouble accessing the drive. This can
be due to several things.

Often this is due to the permissions on floppy drive devices
(/dev/fd0* and /dev/fd1*) being incorrect. The user running mtools
must have the appropriate access. See the manual page for chmod for
details.

Most versions of mtools distributed with Linux systems (not the
standard GNU version) use the contents of a file /etc/mtools to
determine which devices and densities to use, in place of having this
information compiled into the binary. Mistakes in this file often
cause problems. There is often no documentation about this.

For the easiest way to access your MS-DOS files (especially those on a
hard disk partition) see How do I access files on my DOS partition or
floppy? Note--you should never use mtools to access files on an
msdosfs mounted partition or disk!

9.19. At the Start of Booting: Memory tight

This means that you have an extra-large kernel, which means that Linux
has to do some special memory-management magic to be able to boot
itself from the BIOS. It isn't related to the amount of physical
memory in your machine. Ignore the message, or compile a kernel
containing only the drivers and features you need. ("How To
Upgrade/Recompile a Kernel.")

9.20. The System Log Says, "end_request: I/O error, ...."

This error message, and messages like it, almost always indicate a
hardware error with a hard drive.

This commonly indicates a hard drive defect. The only way to avoid
further data loss is to completely shut own the system. You must also
make sure that whatever data is on the drive is backed up, and restore
it to a non-defective hard drive.

This error message may ...

read more »