Заблокировать папку при запуске cron

Я настраиваю свой первый cron на Ubuntu Desktop. Мне было интересно узнать, есть ли способ заблокировать папку до запуска cron и как ее настроить? Я следую этой статье. Я просто пытаюсь удостовериться, что не повреждаю файлы при перемещении их из и в папку cron, потому что он находится в общей сети.

  • Команда KDE запускается при использовании нескольких мониторов
  • Включает ли Fedora все форматы фильмов из коробки?
  • Как автоматически запустить TightVNC-сервер как root при запуске Ubuntu?
  • Ограничение ширины линии выходной линии Netstat
  • Как сделать загрузочный вывод подробным?
  • После обновления Ubuntu до 16.04 из-за проблем с драйвером NetBeans и Eclipse перестали работать
  • PDF-просмотрщик текстовых документов, сохраненных как изображения - плохой рендеринг
  • Как создать строку сообщества SNMP для MRTG?
  • 3 Solutions collect form web for “Заблокировать папку при запуске cron”

    Простой скрипт с блокировкой и задержкой перед доступом к файлам:

    #!/bin/sh if mkdir /tmp/myscript-running; then cd /mnt/share/whereever find . -type f -mmin +1 -print0 | xargs -i -n 1 -0 myscript.sh "{}" rmdir /tmp/myscript-running else : # previous instance still running, do nothing fi 

    find GNU или эквивалент, необходимый для опции -mmin . Вы можете запускать это так часто, как требуется через cron. Замените myscript.sh вашим скриптом обработки.

    Основные возможности:

    1. используйте mkdir для создания каталога блокировки для предотвращения дублирования экземпляров
    2. используйте find -mmin +1 который ограничивает вывод файлов, измененных более чем 1 минуту назад, чтобы попытаться обеспечить полное копирование новых файлов
    3. используйте xargs для обработки файлов по одному, "{}" заменяется именем файла
    4. использовать \0 завершенные имена файлов с помощью find | xargs find | xargs чтобы неприятные имена файлов не вызывали проблем

    Вы должны иметь возможность изменять параметры find в соответствии с тем, что вам нужно. Вы также можете использовать приведенную выше логику для перемещения завершенных файлов из « uploading/ » в каталог « ready/ », что может упростить ситуацию.

    Ubuntu также имеет shlock и shlock который может быть полезен, см. shlock страницу последнего для большего количества идей.

    Это не идеально, но эффективно. У вас есть отдельный каталог «feeder», в который вы копируете новые файлы, при копировании их в сеть. Затем ваш скрипт cron может выполнить / ls / var / feeder, затем каждый файл в этом каталоге ищет любые открытые дескрипторы файлов. Файлы, которые не используются, затем перемещаются в основной общий каталог, файлы, которые открыты (предположительно, вы копируете их или некоторые такие), остаются в фидере. Убедитесь, что основной / общий каталог не доступен для записи, кроме вашего сценария, и вы должны быть хорошими.

    пошаговое руководство по блокировке папок в linux http://linux-all-over.blogspot.in/2014/10/how-to-lock-filefolder-in-linux-kali.html

    Linux и Unix - лучшая ОС в мире.