Slashdot videos: Now with more Slashdot!

View

Discuss

Share

We've improved Slashdot's video section; now you can view our video interviews, product close-ups and site visits with all the usual Slashdot options to comment, share, etc. No more walled garden! It's a work in progress -- we hope you'll check it out (Learn more about the recent updates).

An anonymous reader writes "Most people use MS filesystems on Disk-On-Keys, and portable hard drives, as these are readable from most machines. But this way you lose the files' permission information, which many times is very inconvenient (you must agree that having Ubuntu asking you whether to execute or display every text file or image you open from a DOK is annoying). Using 'regular' Linux filesystems like ext keeps the permissions, but may require using the superuser when switching machines (as the UIDs are different). So do any of you have a creative solution for this problem?"

When installing Linux on more than one computer at home, I always make sure that I have the same UID number, on each computer. That way I avoid having permission problems, when accessing my files from an EXT3 formatted external hard drive, using one of my other Linux computers.On all three of my computers, my user name is Rick and my UID number is 1000. With most recent versions of Debian or Ubuntu, the first user created is assigned the UID number of 1000. So in most cases, I would get the same user ID

I was thinking, perhaps incorrectly, the poster has a bootable linux on USB, and he wants to boot up different computers with it, and access his home directory on those computers, but is having trouble because his files have a different UID on each computer. The idea was the bootable USB linux could adapt to different disks by having a different passwd file for each, which his username mapping to the appropriate UID on each.

OK, that was probably too much to assume, but I have been facing this particular problem a lot lately with accessing the host filesystem on VMs that I move around.

I use whatever file-system happens to be on the portable media I happen to be using. I move data from Windows to Macs to Linux machines all day long and I never, ever have to think about which filesystem is on the portable media.

One worrying thing is the new exFat filesystem in use in newer version of Windows. You can be sure after the patent lawsuites suit's on normal Fat that there is patented stuff in exFat. Unfortunately a a new FS is going to be required soon as flash drives start to hit the larger sizes. With every desktop running Windows and most of the population not even knowing what a filesystem is, everyone will end up using it. It's also the standard for SDXC.

Or possibly get a stick that supports U3 on it. Put the windows drivers for reiser on the CD portion of the drive and format the storage are as reiser. Self-contained, multi-platform, permission preserving solution.

Now this is something I don't understand. How do these jokes cause any harm to Reiser's wife's children or family? Every time someone makes a joke about something that, for some reason, "shouldn't be taken lightly", there are people expressing their outrage about how it was wrong to make it. Everything is offensive to someone, we should all realize that being offended doesn't harm you in any way and you can just skip over to the next comment and let people who want to laugh about something do so.

It bothers me because it hurts innocent code. The code didn't do anything wrong. The software he wrote didn't murder anybody. But now the only thing anybody ever talks about when they talk about the code is murder. The code deserves better than that.

It was pretty mediocre code to begin with. Interesting, but not anywhere near as revolutionary in practice as people seem to think. Add to that the fact that Reiser was it's primary maintainer and core developer and it's probably not worth bothering with. Especially since SSD's are likely to change the design of file systems rather dramatically in the next few years.

Plus, slashdot has a lot of karma to make up for all of their "just because they found his car with the seat ripped out and a huge spot of her

I've trashed more than one Linux install (okay, two) by attempting to use reiser's own utilities to undelete some accidentally rmstarred files or other. Hang, draw and quarter the sonovabitch, that's what I say! Death's too good for him!

Oh and apparently he killed someone. Maybe he should pay a fine for that too, or something.

False equivalency. You've just equated Nazis and the KKK with Teletubbies in terms of offensiveness. Bravo.

That really depends on who you ask. Ask a proud KKK member, and they'll probably say the Teletubbies. Well, after the blacks, jews, and... well, anyone not white. I'd say ask a Nazi, but... well... all that's left are very old men and the "neo-nazi"'s.

Not that I'm expressing any support or opposition for any of your selected choices.

You do realize that you lose NTFS permissions when copying from a Windows machine to external FAT-based storage, too, right? It's an issue that plagues every platform due to the inherent incompatibility with ACL's/UNIX permissions in FAT. This really has nothing to do with Ubuntu or any Linux distro, or even Mac OS - It's a common issue, and I believe Windows (XP and later) will also prompt to run anything from a FAT-based device, since the "this program is trusted" flag (I can't recall the proper name for

