Удаление содержимого каталогов при удалении символических ссылок

Здесь можно сообщить о найденных багах в Far.
AntonK
Posts: 10
Joined: Sat 30 Jan, 2016 07:23
Has thanked: 4 times

Удаление содержимого каталогов при удалении символических ссылок

Post by AntonK » Thu 12 Apr, 2018 15:13

В текущей стабильной версии (3.0 build 5151 x64, Windows 7 64-bit SP1) при удалении нескольких символических ссылок (junctions) происходит удаление содержимого каталогов, на которые ссылки указывают, а должны удаляться только ссылки.
При удалении одной ссылки всё обрабатывается корректно - программа понимает, что удаляется ссылка. Однако, если выделено несколько ссылок, то в процессе удаления (по SHIFT+DEL) начинают появляться предупреждения об удалении содержимого целевых каталогов...
См. тж. похожую проблему в ночной сборке 5114 (вроде бы, исправлена была, но, видимо, частично).
В свежей ночной сборке не проверял пока, постараюсь сделать это позже...

User avatar
HaRT
Moderator
Posts: 9088
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 90 times
Been thanked: 158 times

Удаление содержимого каталогов при удалении символических ссылок

Post by HaRT » Thu 12 Apr, 2018 15:19

Влияет ли на это поведение значение опции Scan symbolic links в System settings?
Фар есть инструмент, а не нянька. © 2009 DrKnS

AntonK
Posts: 10
Joined: Sat 30 Jan, 2016 07:23
Has thanked: 4 times

Удаление содержимого каталогов при удалении символических ссылок

Post by AntonK » Thu 12 Apr, 2018 15:27

HaRT wrote:
Thu 12 Apr, 2018 15:19
Влияет ли на это поведение значение опции Scan symbolic links в System settings?
Если опция включена (видимо, по умолчанию так), то задаются вопросы (мол, каталог такой-то будет удалён), а если опция отключена, то эти вопросы не задаются и всё (включая, содержимое целевых каталогов) тихонько удаляется...

AntonK
Posts: 10
Joined: Sat 30 Jan, 2016 07:23
Has thanked: 4 times

Удаление содержимого каталогов при удалении символических ссылок

Post by AntonK » Thu 12 Apr, 2018 15:42

Похоже, проблема исправлена: в ночной сборке 5188 x86 (с настройками по умолчанию, в той же ОС - установка по соседству) проблема не воспроизводится - удаляются только символические ссылки без удаления содержимого целевых каталогов (никаких лишних вопросов не задаётся).

2useven10
Posts: 3966
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 168 times

Удаление содержимого каталогов при удалении символических ссылок

Post by 2useven10 » Thu 12 Apr, 2018 16:50

AntonK wrote:
Thu 12 Apr, 2018 15:42
Похоже, проблема исправлена: в ночной сборке 5188
drkns 29.03.2018 13:05:45 +0300 - build 5175

1. С форума: падение при File panel modes -> Ins Enter.

2. Некорректно работало удаление нескольких выделенных симлинков.

3. Рефакторинг.

User avatar
xyz
Posts: 154
Joined: Sun 20 Mar, 2005 13:26
Contact:

Удаление символических ссылок

Post by xyz » Fri 07 Jun, 2019 10:50

Наткнулся на неприятное поведение FARа.
Если удаляем один симлинк, то всё хорошо, он разрывается. А если выделаем и удаляем несколько, или симлинки находятся в подкаталогах, то происходит удаление содержимого внутри симлинка, а затем его удаление, вместо разрывания связей.
[ ] Сканировать символические ссылки отключено
Far Manager, version 3.0 (build 5151) x64

Почему это плохо? Пример: Копирую папку с профилями c:\users. Удаляю только что скопированное. При этом удалилось половина содержимого профиля.
Last edited by xyz on Fri 07 Jun, 2019 11:05, edited 1 time in total.

User avatar
xyz
Posts: 154
Joined: Sun 20 Mar, 2005 13:26
Contact:

Удаление символических ссылок

Post by xyz » Fri 07 Jun, 2019 11:08

Похоже наткнулся на старый баг viewtopic.php?f=9&t=11175
Last edited by xyz on Fri 07 Jun, 2019 11:14, edited 1 time in total.

User avatar
John Doe
Бюрократ
Posts: 12457
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 33 times
Been thanked: 188 times

Удаление содержимого каталогов при удалении символических ссылок

Post by John Doe » Fri 07 Jun, 2019 11:49

Который давно исправлен.

Backslash
Posts: 5
Joined: Sat 27 Jul, 2019 18:32

Удаление содержимого каталогов при удалении символических ссылок

Post by Backslash » Sat 27 Jul, 2019 19:22

Я нашёл проблему, вроде бы связанную с обсуждаемой выше, так что добавляю сюда.

Поведение наблюдаемо, например, в 3.0.5433 x64 под Windows 7 / SP1 / x64.

Проблема: перенос символических ссылок с одного диска на другой приводит к "удалению содержимого каталогов, на которые ссылки указывают" (совершенно, как в первом сообщении выше).

