Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I was trying to load a version of CGminer which was returning a libudev type error, and followed a supposed solution here but it destroyed my system (so it seems).

I loaded the system in recovery mode from GRUB but all that done was actually tell me what I something is broken, do not know what to do next.

I think I somehow associated a libudev.so.0 to 1 or 1 to 0, I am not sure what I did and how to fix it.

share|improve this question
2  
I think that a reinstallation would be easier. –  Braiam Oct 7 '13 at 18:52
    
Braiam - thanks for the comment , in this case not for me - before the helpful answer was deleted - I checked and libudev0_175-0ubuntu9_amd64.deb is only 26 or so k large - as i have said (and did say before it was deleted) I only have wireless at the moment and I have both upgraded this system and added the drivers - so much easier for me to try to fix the broken link. –  user199551 Oct 8 '13 at 0:55
    
I had a similar problem trying to install LightTable on 12.04. This solution fixed my boot problem but I did have to run:- sudo mount -o remount,rw / because dpkg was giving lock file errors. Given up installing LightTable! –  user266300 Apr 7 at 14:43

1 Answer 1

up vote 11 down vote accepted

I see that some of the solutions posted on the other question overwrite libudev.so.0, because of the -f option supplied to ln. This is not due to malicious intent, but because these solutions were designed for newer versions of Ubuntu, in which the libudev1 package is used. The solution creates libudev.so.0 symbolic link. But in 12.04, libudev0 is used. So the libudev.so.0 library file is overwritten with a broken symbolic link to libudev.so.1 which doesn't exist. The solutions should not have included the -f option for ln in the command line, which overwrites files.

Enough of the explanation, here is a solution:

Basically the library file is replaced with a broken symbolic link. Start in recovery mode and select the root shell option. Then run this command: apt-get install libudev0. Once you are done, type exit and reboot. If you are using WiFi, download the libudev0 package and copy it into a USB drive. Then in the root shell in recovery, plug the USB drive and run: (tip: you can use Tab to autocomplete many things, including file paths )

sudo mount -o remount, rw / # (re)mount the filesystem in read-write mode.
mkdir /media/usb
mount /dev/sdb1 /media/usb
dpkg -i /media/usb/path_to_package_file

Then reboot and hopefully your system should work.

share|improve this answer
    
what if the file system is read-only? –  kapitanluffy Jun 8 at 2:37
    
@kapitanluffy Correct, I will update the solution. –  Ramchandra Apte Jun 9 at 13:25

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.