OSX: возможно ли создать символическую ссылку, указывающую на /dev/null, например, каталог черной дыры

OSX: возможно ли создать символическую ссылку, указывающую на /dev/null, например, каталог черной дыры

OSX: возможно ли создать символическую ссылку, указывающую на /dev/null, например, на каталог «черная дыра»?

Я работаю в службе поддержки, и нам нужно очистить каталог на всякий случай, если в него в какой-то момент попадут данные. У нас есть некоторые средства защиты, которые устанавливаются для снижения вероятности попадания данных в этот каталог, но из-за рабочего процесса и вещей, которые мы не можем контролировать, иногда данные оказываются в этом каталоге.

Я думаю, было бы идеально, если бы этот каталог был черной дырой. Например, символическая ссылка, указывающая на /dev/null.

Не уверен, что это возможно.

Заранее спасибо.

решение1

Это не поддерживается из коробки. Можно ссылаться на файлы в /dev/null, но не на каталоги.

например:

ln -s /dev/null ~/.bash_history

Возможно, вам стоит рассмотретьПРЕДОХРАНИТЕЛЬсделать это, но, возможно, вам повезет больше, если вы просто напишете сценарий, в зависимости от ваших потребностей

решение2

Альтернативой действиям с папками может быть сохранение plist-файла, например, такого ~/Library/LaunchAgents/test.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd>
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>test</string>
    <key>ProgramArguments</key>
    <array>
        <string>bash</string>
        <string>-c</string>
        <string>rm -rf ~/Documents/Black\ Hole/*</string>
    </array>
    <key>WatchPaths</key>
    <array>
        <string>~/Documents/Black Hole/</string>
    </array>
</dict>
</plist>

Его можно загрузить с помощью launchctl load ~/Library/LaunchAgents/test.plistили выйдя из системы и войдя снова.

решение3

Вы можете создать RAM-диск, доступный только для чтения:

mydev=$(hdid -nomount ram://1024)
newfs_hfs "$mydev"
mkdir /path/to/readonlydir
mount -t hfs -r "$mydev" /path/to/readonlydir

Обратите внимание, что это немного отличается от того, о чем вы просите: запись в каталог монтирования диска, доступного только для чтения, приведет к ошибке, а не просто к молчаливому исчезновению файла.

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