I see that your fdisk -l listing shows sda1 is Linux, sda2 is the extended logical partition space, and sda5 is your swap partition.
Quote:
Originally Posted by zensunni
Well I guess I should start with repairing grub2.
How is this done? I tried to mount my filesystem, but the ubuntu live CD didn't find it.
When I typed:
mount /dev/sda1 /media/sda1
it said I must specify a filetype.
|
This error usually means that the operating system didn't recognize the file system type because it doesn't have a driver (module) installed for it. It most often appears when you are trying to mount a Microsoft file system.
Quote:
Originally Posted by zensunni
my crunchbang live CD picked it up and mounted it under /media/disk
|
Speaking from no knowledge of crunchbag I would say that yes you can use crunchbag to fix your installed Ubuntu system.
So now let's get on with fixing GRUB 2. Note that the steps to repair legacy GRUB are the same until we get to the GRUB commands.
Here is the procedure. You MUST be logged in as root in order to perform this procedure.
1- fsck the Ubuntu file system
Note that this by itself could fix your problem Try to boot Ubuntu after this step.
2- mount the Ubuntu system partition
3- mount --bind the /dev and /proc file sytems to the corresponding directories in the mounted Ubuntu file system
4- chroot into the Ubuntu file system
5- remove the offending script from the system startup
6- repair (optional) and install GRUB 2
Here are the details.
1- fsck the Ubuntu file system
This may fix your problem. Try to boot Ubuntu at this point. If it doesn't work then start over using the live CD and go to step 2.
2- mount the Ubuntu system partition (/dev/sda1) to /media/disk. You said that crunchbag does this already so I won't put a mount command in here. I don't want to confuse you with something that you don't need. Just be sure that the partition is mounted read/write.
Code:
touch /media/disk/delete.me
ls -lh /media/disk/delete.me
If you see the "delete.me" file then you are all set. Yes you could simply have used mount | grep media to see if the file system was mounted read/write.
3- mount --bind the two system directories /proc and /dev to the mounted Ubuntu file system.
Code:
mount --bind /proc /media/disk/proc
mount --bind /dev /media/disk/dev
4- chroot into the Ubuntu file system
Code:
chroot /media/disk /bin/sh
From this point on all file paths are relative to the Ubuntu system partition. In other words the Ubuntu system partition is / for this shell ONLY. Any new shell instances will still be using the live CD as their environment.
5- remove the offending script from the system startup. Keep in mind that there are lots of ways to do this. My way preserves the code so that you can continue to experiment.
Code:
cd /etc/init.d
mv hourly_reminder.sh disabled-hourly_reminder.sh
6- now fix GRUB 2. You may only have to run /usr/sbin/grub-install.
Code:
/usr/sbin/grub-install
I don't see any reason that your scripts should have broken GRUB 2 in the first place so let's say something else broke GRUB 2. You may have to repair the configuration. These commands should do it. Notice that I am calling /usr/sbin/grub-install after the two GRUB 2 "repair" utilities.
Code:
/usr/bin/os-prober
/usr/sbin/update-grub
/usr/sbin/grub-install
If these steps don't work then you should think about anything else that you did that could have affected GRUB 2. As I said, your script may have broken X but I don't know why it would have broken GRUB 2.
It is possible that GRUB 2 is not broken but Linux cannot start X. However I would guess that this would lead to Linux loading in terminal mode.
You may have to delete the files /root/.Xauthority and /home/joe/.Xauthority
Anyway, good luck. Keep in touch. Let us know if you fixed the problem and, if you fix it, let us know how you did it.