Есть ли лучший способ разблокировать файл, чем перемещение и копирование?

Есть ли лучший способ разблокировать файл, чем перемещение и копирование?

Моя организация использует Debian Linux с Samba для офисных файловых серверов. Пользователи используют Outlook для своей электронной почты, который довольно часто зависает и оставляет файл outlook.pst заблокированным.

В настоящее время наша процедура снятия блокировки (что позволяет пользователю снова использовать Outlook) выглядит следующим образом:

  1. Вручную откройте терминальную сессию
  2. Перейдите в папку пользователя, в которой находится файл outlook.pst.
  3. Удалите файл ~outlook.pst.tmp (или файл с похожим именем)
  4. Переименуйте файл pst (например, mv outlook.pst outlook.pstoff)
  5. Скопируйте файл обратно в outlook.pst (т.е. cp outlook.pstoff outlook.pst)
  6. Удалите старый файл (например, rm outlook.pstoff)
  7. chown outlook.pst пользователю

Это можно было бы написать скриптом попроще, но чтобы сделать это правильно, нужно было бы проверить доступное дисковое пространство перед копированием. Есть ли более простой способ снять блокировку с файла, не копируя его?

решение1

ЭтотСВЯЗЬв архиве lists.samba есть пользователь с такой же проблемой блокировки файлов.

По сути, найдите PID процесса и убейте его, это должно снять блокировку (иногда). Я использовал это в прошлом, и это работало для меня каждый раз, когда у меня был заблокированный файл. Но я не использую Outlook. В следующем ответе в теме предлагается [global]настройка параметра для samba.

Вы можете попробовать установить reset on zero vc = yesв разделе [global].

EDIT: Это довольно полезная статья о блокировке Samba.Глава 17. Блокировка файлов и записей

Связанный контент