Non-booting machine and missing user rights on USB drives
Markus Schönhaber
ubuntu-users at list-post.mks-mail.de
Mon Jan 11 16:35:45 UTC 2010
11.01.2010 11:46, Ari Torhamo:
> Someone just sent a message to me that Ubuntu (9.10) machine that I
> maintain has stopped working. The boot process stops somewhere in the
> middle, and this message is shown:
> "One or more of the mounts listed in etc/fslab (tai fstab) cannot yet be
> mounted: /home:waiting for UUID=dd2d0d0 [...] Press ESC to enter a
> recovery shell."
> And after pressing ESC, this:
> ""General error mounting filesystems. A maintenance shell will now be
> started.
The first thing I'd try is to edit the "root=..." in GRUB's boot menu to
point to the device node of the root partition (i. e. something like
"root=/dev/sda1" instead of "root=UUID=dd2d0d0...").
> I advised the user to use the live CD for necessary work until we get
> the problem fixed. He then reported that he is not allowed to access
> he's files on his USB drive, because he doesn't have the rights to do
> so! :-o The same thing happened recently to the user of another machine
> that I maintain: he attached an external USB drive to his system, and
> everything worked nice and fine otherwise, but he wasn't allowed to
> write into the drive because he didn't have the rights. This is
> something I have to say I don't understand: why do users have to face
> this kind of usability in 2010, when Linux and Ubuntu have been in the
> existence for so long. I remember the user rights issue of Ubuntu being
> discussed a few years ago, and according to my memory the outcome was
> that the problem was being worked on and it was going to go away soon.
> Why then, in 2010, users still aren't given rights to their own devices
> that they plug in into their own computers?
The users are given the right to do what they want with their own files
on their own devices they plug into their own computers.
The important question is: which *are* the user's own files?
Who owns a file or directory is determined by the *user ID* stored in
the file's inode. This means, for example, if you create a directory as
the user with ID 1000 and don't grant permissions to anyone else, a user
with an ID other than 1000 (or 0) will not be able to access this directory.
WRT the problem you're facing: the UID of the live CD user is almost
certainly different from the UID the user of the installed system had.
Which means, from the system's perspective, the files on the USB drive
(or internal drive, for that matter) are *not* the (live CD) user's own
files.
You'll see this on any file-system that supports ownership and access
control, since it's exactly the system's job to ensure that the given
rights are respected and enforced.
If you want to allow users to write to a device regardless of their UID,
either adjust the permissions of the device/file/directory accordingly
or use a file-system like FAT/FAT32 that has no idea of ownership or
permissions and therefore won't offer any protection at all.
--
Regards
mks
More information about the ubuntu-users
mailing list