LINUX.ORG.RU

настройка «черной дыры» для папки

 ,


0

1

linux mint 22.2 - хост

Мне нужно создать каталог /dev/null (каталог-черная дыра) для всего /var/log/

Почему: ОС хоста не используется напрямую. У меня на ней установлен только QEMU (для запуска whonix).

Из-за специфических потребностей моей среды я хочу уменьшить объем всей (даже небольшой) информации, хранящейся в ОС хоста.

На данный момент я смонтировал его как tmpfs (я прочитал руководство здесь), но все еще чувствую себя некомфортно.

Я уже остановил journald и журнал на уровне системы.

Но некоторые приложения создают журналы с разными именами каждый раз, поэтому ln -s в dev/null не поможет :(

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

И, пожалуйста, ради всего святого, не советуйте скрипты, которые автоматически удаляют файлы с диска. Это не поможет по нескольким причинам:

  • Приложение создаст новый файл, что увеличит износ моего SSD.
  • Его все равно можно восстановить с помощью продвинутых методов.

Основная идея — не записывать НИКУДА (ни на диск, ни в RAM, НИКУДА). FDE тоже не поможет, так как может вызвать подозрения.



Последнее исправление: ktulhu33 (всего исправлений: 1)

Если файлы имеют постоянные имена, создай эти файлы, как символические ссылки на /dev/null. Если файлы создаются динамически, такой технологии в линуксе нет.

anonymous
()

И, пожалуйста, ради всего святого, не советуйте скрипты, которые автоматически удаляют файлы с диска. Это не поможет по нескольким причинам:
Приложение создаст новый файл, что увеличит износ моего SSD.
Его все равно можно восстановить с помощью продвинутых методов.

Отмечу, что tmpfs+удаление никак на износ ssd не влияет, а восстановить этот лог можно будет только до тех пор, пока прога его не закроет (из-за выключения или чтобы создать новый).

Но вообще ты какую-то ерунду придумал.

firkax ★★★★★
()
Ответ на: комментарий от firkax

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

Да, верно, пассаж про износ SSD меня свернул не в ту степь :)

Налицо проблема XY. Вместо того, чтобы бороться со следствием (писать, но в tmpfs), лучше решить причину (посмотреть, какой именно софт пишет и отключить писание логов в нём).

Dimez ★★★★★
()
Ответ на: комментарий от ya-betmen

Чего все докопались до ТС с этим ССД?

Главная проблема, что все, что записано куда бы то нибыло (ХДД, ССД, флешки, карточки итд), при желании можно восстановить. А на некоторых дисках есть даже утилиты от производителя по шинду для этого.

anonymous
()

есть два варианта.

