tobotras: (unix)
tobotras ([personal profile] tobotras) wrote2009-07-10 05:46 pm
Entry tags:

(no subject)

А я-то думал, что в «базовом» юниксе меня удивить нечем. Но что для «mv a/ b/» каталог «a» должен быть доступен на запись — меня сегодня удивило.

Ответ «почему» — в man rename(2) :)

[identity profile] ivlad.livejournal.com 2009-07-10 02:48 pm (UTC)(link)
И если разобраться - логично. Если нам надо сменить родителя, надо же изменить ".." в каталоге.

Но если про это не думать, то неочевидно. :)

[identity profile] shaman007.livejournal.com 2009-07-10 03:09 pm (UTC)(link)
mac:~ apple$ mkdir a
mac:~ apple$ chmod 000 a
mac:~ apple$ mv a/ b/
mv: rename a/ to b/a/: Permission denied
mac:~ apple$ uname -a
Darwin mac.local 10.0.0b2 Darwin Kernel Version 10.0.0b2: Tue Jun 23 18:38:45 PDT 2009; root:xnu-1456.1.8~1/RELEASE_I386 i386
mac:~ apple$

Логично.