NTFS Hidden Files in Nautilus?


Recommended Posts

Hi there, this should be a simple question.

I'm using Ubuntu 8.10 and dual-boot with Windows Vista. Well, in the NTFS file system, hidden files are denoted by a flag in the file system. This means that any file can easily be hidden, and all OS files are hidden by default. However, in ext3 (and maybe others), it's denoted in the filename by a ".".

Since I keep all of my data on an NTFS-formatted drive, I'd like for Nautilus to be able to support the NTFS hidden flag, as Windows does. Ideally, I'd like for it to behave like Linux's native hidden files (ctrl+h toggles whether hidden files are shown). Is there any way to do this?

I'm aware that I can use a .hidden file in each directory, but this is much more work than it's worth. Thanks in advance.

Link to comment
Share on other sites

However, in ext3 (and maybe others), it's denoted in the filename by a ".".

There's no such thing as implicit hidden files/directories in *nix. It's more of a (sort of bs) convention that may or not be respected.

What you are asking won't happen. Honestly, try to use Lechio's solution. :hmmm:

Link to comment
Share on other sites

Huh. Ok. It's just that... this seems so simple and fundamental. I was surprised it didn't do this by default. Isn't this part of the "support for NTFS" things that many Linux users boast about?

Is this just one of those "Linux users hating everything Microsoft for the sake of it" things, or is there more to it?

Link to comment
Share on other sites

Uhm... but it is supporting NTFS and HFS(+). You can read/write/execute the files.

Windows is simply not Linux, just the same way that Linux is not Windows. There is no "hiddenness" in Linux.

Link to comment
Share on other sites

Huh. Ok. It's just that... this seems so simple and fundamental. I was surprised it didn't do this by default. Isn't this part of the "support for NTFS" things that many Linux users boast about?

Is this just one of those "Linux users hating everything Microsoft for the sake of it" things, or is there more to it?

Windows does it in a way, Linux does it in another. Don't see any hating there.

And this is not related to NTFS support, it is related to the way that a file browser interprets what it reads from the filesystem. NTFS is supported there.

Let's see Microsoft Windows supporting other filesystems too... ;)

Link to comment
Share on other sites

I think you have to add ntf3g through synaptic. If it didn't already install it-- I think though also if you gparted it should also add support for the following as well.

What Hitchhiker427 wants is that implicit hidden (flagged) files in other file-systems should remain hidden when viewed from a *nix file manager.

This isn't a new idea/request.

Link to comment
Share on other sites

Huh. Ok. It's just that... this seems so simple and fundamental. I was surprised it didn't do this by default. Isn't this part of the "support for NTFS" things that many Linux users boast about?

Is this just one of those "Linux users hating everything Microsoft for the sake of it" things, or is there more to it?

It's a molehill. Stop trying to stir up an emotional mountain out of it.

Filesystems in Linux use "rwx" attributes (there is more to this, but let's keep it simple). There is no "hidden" attribute. "Hidden" files are just prefaced by a dot ".". This is the way that Unix and Linux work.

Expecting Linux to 'just work' with such a foreign attribute system like what Windows uses would be as silly as expecting Windows to read the "execute" attribute on a Linux drive and only flag those files executable.

Linux can read and write files in NTFS just fine. And this is at no thanks to Microsoft, who keeps their inner workings secret. There are also concerns about patents that Microsoft has on NTFS, which is why many distros (Red Hat is a big one on this) do not include NTFS support out of the box.

I hope that the explanations here (including mine) help clarify that the differences are more fundamental in how each OS handles filesystems on a deep core level, and that the changes you are asking for aren't really very trivial. Maybe there is a hack or add-on that can do this, but I don't know of one.

Link to comment
Share on other sites

There's only a reference to $istem files.

show_sys_files - Show the system files in directory listings. Otherwise the default behaviour is to hide the system files. Please note that even when this option is specified, "$MFT" may not be visible due to a glibc bug. Furthermore, irrespectively of show_sys_files, all files are accessible by name, for example you can always do "ls -l ?$UpCase?".
Link to comment
Share on other sites

I think this is one area where Windows had the right idea, instead of changing the file name, make the hidden/shown part of the file attributes.

It could be extended by storing it in the extended attributes that most FS's offer these days, ntfs3g could populate it the same way (hell, even copying a file starting with a . could make it be marked as hidden)

Link to comment
Share on other sites

I think this is one area where Windows had the right idea...

Except that any file downloaded from anywhere is executable, just because of how it is named. :pinch:

Not the best security implementation. But nice "hidden" attribute. :unsure:

Link to comment
Share on other sites

The problem is that Linux stay compatible with other *nix to a certain extent. In this case, we face an old convention, like the standard dir structure (/home, /usr, /tmp). Those convention are outdated and if tomorrow someone redesign them from scatch, they will not be like this, but they are, and this is not going to change anytime soon...

Link to comment
Share on other sites

Except that any file downloaded from anywhere is executable, just because of how it is named. :pinch:

Not the best security implementation. But nice "hidden" attribute. :unsure:

Oh yeah, Windows complete ignorance of mime-types and their assertion that the last few characters of the file name determine the contents is silly.

Of course, they're two different things :p

Link to comment
Share on other sites

Ok, I understand now. This really seemed like something basic, but I see here that it is not.

So, the problem is really now Nautilus utilizes the NTFS driver and interprets which flags are set? Does the NTFS driver interpret the hidden flag (I think I'm using ntfs3g)? If so, it would probably be best to file a feature request with Nautilus.

Link to comment
Share on other sites

I don't think that Linux reads the attributes at all.

So it isn't a Nautilus thing. It would be a whole filesystem thing for Linux and NTFS.

Otherwise, you would have to patch Nautilus (for example), and every time it read files, it would have to also check the filesystem that the file was on, and additionally run code to extract these other bits and hide files based on that.

Right now, no file browser does ANY of that. It just passes a read request that is processed by the kernel which return results. The file browser just displays the results; it doesn't do the file work. Any patch to Nautilus would have to directly access the filesystem attributes. And I guess that is going to be a no-no as far as developers would consider these explicit deep calls. (outside the scope of what access a file broswer should have)

So the change would have to be made in the kernel.

At least to do it "right".

Link to comment
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.