Threads like this remind me of why Linux will never make it as a mainstream OS.

I converted two people in my office to Ubuntu recently. One is an accountant. The other is an attorney. Both of them were shocked at how reliable and low-maintenance Ubuntu was. Both of them wanted to know why no one else knows about this. The only thing they needed help with was installing the proprietary media codecs (and I should point out all I did was send them links). They installed Ubuntu themselves, and they regularly tell me how happy they are with their computers now.

You're the bullshitter. Get out into the real world. There are billions of people, thousands of languages, thousands of accounting standards. Many are not supported by windows, many are in the third world where the price of windows is a deal breaker, many are conforming to standards you've never heard of, many want software they control, many detest DRM and all it stands for, and many are thinking long term and not the short-term, blinkered thinking you're professing.

M$ marketing and people sucked in by their propaganda like to claim Windows is the only possible alternative however it's just a dishonest attempt to create a self-fulfilling prophesy.

In reality windows is only one of a number of alternatives, nothing lasts forever, and one size does not fit all.

---

I never look at alternatives because I'm going to be running the same OS for the rest of eternity.

This thread is not evidence of Linux being deficient compared to Windows; portable media doesn't usually have intact and correct permissions on Windows systems either! The difference here is that Linux users are pickier about the issue while Windows users, on average, don't care (if they even know about and understand the problem to begin with).

When I use the rsync command, none of the dates or permissions is altered. I use rsync from the command line, about once a week to back up my files onto an external USB hard drive. There is also at least one point-and-click GUI type front end for rsync, which I have not yet tried.

I used GParted to reformat my external hard drive as an EXT3 partition. GParted is an easy to use, free point-and-click GUI type front end for free Parted partitioning program. I have also used GParted to reformat several small USB keys as EXT3. GParted will can also create other types of partitions, such as FAT16, FAT32, NTFS, EXT2, EXT3, JFS, XFS, Reiserfs, and Reiser4 partitions.

If I were using the tar command to bundle my directories and files up into a tar ball or a compressed tar ball, the permissions and dates and everything would have been preserved inside the tar ball. In that case I could have stored the tar ball on a FAT32 partition, without loosing permissions or the correct dates. But instead of doing that, I have been using the rsync command to create a backup copy of all the directories and files and everything onto the external USB hard drive.

So there is no straightforward way to keep track of file creation times under POSIX systems? (nevermind translating between the conventions, if some obscure one is possible for POSIX, under dualboot scenario) That's a very dissapointing to me, since I find absolute file creation dates very usefull when navigating the filesystem...

It's like the OP asks for a solution to a problem when using Linux, and then there's a grand cacophony of people denying that there is a problem! (when there is, why else was it presented?)

There are two solutions that I use:

1) Use tar to zip up the files with attributes, Then copy the.tar or.tgz file to the USB drive. Both Winzip and Archiver read tar files, so they can still be read on Win/Mac. Disadvantage? You can't easily save changes...

How does requiring the UID to match prove any more secure than requiring a username match, for a portable drive? If I have the drive in my hand, I can plug it into any computer I want and access it as root anyway.

Isn't the whole point of this "problem" that there shouldn't be a solution to the problem?

That was my thoughts exactly, I don't think the guy understands how security works. If you remove the qualifications to access a file to perseve only -- say -- the need for user name to match, then what the hell kind of nonsense security is that?

This may be a case where the physical security (possession of the portable media) is much more important than the filesystem permissions. Generally speaking, the portable media itself is a storage-only device and does not have the mechanisms in place to enforce file permissions, relying entirely on the machine to which it is connected for such tasks. Therefore, if you are not using encryption, then you should always assume that anyone with physical control of the media is going to be able to obtain the fi

If you remove the qualifications to access a file to perseve only -- say -- the need for user name to match, then what the hell kind of nonsense security is that?

True. However, there are other systems that use user name and key. NFSv4 uses user name and kerberos. Does a similar cross-platform solution exist for removable media?