Подробнее:
A) выбираем одну или несколько (в данном сценарии это, похоже, не важно) symlink, скажем C:\LinkieA (ссылка на какую-то директорию на диске, скажем, M: с разным хламом внутри)
B) совершаем F6 / Move на какой-нибудь другой диск, скажем, K:
Результаты:
1) получаем в K:\LinkieA физическую копию директории, на которую указывала ссылка (пока всё ожидаемо и в порядке)
2) ссылка , равно как и содержимое физического каталога, на коий она указывала, удаляется. Что очень напоминает проблему, исправленную в build 5175.

И между прочим, хотя это и не обязательно, на мой взгляд было бы полезно и логично, если бы команды Copy/Move особливо при выключенной опции "Copy contents of symbolic links" создавали в директории назначения "копию" ссылки с теми же параметрами, что у копируемой/переносимой. Но это уже совсем другая история.

User avatar
DrKnS
Posts: 5397
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 6 times
Been thanked: 227 times

Удаление содержимого каталогов при удалении символических ссылок

Post by DrKnS » Sat 27 Jul, 2019 21:41

Backslash wrote:
Sat 27 Jul, 2019 19:22
перенос символических ссылок с одного диска на другой приводит к "удалению содержимого каталогов, на которые ссылки указывают"
В каком состоянии опция "Copy contents of symbolic links"?
Backslash wrote:
Sat 27 Jul, 2019 19:22
с теми же параметрами, что у копируемой
Что имеется в виду?

Backslash
Posts: 5
Joined: Sat 27 Jul, 2019 18:32

Удаление содержимого каталогов при удалении символических ссылок

Post by Backslash » Sun 28 Jul, 2019 11:17

DrKnS wrote:
Sat 27 Jul, 2019 21:41
В каком состоянии опция "Copy contents of symbolic links"?
Обычно, по умолчанию, т.е. опция выключена. Но я проверял и с включённой: тот же плачевный результат.
DrKnS wrote:
Sat 27 Jul, 2019 21:41
Что имеется в виду?
Если мы копируем или перемещаем на другой диск symlink, указывающий на физический объект L:\SomePhysFolder, создать в каталоге назначения symlink, указывающий на этот же физический объект. Идея была, вроде бы, отвергнута в теме Hardlinks/symlinks/junctions — хардлинки/симлинки/связи, но на мой взгляд не слишком убедительно. Кстати, есть даже по крайней мере одна программа с описанным подходом.

User avatar
DrKnS
Posts: 5397
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 6 times
Been thanked: 227 times

Удаление содержимого каталогов при удалении символических ссылок

Post by DrKnS » Sun 28 Jul, 2019 11:51

Backslash wrote:
Sun 28 Jul, 2019 11:17
Если мы копируем или перемещаем на другой диск symlink, указывающий на физический объект L:\SomePhysFolder, создать в каталоге назначения symlink, указывающий на этот же физический объект.
Именно это и происходит при выключенной опции и при условии того, что приёмник поддерживает ссылки, и так было всегда (ну или последние лет 10 точно).

Backslash
Posts: 5
Joined: Sat 27 Jul, 2019 18:32

Удаление содержимого каталогов при удалении символических ссылок

Post by Backslash » Sun 28 Jul, 2019 12:17

DrKnS wrote:
Sun 28 Jul, 2019 11:51
Именно это и происходит при выключенной опции и при условии того, что приёмник поддерживает ссылки
Что, даже, если с одного сетевого диска NTFS на другой (тоже NTFS)? Я только что проверил с сетевого L: на C: и symlink-овая директория превратилась в физический каталог (при выключенной опции).

User avatar
DrKnS
Posts: 5397
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 6 times
Been thanked: 227 times

Удаление содержимого каталогов при удалении символических ссылок

Post by DrKnS » Sun 28 Jul, 2019 15:02

Backslash wrote:
Sun 28 Jul, 2019 12:17
Что, даже, если с одного сетевого диска NTFS на другой (тоже NTFS)?
Нет и так и задумано: hlf:CopyRule
Если сразу писать, что речь о сети - можно сэкономить время.
ссылка , равно как и содержимое физического каталога, на коий она указывала, удаляется
А это баг, да. Очень старый, еще аж с 1.7. Исправлено в 5435.

Backslash
Posts: 5
Joined: Sat 27 Jul, 2019 18:32

Удаление содержимого каталогов при удалении символических ссылок

Post by Backslash » Mon 29 Jul, 2019 12:17

Виноват-с. Да, речь всю дорогу шла о переносе с сетевого диска, скажем, M: на сетевой же, допустим, K:. И при такой операции как раз и происходит удаление содержимого физического каталога, как было описано выше. В 5436 тоже.

User avatar
DrKnS
Posts: 5397
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 6 times
Been thanked: 227 times

Удаление содержимого каталогов при удалении символических ссылок

Post by DrKnS » Mon 29 Jul, 2019 22:51

Backslash wrote:
Mon 29 Jul, 2019 12:17
В 5436 тоже
Действительно. Как-то там всё совсем нехорошо. 5437.

Post Reply

Return to “Глюки и баги”