Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 24 Feb 95 00:37 CST
From:      krnlhkr@mcs.com
To:        David Lim <lim@telerobotics.jpl.nasa.gov>, questions@FreeBSD.org
Subject:   Re: [Q] FreeBSD 2.0R - fdisk is non-destructive?
Message-ID:  <m0rhtej-000kR0C@mailbox.mcs.com>

next in thread | raw e-mail | index | archive | help

I've attached the original message below so you can see my reply first, then
check the data which is long.

Since 3 different fdisks (DOS, BSD, and the dos_tools) show the partition 
table
to be correct, I have to think that your DOS filesystem is hosed.

DOS reports free space on the disk based on the number of clusters in the file 
system.
Int21h Function36h reports total clusters and remaining clusters.  This is the 
FAT
table we know and love so well.  I haven't peeked at the BSD dosfs code, but 
my
guess is that the call df makes computes the freespace the same way.

So, your FAT or the number of clusters may have gotten hosed in your DOS 
filesystem.
You can run chkdsk under DOS, but be prepared to lose some files.  There are 
several
reasons for DOS filesystem corruption: sometimes it just "happens", a virus 
can
do it, or BSD could have hosed it.  If you hadn't mounted a DOS filesystem 
under
BSD I don't think BSD did it.

If you make the DOS partition with BSD's fdisk, you might not want to do this.
Generally I make DOS partitions with DOS's fdisk, BSD with BSD's, etc.

I would back up what I have, and do a chkdsk.  It will report if the FAT is
corrupted, and that would explain what is wrong.  If that is the case, you
will want to find out as soon as possible anyhow because you will eventually
lose files.

Hope that helps and let me know how it turns out or if you need more help.

-Louis


<---- Begin Included Message ---->


   <---- Begin Included Message ---->

   I just installed FreeBSD 2.0-R from the Walnut CD-ROM on a 1 Gbyte drive. I
   created two slices one for DOS and one for FreeBSD. When I boot DOS, I run
   fdisk, and it shows the slice sizes correctly. However, the DOS dir command
   still reports free space relative to the entire disk. E.g. it says 100 
Mbytes
   used, 900 Mbytes free. Is this just a DOS bug of some sort? I'm worried 
that
   DOS will overwrite sectors assigned to FreeBSD.

   <---- End Included Message ---->

An additional piece of information. When I first partitioned the FreeBSD
slice, I first imported the MS-DOS slice to partition e. However, when I do a
df under FreeBSD, it shows the same incorrect information as the DOS DIR
command. df shows my /dev/sd0e (MS-DOS slice) as having a capacity the size of
the entire disk!


I've looked through the FAQ and searched through the mailing list archives.
The only thing I've come up with is the SCSI card setting for 1 Gbyte drives.
I have this turned ON on the Buslogic card. Perhaps I should turn it off? I
tried turning it off, and tried booting (no reinstall) both DOS and FreeBSD,
they both still had the same problem, showing the MSDOS partition occupying
the entire drive.  Perhaps I should turn it off and reinstall all of FreeBSD
and Windows/DOS?  Perhaps I should use the real geometry of the drive, and
just make sure that the partition of DOS resides within 1024 cylinders again
using the real geometry of the drive? This just doesn't sound quite right to
me.

So I guess fdisk is destructive? Everyone who has partitioned their disk to
install FreeBSD, had to re-install DOS and windows?

I seem to recall a message someplace saying that some Conner drives have some
sort of auto-translation of the cylinders? And that some special care needs to
be taken when writing the MBR code? Unfortunately I can't seem to track down
this message. 

---------------------------------------------------------------------------
--- Output of DOS fdisk
  Partition	Status	Type	Volume Label	Mbytes	System	Usage
C:  1		  A	PRI-DOS	Micron		501	FAT16	49%
    2			non-DOS			512		51%
---------------------------------------------------------------------------
--- Output of tools\dos-tools\pfdisk 0
geometry 1013 64 32 (cyl hd sec)
#	ID	First (cyl)	Last (cyl)	Nmae	#start, length
1	6	0		500		Dosbi	32,1026016
2	165	501		1012		unkno	1026048,1048576
---------------------------------------------------------------------------

---------------------------------------------------------------------------
--- Output of /sbin/disklabel
# /dev/rsd0a:
type: SCSI
disk: 
label: MBR based label
flags:
bytes/sector: 512
sectors/track: 32
tracks/cylinder: 64
sectors/cylinder: 2048
cylinders: 1013
rpm: 0
interleave: 0
trackskew: 0
cylinderskew: 0
headswitch: 0		# milliseconds
track-to-track seek: 0	# milliseconds
drivedata: 0 

8 partitions:
#        size   offset    fstype   [fsize bsize   cpg]
  a:    51200  1026048    4.2BSD     1024  8192    16 	# (Cyl.  501 - 525)
  b:    65536  1077248      swap                    	# (Cyl.  526 - 557)
  c:  1048576  1026048    unused        0     0       	# (Cyl.  501 - 1012)
  d:  2074880        0    unused        0     0       	# (Cyl.    0 - 1013*)
  e:  1026016       32     MSDOS                    	# (Cyl.    0*- 500*)
  g:   931840  1142784    4.2BSD     1024  8192    16 	# (Cyl.  558 - 1012)
Warning, revolutions/minute 0
super block size 0
---------------------------------------------------------------------------
--- Output of /sbin/fdisk
******* Working on device /dev/rsd0a *******
parameters extracted from in-core disklabel are:
cylinders=1013 heads=64 sectors/track=32 (2048 blks/cyl)

parameters to be used for BIOS calculations are:
cylinders=1013 heads=64 sectors/track=32 (2048 blks/cyl)

Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 0 is:
sysid 6,(Primary 'big' DOS (> 32MB))
    start 32, size 1026016 (500 Meg), flag 80
	beg: cyl 0/ sector 1/ head 1;
	end: cyl 500/ sector 32/ head 63
The data for partition 1 is:
sysid 165,(386BSD)
    start 1026048, size 1048576 (512 Meg), flag 0
	beg: cyl 501/ sector 1/ head 0;
	end: cyl 1012/ sector 32/ head 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>




<---- End Included Message ---->

----------------------------------------------------------------------
Louis J. Giliberto, Jr.    !  Support the Free Software Foundation
krnlhkr@mcs.com            !
----------------------------------------------------------------------



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?m0rhtej-000kR0C>