Плохой и очень плохой.

  1. Плохой: tmpfs /var/log tmpfs defaults,noatime,mode=0755,size=0 0 0. Приложение будут думать что кончилась память
  2. Очень плохой: sudo rm -rf /var/log/* && sudo chattr +i /var/log

А вообще не морочь себе голову и поставь мб гдето 50 метров на оперативу. Я чтото сильно сомневаюсь что ктото у тебя будет с жидким азотом пытаться с нее чтото восстановить.

По уму так: tmpfs /var/log tmpfs defaults,noatime,mode=0755,size=50M 0 0

anonymous
()
Ответ на: комментарий от ya-betmen

Вы ТС читали? Написано же whonix у него в виртуалке. Что может после whonix кудато попасть?

Плюс «ресурсы» вы это сильно преувеличили. Для большинства ССД есть гуйная утилита восстановления данных (пробуйте писать своему производителю ссд, в саппорте дают).

anonymous
()
Ответ на: комментарий от anonymous

Написано же whonix у него в виртуалке.

В смысле ТС печает в одноразовых перчатках и считает что у него всё секурно. ТС конечно молодец, но реальность она реальность.

ya-betmen ★★★★★
()
Ответ на: комментарий от anonymous

Для большинства ССД есть гуйная утилита восстановления данных (пробуйте писать своему производителю ссд, в саппорте дают).

Только толку от неё ноль целых хрен десятых. Если успеет TRIM запуститься (а в винде, раз уж ты заговорил про гуйную утилиту восстановления данных от саппорта SSD, почти на всех SSD нормально работает Queued TRIM, т.е. только ты диск «отпустил», пошла жара), никогда никаких данных никто не восстановит.

Dimez ★★★★★
()
Последнее исправление: Dimez (всего исправлений: 1)
Ответ на: комментарий от futurama

Выдумают идиотскую проблему, а вслед за ней и идиотское решение.

Хуже когда выдумают идиотскую шутку про несуществующие проблему и решение приписываемые другим.

anonymous
()

Странно что никто не предложил ридонли хост ос. И если на постоянку, а не временно, то кукой нибудь отключаемый для обновленией анмуттабл. Но если не борться с ветряными мельницами системДненужно, то может сразу на Дивуан?..

anonymous
()
  1. Напиши модуль примитивной ФС, позволяющей создавать файлы, но выкидывающей записываемые данные. Это довольно просто.

  2. Используй эту ФС в качестве верхнего слоя overlayfs на всём корне или где тебе надо

annulen ★★★★★
()
Ответ на: комментарий от anonymous

главная проблема, что все, что записано куда бы то нибыло (ХДД, ССД, флешки, карточки итд), при желании можно восстановить

только вот когда нужно ты хрен что восстановишь, а так да проблема в другом

anonymous
()

ssd нужен для быстрой записи и работы, если запись и работа не нужна то не покупай ssd, правильно?

Не нужны файлы, так не создавай файлы, используй многочисленые live образы, что не пишут на носители, не?

s-warus ★★★★
()
Ответ на: комментарий от futurama

Не весь софт позволяет их отменить. Попробуйте их отключить у Cryptomator например. Он всегда в свою папку .var (если флатпаК) пишет лог. И Ничего вы с этим не сделаете. Названия разные, поэтому ln -s действительно не всегда работает. ТС действительно важный вопрос задал

anonymous
()
Ответ на: комментарий от papin-aziat

Не наш случай, но даже так

rm /var/log/Xorg.0.log
ln -s /dev/null /var/log/Xorg.0.log
chattr +i /var/log/Xorg.0.log

очень простое и штатное решение

futurama ★★★★★
()
Последнее исправление: futurama (всего исправлений: 2)

Буду крайне оригинален - купи китайскую флешку на 64Тб за 100 рублей и примонтируй в этот каталог. Идеальная дыра будет!

anonymous
()
Ответ на: комментарий от papin-aziat

Откуда появится 1,2,3? Это номер дисплея.

специально для тебя

$ cd /var/log

$ ls -l Xorg.*.log*
lrwxrwxrwx 1 root root     9 дек  6 15:06 Xorg.0.log -> /dev/null
-rw-r--r-- 1 root root 66866 ноя 21 12:34 Xorg.0.log.old

$ ps -ef | grep Xorg

root        1510    1370  2 15:07 tty7     00:00:02 /usr/lib/xorg/Xorg :0 ...

futurama ★★★★★
()
Последнее исправление: futurama (всего исправлений: 3)
Ответ на: комментарий от u5er

Делаешь «user switch»? Запускаешь несколько Хов? Не так и сложно сделать еще несколько линков.

Но повторюсь это не тема данного топика. Какие тут Хы в минимальной системе?

futurama ★★★★★
()
Последнее исправление: futurama (всего исправлений: 1)
Ответ на: комментарий от Stanson

Подставь своим программам свои open(),write(),close().

Мне кажется если бы он мог это сделать - тему не создавал бы. Ему нужно готовое решение с пошаговой инструкцией.

VIT ★★
()

оперативную память

Это технически невозможно. Даже с /dev/null файл какое-то время находится в рам’ке. Только потом «отбрасыватся».

Не морочте ни себе не людям голову. TMPFS и дело с концом. Никто не будет ловить момент чтобы залить вашу плашку памяти жидким азотом или гелием. Деже если вы злостный нарушитель. Есть другие методы.

А если вопрос экономии SSD… То RAM тоже в помощь.

Топик просто ни о чем. Проблема там где её нет.

Пы. Сы : зря вы так к логам. Сломаете что-то, без них даже тут не помогут.

anonymous
()
Ответ на: комментарий от anonymous

tmpfs /var/log tmpfs

Бывает, что приложение хочет писать не в /var/log, а в /var/log/blabla/. И этот каталог создаётся один раз при установке (пакетным менджером). Если каталога нет, приложение не сможет открыть файл /var/log/blabla/log, упадёт с ошибкой, только ошибку мы не увидим, так как все логи отключены :)

mky ★★★★★
()