LINUX.ORG.RU
Форум — Talks  

о ФС


0

0
Вопрос :
Кто-нибудь может объяснить почему в win нельзя удалить файл когда
он открыт программой? Это зделанно специально или это особенности
ФС или это глюки/костыли или...

Дабы не сочли за офф - почему этого явления нет в Linux-e
anonymous
Возможно потому, это из-за буферной записи в файл - изменения сохраняються не напрямую в файл, а в какой-то буфер, который при закрытиии потока ввода/вывода выбрасывается в файл. Видимо, винда хранит список обращений к файлу и если он открыт каким-либо приложением - срабатывает "защита от дурака".
shuthdar ★★★
()
т.е. в linux-e запись в файлы происходит както иначе?
я думал sync сбрасывает буфер на hd.
поправь, если я не прав.


anonymous
()
Ответ на: комментарий от shuthdar
Выдержка из :
            man sync

SYNC(1)                          User Commands                         SYNC(1)

NAME
       sync - flush filesystem buffers

SYNOPSIS
       sync [OPTION]

DESCRIPTION
       Force changed blocks to disk, update the super block
..........
..........
..........
anonymous
()
Ответ на: комментарий от Ekonomist
>А зачем оно тебе надо, удалять открытый файл?

Как зачем? Чтобы не лазить в Task Manager и не убивать все процессы подряд, пока до нужного не доберёшься.

mikhail ☆
()
Ответ на: комментарий от Ekonomist
Ну... апгрейд там на лету каких-то библиотек, бинарей, например... Мало ли что.
IMNSHO
()
Вообще-то если ты удалишь в линухе открытый файл, то реально он нифига не удалится, открывший его процесс продолжит с ним работу. Удаление произойдёт только после того, как все работающие с ним процессы закроют его или перемрут нафиг (что тоже приводит к закрытию).

Странно, что никто тут этого не знает.

Teak ★★★★★
()
Ответ на: комментарий от Teak
>Вообще-то если ты удалишь в линухе открытый файл, то реально он нифига не удалится, открывший его процесс продолжит с ним работу. Удаление произойдёт только после того, как все работающие с ним процессы закроют его или перемрут нафиг (что тоже приводит к закрытию).

>Странно, что никто тут этого не знает.

Это все знают. Освободить место можно, набрав ">file;rm file". Речь о том, что нельзя удалить каталог сразу, а надо убить наугад несколько процессов и повторить попытку.

Нельзя смотреть фильм, пока он качается (например, из P2P).

mikhail ☆
()
Ответ на: комментарий от Teak
Но для других процессов он будет удаленным.

В винде это часто бывает надо для того, чтобы снести вирус не особенно заморачиваясь.

Shaman007 ★★★★★
()
Ответ на: комментарий от Shaman007
Не, я к тому что удаляя открытый файл ты его на самом деле ни там ни там не удалишь. Только в винде тебе это дело явно запретят, а в юнихах отложат удаление до лучших времён.

И вообще проблема не в этом, а в том что в винде fuser'а нет :)

Teak ★★★★★
()
Ответ на: комментарий от mikhail
2mikhail (*) (07.07.2005 17:48:26)
>Это все знают. Освободить место можно, набрав ">file;rm file". Речь о том, что нельзя удалить каталог сразу, а надо убить наугад несколько процессов и повторить попытку.
Наугад? А, ну да, этож таскманагер, толи дело lsof /dirname/filename :-)
anonymous
()
Ответ на: комментарий от mikhail
>> Речь о том, что нельзя удалить каталог сразу, а надо убить наугад несколько процессов и повторить попытку.

Открой для себя волшебный мир виндовой консоли! openfiles /?

Иногда помогает удаление в корзину, а потом её очистка.

Energizer ★
()
Ответ на: комментарий от mikhail
> Чтобы не лазить в Task Manager и не убивать все процессы подряд, пока до нужного не доберёшься.

Это в виндах не всегда помогает.

anonymous_incognito ★★★★★
()
Ответ на: комментарий от Energizer
Браво, господа!
А кто скажет иначе?
Так ведь винда всегда с диском плохо работала.
А линукс всегда хорошо.
Разве что в последних 2.6.х были проблемки с интеловскими чипсетами..
Если правда это уже не пофиксили
Йопт, да пофиксили наверное уже:)
Когда в винде тормоза с диском постоянные.
И пусть не твердят про многопоточность
Нтфс! пусть и так, зато она тормозная.

Зато ехт3 и рейзер её уделают раз в два присеста
А тем кто не согласен - малчать!
Думайте что хотите, но то, как
Реализована работа с файлами в линуксе мне
Очень нравится.
Так что вот.
!:):)
anonymous
()
Ответ на: комментарий от Energizer
>Открой для себя волшебный мир виндовой консоли!
В бобруйск животное !
anonymous
()
Ответ на: комментарий от K48
Вообще, "творчество" подобного рода один из старейших видов баянного жанра. С ходу не нашел гуглом, но когда-то читал очень трогательное любовное стихотворение посвященое кем-то любимой девушке, так вот в этом стихотворении первые буквы строчек образовывали фразу "Пошла на %Yй" :).
Energizer ★
()
Ответ на: комментарий от Energizer
>openfiles /?

"openfiles" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

(c) Windows 2000 Server (build 2195, ServicePack 3)
Dominus ★
()
Вранье, можно удалить. Открой LA файл, проиграй, еще раз открой диалог открытия файла в LA, но вместо открытия удали файл. Вернись в LA, удаленный файл по прежнему можно проиграть :)
anonymous
()
Ответ на: комментарий от anonymous
А как? Как открыть мир виндовой консоли для себя? Когда в справке по командам командной строки нет ничего толкового?
Ekonomist ★
()
Ответ на: комментарий от anonymous
>очень трогательное любовное стихотворение посвященое кем-то любимой девушке, так вот в этом стихотворении первые буквы строчек образовывали фразу "Пошла на %Yй" :).
>Йод, Йошкар-Ола (alias Бобруйск?) ...
то есть последняя строчка:
Йод сердца моего, летим в Йошкар-Олу (в Бобруйск) :-)
anonymous
()
Ответ на: комментарий от Ekonomist
>>А как? Как открыть мир виндовой консоли для себя? Когда в справке по командам командной строки нет ничего толкового?

А вы ходили, читали виндовую справку по консольным командам?

Energizer ★
()
Ответ на: комментарий от Energizer
лучше через remote desktop

встроенные средства администрирования рулят

JB ★★★★★
()
Ответ на: комментарий от Energizer
Пытался, но не смог ее найти. В интернете и то побольше можно найти. Внутри каталога с виндовсом тоже можно найти полезные вещи, но какое-то все странное. В ДОСе лучше было.
Ekonomist ★
()
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.