Как разблокировать файл, заблокированный процессом

Файл заблокирован процессом, Java в моем случае. Я только хочу, чтобы блокировка была выпущена.

lsof | grep /home/user/workspace1

lsof

Временное решение состояло в том, чтобы 'Закончить Процесс' от 'Системного монитора'.End Process Но завершение Java (виртуальная машина Java) завершило бы все другие программы с помощью Java. Таким образом, как я выпущу блокировку, сохраненную каким-либо процессом. Для той же цели Windows имеет приложение под названием 'Неблокировщик'.

4
задан 1 May 2014 в 11:45

2 ответа

Попробуйте lockf.

lockf - применяют, тестируют или удаляют POSIX, соединяют открытый файл

lockf (), функция позволяет разделам файла быть заблокированными с блокировками консультативного режима. Вызовы к lockf () от других процессов, которые пытаются заблокировать заблокированный раздел файла, или возвратят ошибочное значение или блок, пока раздел не станет разблокированным. Все блокировки для процесса удалены, когда процесс завершается. Захват записей с lockf () поддерживается для регулярных файлов. <глоток> IBM

0
ответ дан 17 November 2019 в 17:33

Я нисколько не уверен, что это будет работать над Вашим конкретным lockfiles, но lock-remove могло бы стоить попытки:

   lockfile-remove [--lock-name] filename

DESCRIPTION
   Lockfile-progs provides a set a programs that can be used to  lock  and
   unlock mailboxes and files safely (via liblockfile):

Так, попробуйте что-то как

lockfile-remove /home/user/workspace1/.metadata/.lock

, Другой, более жестокий подход, должен просто удалить lockfile.

0
ответ дан 17 November 2019 в 17:33

Другие вопросы по тегам:

Похожие вопросы: