И правда, а хардлинк даже с правами администратора создать не получилось.
используете-ли вы симлинки
Модератор: Модераторы разделов
- 
				Aectann  
- Бывший модератор
- Сообщения: 3491
- Статус: ...
- ОС: OS X, GNU_и_не_только/Linux
Re: используете-ли вы симлинки
И правда, а хардлинк даже с правами администратора создать не получилось.
My god... it's full of stars!...
			
			
			- 
				serzh-z  
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
- 
				Aectann  
- Бывший модератор
- Сообщения: 3491
- Статус: ...
- ОС: OS X, GNU_и_не_только/Linux
Re: используете-ли вы симлинки
Ultimate вроде (по крайней мере, в системе везде написано "Максимальная"). При выполнении mklink /h dest source пишет "Отказано в доступе".
My god... it's full of stars!...
			
			
			- 
				drBatty  
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: используете-ли вы симлинки
а симлинки можно?
для хардлинков вроде утилиту качать надо (как не странно - бесплатную).
сам не в курсе - венды нет. потому и поднял вопрос здесь - с виндузятниками спорить невозможно - даже продвинутые админы и те слабо понимают, что такое симлики и хардлинки, и какая между ними разница :(
у меня тоже такое пишет - если на каталог. кстати - а почему?
- 
				serzh-z  
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
- 
				t.t  
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: используете-ли вы симлинки
Говорят, в некоторых дистрибутивах они до сих пор допускаются.
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
			
			
			- 
				NickLion
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: используете-ли вы симлинки
Администратичвный пользователь, но без повышения прав:
Обычный пользователь:
Правда тут же нашёл баг. При изменении исходного файла, размер второго остаётся неизменным, пока не будет произведён доступ к второму файлу.
При этом, если менять по жёсткой ссылке, то размер исходного меняется
Для каталога нельзя создавать. Даже из-под админа с повышенными правами. Ну нельзя этого делать
			
			
									
						
										
			
			Код: Выделить всё
C:\Users\NickLion>copy con 1.txt
qwe
asd
zxc
^Z
        1 file(s) copied.
C:\Users\NickLion>type 1.txt
qwe
asd
zxc
C:\Users\NickLion>mklink /h 2.txt 1.txt
Hardlink created for 2.txt <<===>> 1.txtОбычный пользователь:
Код: Выделить всё
C:\Users\Test>copy con 1.txt
qwe
ad
Zzxc
^Z
Скопировано файлов:         1.
C:\Users\Test>type 1.txt
qwe
ad
Zzxc
C:\Users\Test>mklink /h 2.txt 1.txt
Создана жесткая связь 2.txt <<===>> 1.txtПравда тут же нашёл баг. При изменении исходного файла, размер второго остаётся неизменным, пока не будет произведён доступ к второму файлу.
При этом, если менять по жёсткой ссылке, то размер исходного меняется

Для каталога нельзя создавать. Даже из-под админа с повышенными правами. Ну нельзя этого делать

- 
				t.t  
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: используете-ли вы симлинки
Т.е. между оригинальным файлом и "жёсткой ссылкой" есть разница?.. Какая же это тогда жёсткая ссылка?
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
			
			
			- 
				drBatty  
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: используете-ли вы симлинки
у меня не допускаются. кстати, а что так? это опасно? а чем? почему mount --bind можно, а ln нельзя?
это наверное баг команды dir, или самой ос, или ещё чего-то. В самой ФС такого НЕ МОЖЕТ БЫТЬ.
это естественно. он вроде в NTFS можно "соединения", аналог нашего mount --bind (?)
- 
				NickLion
- Сообщения: 3408
- Статус: аватар-невидимка
- ОС: openSUSE Tumbleweed x86_64
Re: используете-ли вы симлинки
Ну, поскольку структуры NTFS не знаю, то сказать трудно. Возможно там тройной уровень:
1. Информация об имени и ссылка на расположение информации о данных.
2. Информация о расположении данных.
3. Данные.
При этом размер файла хранится на первом уровне. Для жёстких ссылок 1 уровень различен, а второй и третий один.
PS явно одна из ссылок считается "главной". Видимо, 2-й уровень содержит одну ссылку наверх. При создании ссылки, второй, ссылки на ссылку, а затем удалении исходной, одна из оставшихся начинает вести себя как исходная. Остальные вторичны.
- 
				drBatty  
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: используете-ли вы симлинки
тогда это не хардлинк, а его эмуляция. в EXT информация об имени хранится ТОЛЬКО в каталогах, в инодах хранятся всякие разные данные (иногда и содержимое), но никак не имя (имя туда и не влезет), потому хардлинки в EXT абсолютно эквивалентны, и различаются только полным именем.
- 
				watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: используете-ли вы симлинки
Это позволит создавать циклические структуры каталогов -> вместо простого GC с подсчетом ссылок придется городить полновесный Mark'n'Sweep.
Мои розовые очки
			
			
			- 
				drBatty  
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: используете-ли вы симлинки
watashiwa_darede... писал(а): ↑31.05.2010 18:00Это позволит создавать циклические структуры каталогов -> вместо простого GC с подсчетом ссылок придется городить полновесный Mark'n'Sweep.
почему-же нельзя запретить создание циклических ссылок? ну что-бы root мог-бы создать простую, и не мог - циклическую. Это не должно занять много времени...
- 
				watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: используете-ли вы симлинки
А как эффективно определить, что данная конкретная ссылка создает цикл?
Мои розовые очки
			
			
			- 
				t.t  
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: используете-ли вы симлинки
Проблема не только в циклах. Пробема может возникнуть в любой точке, где дерево каталогов становится не-деревом (а однонаправленным ацикличным графом общего рода). Проще говоря, в любом файле, к которому существует несколько равноправных путей.drBatty писал(а): ↑31.05.2010 18:58почему-же нельзя запретить создание циклических ссылок? ну что-бы root мог-бы создать простую, и не мог - циклическую. Это не должно занять много времени...watashiwa_darede... писал(а): ↑31.05.2010 18:00Это позволит создавать циклические структуры каталогов -> вместо простого GC с подсчетом ссылок придется городить полновесный Mark'n'Sweep.
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
			
			
			- 
				t.t  
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: используете-ли вы симлинки
Это как раз легко: просмотреть все хардлинки источника и проверить, нет ли среди них "предков" цели.watashiwa_daredeska писал(а): ↑31.05.2010 19:32А как эффективно определить, что данная конкретная ссылка создает цикл?
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
			
			
			- 
				watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: используете-ли вы симлинки
Пример:
Shell
/
|`- a
|    `- b -> /b
|`- b
|    `- c -> /c
 `- c
     `- a -> /aА какие с этим проблемы? Ну, есть несколько равноправных путей, и что? Их и сейчас может быть несколько, с хардлинками на файл из нескольких каталогов.
Мои розовые очки
			
			
			- 
				drBatty  
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: используете-ли вы симлинки
оно и так - не дерево (как уже заметил watashiwa_darede...), но в принципе - ясно. тут видимо дело в том, что "не деревянными" могут быть только листья, но никак не узлы. ладно, есть mount --bind, мне хватит (:
- 
				t.t  
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: используете-ли вы симлинки
Там ключевая фраза была "в момент создания". Если в момент создания проверять, такая картинка не может возникнуть в принципе.watashiwa_daredeska писал(а): ↑31.05.2010 20:14Пример:Какие источники? Какие предки?Shell
Да, под "деревом"-"не деревом" имелась ввиду именно структура каталогов, а не файлов.drBatty писал(а): ↑31.05.2010 20:19оно и так - не дерево (как уже заметил watashiwa_darede...), но в принципе - ясно. тут видимо дело в том, что "не деревянными" могут быть только листья, но никак не узлы. ладно, есть mount --bind, мне хватит (:
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
			
			
			- 
				watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: используете-ли вы симлинки
Это почему это?
Код: Выделить всё
mkdir /a /b /c
cd /a && ln /b b
cd /b && ln /c c
cd /c && ln /a aМои розовые очки
			
			
			- 
				Aectann  
- Бывший модератор
- Сообщения: 3491
- Статус: ...
- ОС: OS X, GNU_и_не_только/Linux
Re: используете-ли вы симлинки
Тьфу, я на каталог и пытался создать. На обычные файлы все создается.
для хардлинков вроде утилиту качать надо (как не странно - бесплатную).
Это для старых версий, в Win7 есть идущая в поставке mklink.
а симлинки можно?
"Административному пользователю" - можно.
My god... it's full of stars!...
			
			
			- 
				drBatty  
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: используете-ли вы симлинки
кстати про хардлинки. оказывается атрибут EXT AppendOnly запрещает делать с каталогом ВСЁ, кроме одного - создавать там хардлинки. А потом файл, который оказался в таком каталоге, окажется замурован как муха в янтаре - ничего с ним не сделать. К примеру можно перенести туда любой файл, ну или скажем понаделать хардлинков от нужных файлов - тогда им никакой rm -rf / не страшен (:
ИМХО очень полезная штука.
Кстати, рут тоже ничего не может тут поделать (ну конечно кроме снятия этого атрибута).
а почему?
			
			
									
						
										
			
			ИМХО очень полезная штука.
Кстати, рут тоже ничего не может тут поделать (ну конечно кроме снятия этого атрибута).
а почему?
- 
				Aectann  
- Бывший модератор
- Сообщения: 3491
- Статус: ...
- ОС: OS X, GNU_и_не_только/Linux
Re: используете-ли вы симлинки
Почему административному можно, а другим нельзя? Потому что в MS так решили.
My god... it's full of stars!...
			
			
			- 
				drBatty  
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
- 
				Janik  
- Сообщения: 863
- Статус: Оператор вычислительных машин
- ОС: Debian
Re: используете-ли вы симлинки
Пользуюсь, а как же. Только не знаю, как заставить Proftpd следовать по симлинкам.
			
			
									
						
							Кто ищет, тот всегда найдет!
Опыт - это когда все получается с первого раза.
			
			
			Опыт - это когда все получается с первого раза.
- 
				serzh-z  
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
- 
				ZyX  
- Сообщения: 355
- ОС: Gentoo
Re: используете-ли вы симлинки
drBatty писал(а): ↑01.06.2010 03:38кстати про хардлинки. оказывается атрибут EXT AppendOnly запрещает делать с каталогом ВСЁ, кроме одного - создавать там хардлинки. А потом файл, который оказался в таком каталоге, окажется замурован как муха в янтаре - ничего с ним не сделать. К примеру можно перенести туда любой файл, ну или скажем понаделать хардлинков от нужных файлов - тогда им никакой rm -rf / не страшен (:
ИМХО очень полезная штука.
Кстати, рут тоже ничего не может тут поделать (ну конечно кроме снятия этого атрибута).
А его можно как-нибудь на ReiserFS поставить? chattr ругается:
Код: Выделить всё
(zyx:~/tmp) % LANG=C su -c 'chattr +a appendonly'
Password:
chattr: Inappropriate ioctl for device while reading flags on appendonly// appendonly здесь всего лишь имя каталога
- 
				drBatty  
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: используете-ли вы симлинки
прекрасно умеют! только внутри своего chroot'а.
и никто не мешает сделать mount --bind, или прописать в /etc/fstab.
в мане написано:
chattr - change file attributes on a Linux second extended file system
т.е. это фича EXT2(3,4).
потому наверное никак :(
PS: атрибут +a может установить только рут. как и +i.
- 
				serzh-z  
- Бывший модератор
- Сообщения: 8259
- Статус: Маньяк
- ОС: Arch, Fedora, Ubuntu
- 
				drBatty  
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: используете-ли вы симлинки
а ссылки наружу не имеют смысла. это как в Москве искать Питерскую улицу Ленина - даже если и найдётся, то совсем не та.
Janik
верхний уровень для корня - корень, потому из chroot'а выбраться невозможно, хотя многие и пытаются, ссылками вида
/../../../../etc/passwd