Personally, I just mount vfat with my UID. Granted, that means no security for my files. However, there isn't anything currently on the key that I care about. If I were to put something sensitive on it, I'd encrypt the drive.

I have thought about using ext2, as it has a driver for Windows. However, you do get into the UID matching problem.

Since we're talking about portable media, I want it portable and use fat32.

I use FAT32 even on the HDD partition shared between Linux and Windows on my office machine. Other file systems have just caused me headaches with permissions in the past, though I suppose that's just because I wasn't managing them properly. I suppose I could change my ways, but it's easier just to use FAT. If that's ill-advised of me, maybe someone will tell me so:-)

I'm not sure what I'm going to switch to when >4 GB files become more prevalent...

The Linux NTFS drivers are working well now. That's what I use on my shared partition.

Except if the portable drive is pulled out of the machine without being properly unmounted. Then the filesystem is unclean, and the Linux NTFS driver doesn't know how to replay the journal. So the thing becomes unusable until you stick it into a Windows machine and then remove it properly. Of course, you shouldn't be pulling it out without unmounting . . . that can cause serious data loss on some cheap USB drives, apparently, regardless of journaling.

I'm not sure what I'm going to switch to when >4 GB files become more prevalent...

There has only been one situation where I've had to move or copy a file over FAT32's filesize limit: Moving either a VMWare or VirtualBox image from one machine to another. It those cases, I upgraded disks and kept the same OS (some form of Linux), so it's not been a problem, since I had both the old and new disks connected to the same system. I would imagine it would be the same with any WinXP/Vista/7 box. You have

If you have needs for large files why wouldn't someone just stick it on a server, plug in the box to the server and download the file over a local network? Yeah, it might be slower but it sure would be cheaper (anything above 16 GB in a USB flash drive is -expensive- ) and would work on any OS.

As someone already mentioned NTFS is better. I'd feel naked using a non-journaling filesystem... On the other hand, I've never had any permissions problems using ext under Windows, but I don't share this computer with anyone else.

Of course, the problem with FAT32 is that it cannot accommodate file sizes larger than 4GB. In this day and age, carrying a few DVD ISOs around is quite common, so FAT32 doesn't quite cut it. What is needed is some kind of file system that doesn't use any permission, but is a bit more modern than FAT32.

I just use FAT32 because the main point of my USB drive is to transfer data between computers and provide a backup of my most important documents. To be perfectly honest I don't know why anyone would need permissions on a USB drive. Most programs on Linux are easy enough that with your.whatever directory in your home folder simply just copy that to your drive and paste it on the new machine. With APT and such most software is easily accessible (making portable binaries like on Windows needless). So why would you even need it?

And if you were plugging into a different machine, why wouldn't you make your flash drive be FAT32? Lets see here the choices are FAT32, basic but everything can read it. HTFS+ But Macs can't read it, NTFS which I think has some problems with OS X, or EXT3 or another obscure Linux system that may be superior tech wise, it simply won't work on any non-Linux system.

If you don't want things to look executable, mount it with the noexec option (which you could put in fstab). That way nothing on the device, even with FAT, will appear executable.

I just tested this out, and it does not work. mount(8) says that mounting something noexec means that execution of files on the filesystem is not allowed. However, that does not necessarily mean that the execute bit will be unset. Instead, on my system the execute permission bit is set, but attempting to execute something gives me "permission denied."

I've had the problem the questioner asks about before; the cleanest solution is to use "fmask=133" in the mount options, as described in mount(8). (There are a

One of the annoying things about User ID's is that most Distros user utilities start at some number and count up. Then when you use nfs or removable media you find that the files are now owned by another user.

It would be nice if the default was to pick a random arbitrary and large UID so the chance of UID clashes would be remote.

>mrcaseyj wrote:>>>>> C3ntaur wrote:>>> I invite anyone who claims CO2 is not a pollutant to sit in a room full of it for 10 minutes.>>>> I invite anyone who claims pure water is not a pollutant to sit in a room full of it for 10 minutes.>> I invite anyone who claims pure oxygen is not a pollutant to sit in a room full of it for 10 minutes

I invite anyone who claims pure vacuum is not a pollutant to sit in a room full of it for 10 minutes.

