Thanks for your reply Carlos. You are always positive around here. On Thu, 24 Sep 2015, Carlos E. R. wrote:
I guess in a typical local system the kernel is aware of every second mount and would use the same buffers and caches at least I would believe that would normally hold true. It would not make sense to not be aware of a second mount, in that case every --bind mount would start causing trouble as well, or wouldn't it?.
No, a bind mount is very different. It is a kind of simulation, a link, whereas a double mount is a real mount, with two completely separated structures.
Think of a hard disk having two SATA cables, for redundancy.
I have accidentally mounted the same filesystem twice, only temporarily, shortly, a few times. It is easy to remount e.g. ... wait. Well I think I did. It is also possible to mount some snapshot on top of /. Then you can type "umount /" and it will umount the second mount (the one of the snapshot ) :P. But I don't know what "two completely separated structures" means. I take it that would mean that you have two sets of buffers, like the other guy mentioned, which would be a liability. Nevertheless, FS UUID doesn't solve this, not in a good way.
So it seems we have a special case here where the kernel can't be aware.
And now XFS is using filesystem descriptions/identifiers (whatever those may be) to identify the filesystem (which would typically be stored on some device) but it can't distinguish identical or near-identical copies because the UUID obviously does not describe the entire thing like a checksum would.
The current version of XFS also stores checksums. And the UUID is not a string stored somewhere at the start of the partition, but rather is replicated all over the partition.
Not sure if that is relevant. I know e.g. from partitions that you can enlarge a partition and the UUID stays the same, but when you change the starting sector it becomes different. It is completely obvious (at least to me) that UUIDs are more trouble than they're worth, at least for a regular system. I heard they were essential for uniquely identifying objects in large scale deployment scenarios. Again, something that is apparently designed for a very rare (from a user's point of view) use case but which permeates and disrupts all use cases that differ from it (ie. normal ones). I have never benefitted from UUID. Those experts don't have it right. It has entroubled my knowing what is what. It's the same with IPv6's format. It does not benefit me. I cannot normally remember it. It is only made for computers, not humans, just like UUID. They've done slightly the same with Europe's banking system where everyone now has to remember a pan-European banking account number. We used to have something like XXXXXXX now it is something like NL81INGB000XXXXXXX. They make the same mistakes over and over. There is not even a practical reason not to be able to be allowed to use the old number: all those software can easily automatically convert it for you. But they are not allowed to because of Reasons. IPv6 is a disaster, IBAN is pretty much a disaster, and UUID is also pretty much disastrous. The only way to not see it as a disaster is to see it as an opportunity and a call to turn away from madness and start designing your own systems. So yes, that means "Linux" is no longer a system of the people. Look at what SystemD NetworkD is doing to the device names?.... Ridiculous. It is becoming less user friendly every day almost. Now we see here (apparently, I don't know it) (It is just gut feeling and deep perception) that XFS has a feature that is only relevant for certain rare use cases (from a non-enterprise point of view) but which ALL users suffer for. That is identical to the reason for UUID in the first place. I don't want to suffer for the perks of other people. UUID for partitions/volumes makes no sense whatsoever. A path name such as /dev/sda2 or /dev/mapper/vg--lv is more resilient to change. Even if you have raid arrays you will have /dev/mdx and if that fails (or is not resilient enough) you can still give labels to your filesystem if you must. All of which are better solutions (from my point of view) than relying on a UUID you cannot really remember or identify. It makes it nearly impossible, for instance, to check a Grub2 config file for errors. At least manually. It makes your fstab completely unintelligable. So that's for UUID to begin with. It does not serve the normal user.
No, don't ask me why. I read the reasoning, but I can't explain it from memory. I'm not that good.
That's fair, you are at least using your own mind ;-).
You should be aware that the people designing and creating these filesystems like XFS really know what they are doing, and it is rather more possible that you don't. Not me, anyway.
But this is the most... this is about the least intelligent thing you could ever have said. Trusting authority -- blindly trusting authority -- is the root cause of basically every problem we face in this world. Whether it is religious authority, moral authority, political authority, or corporate authority. It is the same as having presidents of national or European banks telling the population that they "have to spend more" because it will help the economy. Trusting authority like that is like taking out a gun and shooting yourself. You're almost dead in any case, already. It is people not thinking for themselves. When people stop thinking for themselves and begin to only trust the thinking of other people, you get the world we are in today. Even the reverent (vehement? :P) mr. Steve Jobs said something reasonably intelligent about the subject. He is reported to have said: "Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma – which is living with the results of other people’s thinking. Don’t let the noise of other’s opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary." And this, my friend Carlos, is exactly what Dogma is about. If some "experts" have determined that this is the Right Way to do things, that is dogma. It is uncontested and uncontestable truth. After all, they are the /experts/, right? :P.
Current filesystems are very complex things. Normal peasant knowledge is far from understanding it.
If any object system uses the "equals" method to test whether two object pointers point to the same object, that system is flawed. You don't have understand much to see that, and that is the power of simplicity. It is pretty clear this system we are talking about tries to do this: (In java): String a = new String("some string"); String b = new String("some string"); if (a.equals(b)) { System.out.println("a and b are the same object"); <-- WRONG } Any programmer will understand the wrongness of this. To test object identicality you have to write: if (a == b) { System.out.println("a and b are the same object"); <-- RIGHT } But XFS doesn't do this. It uses the former method. I don't care for their reasons. The code is just flawed from a very simple and easy to understand perspective. And I shouldn't be the one to suffer for it, and I had no big reasons to use XFS in the first place (just trying to test its performance, perhaps) so going back to ext3 was a lot easier than starting to read man pages hunting for reasons or error and then writing my script to accommodate this anomaly. I needed to get something done ASAP. I had no time to be dealing with the flaws of other people. Basically that's what Linux is about anyway. Dealing with the flaws of other people. Until it is no more.... There was another reason not to use XFS and that is that you cannot shrink its filesystem, but that is beside the point here really.. I just think the experts may be experts but that doesn't mean they have your interests in mind. They may very well have corporate-grade interests in mind. Many of them work for Red Hat etc. So the home user suffers, and the solution is or may not even be the best solution in the general sense of being acceptable to everyone. I never take anyone's word for it. Sometimes that makes me stubborn, but only slightly. In Dutch they have a word for it called "eigenwijs" that is almost always a pejorative, ie. used in a negative sense. You are rarely complimented for being eigenwijs. But if you want to live your own life and make use of your own time, you have to be 'eigenwijs', you have to be your own person. You have to do your own thinking. And you can stop blaming yourself for inadequacies that are really situated not in your self, but rather in the system you are using. Linux, being rather dysfunctional in many areas, has a habit and a culture of blaming the user. That is what happened here as well. It is always the user's fault. Anton Aylward just did it again, he's very good at it. Compliments :D :P. :). But what I have learned and found is that I don't have myself to blame for most circumstances. What I've found is that my self is usually right, and when it isn't, there are /friendly/ ways of revealing that to a person, usually. And trying to find character faults with someone is not that. Not at all. Anton is very good at telling me that there is something wrong about my person. That I wasn't born right, in that sense. That my being is flawed, in pretty serious ways too, if it's up to him. And that when I choose to make use of my time effectively, and efficiently, and choose to avoid a trap of /needing to use a certain software or system/ when I don't even have to such that I can get back to doing meaningful things again, it feels to him like a betrayal of Linux. There is no Linux now on my computer. What is the point to writing fucking scripts to cater to a filesystem I don't even need to use just so that my project of transforming my computer will take even longer? And why am I even writing this? Explaining my choices.... You really owe no one explanations of the choices you make. A wise person once said: It is not appropriate to interfere with choice, nor to question it. It is particularly inappropriate to condemn it. What is appropriate is to observe it, and then to do whatever might be done to assist the soul in seeking and making a higher choice. And reading the manual and then adjusting my scripts and wasting important time is not exactly "making a higher choice". But saying that I have in fact an issue with looking up manuals, is indeed condemning the choice. And most of what people do in Linux is condemning the choices made by others, particularly those who do not choose Linux or who do not choose a Linux solution at any point or interval.