Subject: Re: bug#12400: rmdir runs "amok",

From: Linda Walsh <[email-masked]>
Date: Mon, 10 Sep 2012 00:29:19 -0700

Alan Curry wrote:
> Linda Walsh writes:
>> rm ** removes all the files under a dir, and rmdir ** removes all the empty 
>> directories
>> under a dir.  It was the natural progression of avoiding a crippled feature in rm...
>>
> 
> For someone who claims to have been unix for so long that you consider 4.3BSD
> a recent deviation from the norm, you are awfully clueless about how
> everything works. Or pretending to be so as a way of escalating the drama.
---

	Sorry, the version of rm i've used honored the '-f' flag...
Playing mommy to users -- that's what you'd expect  from a university version
of unix.

You call programs that play mommy the norm?
> 
> And the problem you won't quit bugging everyone about is hardly a problem
> anyway; how often does the "remove everything under this directory, but not
> crossing mount points, and not removing this directory itself" operation
> actually prove necessary?
----
	Things can be easily mounted and cross mounted under linux.  But
I didn't wanto to rm everything, I was using rmdir to remove empty directories.

I tried to use rmdir in a recusive form like the only supported recursive
version of rm -- one that uses wildcards.

You can't play mommie with 'rm' and expect people not to use such behaviors with
other commands.   If you are going to treat people like children to protect them
from themselves, then don't be surprised when they blame you for your
inadequacies.  You can't have it both ways -- the moral superiority of thinking
you are protecting people, yet the complete irresponsibility when the consequences
of teaching unthinking ways comes back to haunt you.

> 
> What you're doing is *weird* and there's no reason to *expect* it to be a
> less-than-10-character command. It's still a one-liner with find, as you've
> already been shown.

I regularly clean out directories.  It's rare that I will have mounted something
there.  But I've had the rm follow links it didn't understand on other OS's that 
were
not unix, but tried to be posix compatible -- and follow them into a recycle 
bin, where it
found pointers to a whole bunch of places on the file system.

> 
> Unix deliberately presents a single unified filesystem namespace in which
> mount points look like normal directories. Recursion that traverses all
> directories except mount points is *weird*.
----
	Is that why almost all unix command have options to prevent them
from doing just that... and not it is not weird.  Only under BSD is it weird, but
elsewhere, people mount things all over the place.

	People are being encouraged in some circles to use mounts over a softlink --

> And mounting something under /tmp that isn't logically part of /tmp (and
> subject to the same cleanup policy) is *very weird*.
---
	I don't have anything mounted under my /tmp, but I could easily see a
dir there being used as a scratch dir or a place to mount a scratch volume 
temporarily.

	If someone runs a program that does such a delete using BSD crippled utils
that cause bad behaviors, telling them they are weird  as a response is perfect for
someone who thinks the world revolves around them and anyone who does anything 
differently
is 'weird'....

	That's really special.