>mrcaseyj wrote:>>>>> C3ntaur wrote:>>> I invite anyone who claims CO2 is not a pollutant to sit in a room full of it for 10 minutes.>>>> I invite anyone who claims pure water is not a pollutant to sit in a room full of it for 10 minutes.>> I invite anyone who claims pure oxygen is not a pollutant to sit in a room full of it for 10 minutes

I invite anyone who claims pure vacuum is not a pollutant to sit in a room full of it for 10 minutes.

You are all wrong: in all these fatal scenarios, the common element is the room. Those do-gooders in Copenhagen should be negotiating an agreement on room reduction.

I use tarballs. I have Macs and Linux boxes, and I occasionally need to share with windows users, so I use Fat32 as my flash drive FS. But when switching files between two of my boxes, or another Unix-like box, I use tar jcvf foo.tbz <files>, then tar jxvf foo.tbz on the other side. It works great. I suppose now that I have a 32gb flash drive, I could drop the j and avoid the slight time delay of the compression, but it's an old habit.

Until very recently, I had a 32GB USB flash card formatted with FAT32. Not that I find FAT32 particularly nice, but it was practical, as it enabled me to easily swap my stuff between my home Windows game PC, my Linux PC, my work Linux laptop and my work Windows PC. The problem was never Linux - the problem was Windows and a lack of ext3 support (I develop under Linux and need the chmod permissions, which all turns to crap when I copy it over to FAT32, which doesn't retain them)

Focus on the WAS. It WAS practical, until I was faced with the rather interesting prospect of copying an 7.5GB dual-layer DVD master image onto the stick. As we know, FAT32 has a file size limit of 6GB which causes all kinds of interesting problems.

I use git or tortoisegit for my file transfer needs. There is also a samba share for my xbox to access movies and music. If that doesn't cover it, I have my flash drive somewhere with a portable copy of winscp.

But it's possible to use ext2 and not lose cross-machine function ; there are filesystem drivers for Windows that are able to mount ext2. Of course, you have to pre-plan which machines you're going to use, and have administrator rights on them to install the driver, and it's not nearly as mature as the FAT32 driver is for both Linux and Windows.

This is hardly a problem unique to Linux, although as you point out Linux does have its own special requirements that may make using FAT32 a bit problematic.

My home network is a combination of Mac OS X clients and Linux servers (Debian is so easily made so Mac friendly...). I have a USB key that I don't tend to use too often (online storage has removed much of that need), but I did decide at one point that easy interoperability between OS's was important, while at the same time needing OS-specific support from time-to-time, for specific applications and data.

My solution? I formatted my key for FAT32, and then created some disk images on the key formatted them to whatever OS-specific format was suitable (HFS+, ext3, etc.). By leaving sufficient room on the main FAT32 volume, I can readily store platform-neutral data, and inside the images I can store whatever OS-specific data (such as applications) that don't need to be accessible on every system I encounter.

This does require an extra mounting steps. In OS X, it entails plugging in the key, and then double-clicking on the DMG file to mount it. In Linux, I have to mount the ext3 image using the loop pseudo-device. Of course, this is only necessary if attempting to access data in one of the OS-specific formatted images: accessing shared data merely requires mounting the key itself (generally automatically handled by the OS).

It's hardly perfect, but it does mean you can have one key that can have both shared and OS-specific data on it for as many OS's as you'd like to have at your disposal.

If you don't want much hassle, just use explore2fs (http://www.chrysocome.net/explore2fs [chrysocome.net]). It's an userland application which does not install any drivers or the like on Windows, and as such will execute as any user. However, you'll still need to transport it to the machines you'll want to use, and thus you'll need a tiny space of FAT32 for doing the trick.

If you have rights to install drivers on the windows machines you use, you can try the EXT2 driver available on www.fs-driver.org [fs-driver.org]. It will mount your EXT2/EXT3 volume as a drive letter so you can transfer files between partitions.

fat32 works well enough for storing tarballs should I need to go Linux->Linux with permissions and all that. Most of the time though the UID/GID clashing isn't worth going so far as a tarball unless I need permissions preserved. I rarely transfer mixed permissions files, it's usually some form of document or media so again... fat32.

I'd use a loopback ext3 if I really needed to not use tar for some weird reason.

I have 3 Seagate FreeAgent 1 GB USB disks. They come with NTFS by default on them. Per disk:

1. I make a LUKS dm_crypt volume on it (for which support is well integrated into GNOME and hal in Fedora and Ubuntu.. just plug in and it pops up a dialog asking for the password).

2. I mkfs an ext3 filesystem on the encrypted volume.

I use this encrypted setup out of experience, having dropped an older 750GB USB disk from a height. It works from time to time and I have to physically destroy it because contents on it are not encrypted and otherwise anyone who finds this disk in the trash can mount and browse it.

First of all, FAT is patent encumbered and Microsoft's willing to go to court to protect it; so that's out. That includes the old UMSDOS file system Linux had at one time.

Someone needs to make a good file system that matches FAT, but is more extensible. A good choice is ext2 now... if we dropped a few things that wouldn't work nicely. Like device nodes, pipes, and Unix sockets. Like ownership, since it's assumed that the person mounting the system would own the files on it, along with groups. Simply access restrictions; they wouldn't apply.

This will simplify the structure a bit, which is a nice bonus and could let it be put on floppies. In other words, it's a light, anonymous, extended file system. LAEFS.

I had the exact same problem a while back. My solution was a little less straightforward than some, but is still simple enough. Basically, I leverage the freeware software Ext2 IFS [fs-driver.org], which installs software onto Windows that allows it to recognize the contents of Ext2/3 partitions.

Basically, I have my disk formatted with two partitions:

A 1GB FAT32 Partition

The rest as an Ext3 Partition

On the FAT32 partition, I place the latest version of Ext2 IFS. When I access the system on my main Linux box, I just mount / use the Ext3 partition.

When I visit friends or family and I plug it into their Windows box for the first time, Windows recognizes the FAT32 partition, so I can install the Ext2 IFS software that I put onto that partition. From then on (and every subsequent access), Windows automatically mounts it!

Windows doesn't reflect the Ext3 permissions, but if you have physical, portable access to an unencrypted hard drive, those mean nothing anyway. And, of course, make sure to ask friends and family before installing filesystem drivers:)

UDF doesn't have a 2 GB file size limit like FAT32 and seems to be well supported [wikipedia.org] by most operating systems. I don't really have any experience with it but I just formatted my USB stick with UDF just to see how it goes.mkudffs --media-type=hd --vid=MyDiskLabel/dev/disk/by-id/usb-LEXAR_JUMPDRIVE_ELITEIt works fine in Linux.

I experimented with UDF a couple of years ago. As always, Windows is the problem. No matter what I did, Windows did not see the thumbdrive as a drive letter. And Google didn't show up any useful pages either.

At present you run into an issue where you could mount an ext2 or ext3 drive as a certain user, write files to it, and be unable to do anything with those files if you have a different UID on a different system.

A kernel patch has been proposed to allow you to remap ext2/3 UIDs [lwn.net] when mounting a disk so that a standard UID can be mapped to whoever mounts the drive. This way, you'll be able to use ext2 or ext3 as your flash filesystem, preserve capitalization (another vfat weak point) and permissions (modulo the remapping) and still have decent interchange between different Linux boxes where you have different UIDs.

Unfortunately, there are a lot of minor variations on the format... Differing types of disklabels (partition tables), big/little-endian byte-swapping, et al. I find sticking to BSD-created UFS/FFS file systems works best.

Still, it's an incredibly solid filesystem, widely compatible, available, and just generally has everything you could want.

HFS+ Can be read by both Linux and Mac. Preserves permisisons and such, and in SnowLeopard, Apple gently provided bootcamp drivers so that XP/Vista/7 can read HFS+ too. No hacks requiered, no big risk involved. There, solved that for ya!

I always make sure that my user name is assigned the same UID number on both of my Linux computers, so that I avoid the permissions problem of my files supposedly belonging to a different user. In recent versions of Debian or Ubuntu, the first user created is assigned the UID number of 1000 (by default). So if Rick is the first user created on each computer there is not problem.However, I also have a third, even older computer, which uses some older version of Slackware. By default, it assigns a UID numbe