On Sunday 22 August 2004 08:33, Greg Wallace wrote: You could try, the quotes around the astericks * are important: find /u01 -name "*" -print | wc -l
I'd actually like to know just how many files are under the /u01 Oracle software directory, but haven't been able to figure out how to do that in Linux. Is there some command where you can say "Start at /u01 and give me a count of every file under every directory in this high level directory?".
Thanks, Greg W -----Original Message----- From: Greg Wallace [mailto:jgregw@acsalaska.net] Sent: Sunday, August 22, 2004 4:31 AM To: 'suse-linux-e@suse.com' Subject: RE: FW: FW: [SLE] Urgent! Need help!
And yes, I could have simply told YaST not to recover /boot/grub, but with Oracle Enterprise on there, it takes over an hour for Linux to build the list of all of the files on there. There is not "find" in that list, so you have to scroll all the way through it to locate the file(s) you want to exclude. Easier to just make a copy of the file I didn't want to recover and then move it back after the recovery.
Greg Wallace
-----Original Message----- From: Greg Wallace [mailto:jgregw@acsalaska.net] Sent: Sunday, August 22, 2004 4:20 AM To: 'suse-linux-e@suse.com' Subject: RE: FW: FW: [SLE] Urgent! Need help!
On Sunday, Auguts 22, 2004 3:27 AM, Greg Wallace wrote --
On Saturday, August 21, 2004 8:09 @ AM, Marcos Lazarini wrote --
Greg Wallace wrote:
On Friday, August 20, 2004 @ 9:01 PM, Marcos Vinicius Lazarini wrote:
Greg,
As I told you, the 'find /boot/grub/stage1' sometimes fails. Do it in the old-fashioned way - find yourself this file. Below I'll paste the steps in my machine:
Boot using the Rescue CD, and log as root; type 'fdisk -l'; here I got ---------- Disk /dev/hda: 16 heads, 63 sectors, 2484 cylinders Units = cylinders of 1008 * 512 bytes
Device Boot Start End Blocks Id System /dev/hda1 * 1 32 16096+ 83 Linux /dev/hda2 33 2216 1100736 83 Linux /dev/hda3 2217 2484 135072 82 Linux swap ----------- Notice a star marking hda1 - that's a good hint. Your boot partition should be marked like that (should be or must be? not sure) As you told earlier, you should have only one Linux partition, so it won't be difficult to find.
Just to confirm, mount this device and check its contents. You can use any directory as a mount point:
cd /mnt mkdir linux mount /dev/hdxxxxx linux cd linux ls
You should see directories like these: bin cdrom etc home lib opt root sys usr boot dev floppy initrd mnt proc sbin tmp var
if not, start again: cd /mnt umount linux fdisk -l ....
When you find, then try this one: ls -l boot/grub/stage1 -rw-r--r-- 1 root root 512 Aug 14 23:14 /boot/grub/stage1
You have found the partition you was looking for!. Now edit boot/grub/menu.lst to reflect the changes; it will use. In mine, I have to change the partition number in 2 places - kernel and initrd parameters. Just as an example, here is a fragment of my menu.lst: -------------- ###Don't change this comment - YaST2 identifier: Original name: linux### title Linux kernel (hd0,0)/boot/vmlinuz root=/dev/hda1 vga=0x31a splash=silent desktop showopts initrd (hd0,0)/boot/initrd --------------
If you have changed the partition's organization (in relation to the situation it had during the backup), you should also change your etc/fstab to reflect the new structure. Otherwise, you will be able to load the kernel, but the kernel won't be able to actually boot the system. You should change only the first column. --------------- # /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> /dev/hda1 /boot ext3 defaults 0 0 /dev/hda2 / reiserfs defaults 0 0 /dev/hda3 none swap sw 0 0 proc /proc proc defaults 0 0 ---------------
As you can see, I have a separated boot partition because this is an (very) old machine and have problems booting kernels located beyond cylinder 1024. That's not you case - just to clarify my architecture.
I hope that is enough to make your system bootable again.
From this situation, we all learned one lesson: *always* save, with your backups, the partition scheme you were using in that moment; in case of a disaster, it will be easier if you put each partition back online in its original relative-position (even if you have to create empty ones), and avoid all that confusion with partition numbers and letters.
Good luck in your tries!
Marcos:
You don't know how much I appreciate the help you have given me. Thanks to you detailed and accurate information, I have gained a great
deal
more insight into the installation process, the boot process, and how
the
boot process ties into the startup of the system. I am still not up
yet,
but I think I can now provide some much more meaningful information as
to
where I am. I had to do quite a bit of clean-up in the menu.lst file. Here's what I now have. I have added a few comments that might
hopefully
make some things clearer about how I got to this. Short comments appear next to the menu.lst line it applies to. Longer comments are at the
end.
To begin with, I had to change (hd0,2) to (hd0,1) in many places.
Here's
what I now have --
fxmenu (hd0,1)/boot/message color white/blue black/light gray default 0 timeout 8
title linux kernel (hd0,1)/boot/vmlinuz root=/dev/hda3 hdc=ide-scsi vga=788 makeactive <-- I added this not sure if that was correct or not. title windows root (hd0,2) # makeactive <-- This is a null/zero length partition (see Note1 below) chainloader + 1 title floppy root (fd0) chainloader + 1 title failsafe kernel(hd0,1)/boot/vmlinuz.shipped root=/dev/hda3 ide=nodma apm=off ocpi=off vga=normal nosmp maxcpus=0 disablepic 3 initrd (hd0,1)/boot/initrd.shipped
When I ran the last install, Linux suggested (as best I can remember) --
Swap 3 G Linux Windows Swap ? <-- Some smaller size, as I recall <-- Not sure if there was anything in here Reiserfs <-- sp?
I had manually gone in and edited the partition setup on the previous install and that was a complete disaster. So, this time, I tried to go along with Linux as best as I could. I didn't really want Windows on
the
machine, but I was afraid to strip out that partition completely, so I simply made it 0 length. It seemed to be giving me problems during start-up, so I added commented out the "make active" statement. There
was
no such statement on the Linux partition, so I added one in (was that
bad,
or would it probably be ignored anyway?). I have no idea what Reiserfs
is,
but since Linux was wanting to give it to me, I basically said "Ok,
whatever
you say". When I try to boot the machine now, it hangs completely in
Stage
1. When I boot from the CD, I get this --
SELECT SYSTEM
/dev/hda2 (SuSE Linux 8.1 (i386)) /dev/hda7 (SuSE Linux 8.1 (i386))
Since it has these two choices here, that makes me think that that's why it's hanging on a regular boot (it has two systems and doesn't know
which
one to go to). If I select the first one, I basically get the same
messages
I was getting before (the ones I posted). Before I go further, I'd like
to
add some general comments. If I get this system back up and running,
given
that I now know I can get it back from a backup, I plan to continue on
and
upgrade to 8.2, 9.0, 9.1. Given that, if there are partitioning
problems
here that can be worked around (say I really don't need either the
Windows
or the Reiserfs partition), I'd like to be able to just kill those when
I
move to 8.2. On the other hand, if there is no work around, I guess
I'll
have to go back through the whole process again. It is terribly slow because of all of the files in there under Oracle. I have Oracle Client
on
my Windows machine and I have 12 M of occupied storage. There are app. 120,000 files in that 12 M (10,000 files per M!). And that's just
Oracle
Client! God knows how many files are in the database server setup on my Linux machine. The installation process eats up a good part of a day!
Then
again, as I said above, I have to get it to work, so whatever it takes
to do
that I'm most certainly prepared to go through. Any further assistance greatly appreciated.
Respectfully yours, Greg Wallace
Greg, You must understand that your menu.lst file alone is (in practical terms) useless if we don't know (without doubts and guesses) your partition scheme and the mount points.
How can I say: "Hey, change hd0,1 to hd0,2 in menu.lst" if you provide no solid info about the partitions? I'm trying yo make you understand the close-relation between those: menu.lst (GRUB) <-> `fdisk -l` (Partitions) <-> /etc/fstab (mount point)
For now, I can only see an inconsistency in your menu.lst.
kernel (hd0,1)/boot/vmlinuz root=/dev/hda3 hdc=ide-scsi vga=788
Here you load the kernel (/boot/vmlinuz) from /dev/hda2 (hd0,1), and give parameters ' root=/dev/hda3 hdc=ide-scsi vga=788'. Notice that you inform the kernel to look for it's root filesystem (the / directory) in partition /dev/hda3 (hd0,2). (Based on what you posted here, I'm assuming you have only one linux partition for everything)
I'm not sure about the 'makeactive' option, I have never used, don't think it will be necessary.
You have to pay attention to the details; one number wrong in any of these steps and your system won't boot anymore.
(I'm leaving now; will try to read mails tomorrow - otherwise, be back on monday)
Regards, Marcos Lazarini
Ah, Marcos, sometimes you overestimate my knowledge. "fdisk -l", so that's where I can see the details of my partitions! Ok, now I'm off to do the reconciling you talk about.
Greg W.
Ok. I've finally gotten the boot process fixed. I went back and re-read all of Marcos' detailed notes, sat down and created a summary of my own, and all of a sudden it dawned on me what the boot problem was. Going back to the very beginning and summarizing, I originally wiped my system out while trying to re-partition the Windows partition from within Window. I wanted to shrink it down and use the extra space to expand my Linux Swap partition. Seemed like a simple enough change -- move the Windows boundary up, then come over to Linux and grab that extra disk space by moving the beginning of my swap up, grabbing the space that would be left open from where the end of my Windows partition was sitting. There was one fatal flaw in my process. I had a bunch of large, seldom used files sitting on my Windows machine and had earlier decided to move them to the bottom of the Windows partition to get them out of the way, thereby moving the rest of my Windows files further out to the edge of the disk and increasing performance. I used Partition Magic to shrink the Windows partition (as far as I could find, Windows had now way of doing that -- of course, why would good Ol' Bill and the boys want to let people free up part of their disk for other players!. Well, Mr. Partition Magic has a fatal flaw. It apparently DOES NOT CHECK THE END OF THE PARTITION TO SEE IF THERE IS ANYTHING THERE BEFORE SHRINKGIN IT!! Well, he cut the bottom of it off all right, but that completely trashed my Windows partition. I then went about trying to recover that partition, knowing full well I needed to be conscious of Linux sitting right below me. I had never done a Windows ASR recovery before and did a bunch of things wrong. The first time, I tried to just re-install it out of the box and then to recover all of the data afterward (I knew that would hose the MBR, but I knew once I got Windows back in place I could somehow get the MBR re-written from within Linux. After all, that was the way it was installed in the first place. Well, you can't simply recover Windows like that. Unlike Linux, he stores all of the device configuration details in the MBR as opposed to storing just a skeleton MBR and resolving all of the devices at boot phase 2. So, I had all of the data over there but when I tried to boot, Windows just keep exiting and having the boot process start all over. I thought things were actually getting resolved a piece at a time, but in actuality, it was just churning. I left it like that all night and when it was still going the next morning, I figured "Ok, IT CAN'T POSSIBLY TAKE EVEN WINDOWS THAT LONG TO GET THROUGH THIS PROCESS!!. It was only then that I started to dig and finally understood that you have to use the ASR diskette to do a Windows recovery because one of the files out of an ASR backup is a list of every device that Windows partition is going to need when it boots up. Once I figured that out, I had my Windows partition back. I also had a "Differential Backup" from Windows taken 2 days after the full backup and wanted that data back also. DON'T EVER TRY TO DO THAT!!!!!!! That recovery trashed the entire hard disk, Linux and all!! So, there I was with nothing but trash where I once had a functioning Windows and Linux machine. I still had the ASR backup for Windows and the full backup for Linux, but at that point I was so pissed at Windows that I decided I was going to dump it completely and just go to a pure Linux setup. That would be much better anyway, because I would then have all of my Linux data sitting on the outside of the hard drive instead of buried 40G deep where the disk had to spin multiple times to read the same amount of data it could be reading in one spin if it were sitting on the top of the disk. Seemed like a no-brainer (and it's going to be if I ever get through this installation). That brings us full circle back to the problem at hand and why I could not get my boot process to work. I had completely re-configured the partitioning on the disk, so since I was recovering from a backup from before, which had on it, among other things, /boot/grub, you guessed it, I completely overlayed my new /boot/grub with the one from before. Once I finally figured this out, I did a complete re-install of Linux, logged in, made a copy of the entire new /boot directory, recovered my old data, trashed the old /boot directory, and moved the new one into its place. YAST had recognized there was some problem and gave me a message at the end of the recovery that he could not write the MBR. He had, however, already deleted the one that was out there, so I had to re-boot from the CD and then and go through the steps that are now so familiar to me I could say them in my sleep --
grub find /boot/grub/stage1 root (hd0,1) setup (hd0)
Since I did that, I can now boot my machine without having to keep re-using the CD, a MAJOR milestone in all of this. I still have some error messages, but they really in no way relate to this original problem, so I am going to start a completely new thread. I will call it simply "Need help resolving installation problems". I may not get started on that one until about a week from now. I am leaving tomorrow (was going to be morning, now it'll be afternoon) for a week of backpacking in Denali National Park here in Alaska. I have been training on Linux and Oracle for over a year and a half without a break and, especially after all of this, I need to get as far away from a computer as I possibly can (the wilderness will do the trick!). Thanks again to everyone who helped on this and, most especially, Marcos.
Yours truly, Greg Wallace