It’s the perfect nightmare and everyone do all his best to avoid it but sooner or later it happens.
Loosing data from a hard disk or a USB device is more common than you can image and everyone has experienced it!
Windows has different commercial solutions available to recover data and partitions but, if you use Linux, you need something different.
The best solution I found for Linux is an old but current article by Lifehacker.au that I strongly recommend if you are experiencing this kind of problems and want to solve them.
sudo nano /etc/ddclient.conf
sudo /etc/init.d/ddclient status
At the beginning it appeared as a no-solved mystery because in all the many posts I read, there were no effective solutions. On my Ubuntu 10.04 LTS I was no able to use the external hard disk I had connected to the LAN and every time I tried to mount it I only received this message: Unable to mount location – Failed to retrieve share list from server
In few words it was not possible to use the Windows Network and all the people with the same problem (which is specific for the Ubuntu 10.04) suggested to reconfigure Samba but all the configuration and scripts I tried were no effective to let me use the external hard disk.
At the end I found someone who talked about a possible firewall misconfiguration and I tried in many ways to bypass the situation using ufw commands and opening ports and services over the LAN:
$ sudo ufw status
[sudo] password for *****:
To Action From
— —— —-
135,139,445/tcp ALLOW Anywhere (log)
137,138/udp ALLOW Anywhere (log)
Samba ALLOW Anywhere
192.168.0.3 Samba ALLOW 10.0.0.0/8
10.0.0.0/8 ALLOW 192.168.0.3 Samba
Unfortunately, every new permission I granted to Samba on my Firewall was not a real solution but when I tried to stop the Firewall (System –> Administration –> Firewall Configuration) using the default firewall manager, Ubuntu was able to find and work on the external hard disk.
For this reason I made some tests and found this solution:
1 – enter your router settings and find the list of the attached device
2 – find the name and the MAC address of the LAN device you want to connect to your PC
3 – find the menu for the Lan Setup and add an Address Reservation for the above device. Now you are sure that the router will always assign the same address to the device
4 – back to Ubuntu, install and launch Firestarter (for some incomprehensible reasons the default firewall manager is not able to create rules for Samba services and ports)
5 – on Firestarter, go to Preferences —> Policy Editor and click on “Apply policy changes immediately”
6 – try to connect again to Windows Network, obviously (sic) it will not work but then go to Firestarter —> Events and you will notice that the last line is the “missing” external disk which has an “unknown” service
7 – right-click the mouse on this line and “Allow connections from source”. Now the external hard disk is visible from Ubuntu 10.04 LTS and it is possible to work on it!
8 – to be sure that your LAN device will be rightly connected to Ubuntu 10.04 every time you boot up it: go to System –> Preferences –> Startup Applications
9 – add a new Firestarter rule typing the following command: sudo firestarter
It happens sometime that you can’t remember root password. On Linux, recovering root password can be done by booting Linux under a specific mode: single user mode.
This tutorial will show how to boot Linux in single user mode when using GRUB and finally how to change root password.
During normal usage, a Linux OS runs under runlevels between 2 and 5 which corresponds to various multi-user modes. Booting Linux under runlevel 1 will allow one to enter into a specific mode, single user mode. Under such a level, you directly get a root prompt. From there, changing root password is a piece of cake.
Some Linux distribution, such as Ubuntu for instance, offer a specific boot menu entry where it is stated “Recovery Mode” or “Single-User Mode“. If this is your case, selecting this menu entry will boot your machine into single user mode, you can carry on with the next part. If not, you might want to read this part.
Using GRUB, you can manually edit the proposed menu entry at boot time. To do so, when GRUB is presenting the menu list (you might need to press ESC first), follow those instructions:
– use the arrows to select the boot entry you want to modify.
– press e to edit the entry
– use the arrows to go to kernel line
– press e to edit this entry
– at the end of the line add the word: single
– press ESC to go back to the parent menu
– press b to boot this kernel
The kernel should be booting as usual (except for the graphical splash screen you might be used to), and you will finally get a root prompt (sh#).
Here we are, we have gained root access to the filesystem, let’s finally change the password.
As root, changing password does not ask for your old password, therefore running the command:
will prompt you for your new password and will ask you to confirm it to make sure there is no typo.
That’s it, you can now reboot your box and gain root access again.
Today, in our Linux Page (in Spanish) we have posted a review about the new version (4.2.5) of Damn Small Linux. Damn Small Linux is one of our favourite distribution due to its capability to run on very old PC as 386/486/Pentium with very few hardware resources. This version has updated some features as Monkey Webserver 0.9.2 and is incredibly stable (as the previous ones, I must say). According to distrowatch.com, in the last 12 months Damn Small Linux has been the 10th most downloaded (and consequently used) Linux version also because, with no costs, many people are converting old Windows based machines to new up-to-date computers. Anyway, Damn Small Linux is based on Knoppix but is smaller and contains many improvements. Last but not least, I would like to focus your attention on the five different subversions available:
– dsl.iso is the standard isolinux version
– slinux.iso uses syslinux instead of isolinux (for very old PC’s)
– vmx.zip can be run in VMware Player
– embedded.zip contains QUEMU for running inside Windows
– frugal_lite.sh is the network install script and requires tomsrtbt linux: http://www.toms.net/rb/.