Как предотвратить очистку папки внутри / tmp?

Вы можете отредактировать профиль по умолчанию для терминала Gnome, перейдя в меню «Глобальное меню», «Редактировать / Предпочтения», в котором вы можете включить «Использовать настраиваемый размер терминала по умолчанию» и установить размер столбцов и строк по умолчанию, как показано в следующий снимок экрана:

Все изменения, внесенные вами в профиль по умолчанию, будут иметь эффект при следующем открытии терминала.

Удачи!

1
задан 13 April 2017 в 15:24

4 ответа

Не совсем ответ на ваш вопрос, но вы можете найти /var/tmp как более подходящее место, так как оно не очищается после перезагрузки. Он создан для временных файлов, которые не должны автоматически отбрасываться через короткое время.

Однако я часто создаю себе папку под / opt для хранения случайных вещей, которые мне не нужны в домашних условиях. Это подходящее место для размещения вещей, находящихся вне основного ОС.

8
ответ дан 23 May 2018 в 19:54
  • 1
    Это правильная идея. Если / tmp не делает то, что вам нужно, тогда сохраните свою информацию где-то еще - даже на другом диске, если доступно пространство. Не связывайтесь с вещами, которые Linux (и другие программисты) рассчитывают на определенный путь, если только это не единственный способ получить нужный результат. – Joe 18 June 2015 в 04:38

Так же:

EXCEPT='! -name .
            ...
            ! ( -path "./foo" )'

   # Remove all old files, then all empty directories
   ...
   find /tmp/foo/* -depth -xdev $TEXPR -delete

Пример:

$ cd /tmp/foo/
$ mkdir 1 2 3
$ touch 3 4 5
$ find /tmp/foo/* -depth -xdev $TEXPR -delete
$ ls /tmp/foo/
$

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

6
ответ дан 23 May 2018 в 19:54
  • 1
    На самом деле это не работает. Хотя команда find работает, как ожидалось, при запуске вручную, каталог по-прежнему удаляется после редактирования /etc/init/mounted-tmp.conf. Похоже, здесь что-то происходит. – terdon♦ 12 June 2015 в 19:37
  • 2
    WTH. ЭУ. это должно означать, что 1-я строка неисправна. возможно, он должен быть относительным (?) – Rinzwind 12 June 2015 в 23:50
  • 3
    @terdon да кажется, что он должен относиться к / tmp / – Rinzwind 13 June 2015 в 00:07
  • 4
    Я так не думаю, я пробовал различные перестановки, включая -path ./foo и даже -name '*foo*', и никто из них не работал (на Ubuntu Server 14.04). Я думаю, что это не правильный файл, и мы смотрим не туда. То, что вы предлагаете , должно работать , это просто не похоже. – terdon♦ 13 June 2015 в 01:30

Плохая идея иметь файлы с будущим значением, писать в каталог / tmp (/ var / tmp, как это было предложено другими, лучше). Тем не менее, вы можете захотеть сделать выстрел в chattr. Это должно запускаться после выхода приложения, но до выключения. Помните, что эта операция не позволит ничего писать в этот каталог впредь.

touch /tmp/foo/ddmmyy/.001_immute_me chattr + i /tmp/foo/ddmmyy/.001_immute_me

0
ответ дан 23 May 2018 в 19:54
  • 1
    Как это будет полезно, если я хочу иметь временный каталог? – simbabque 19 June 2015 в 10:04

Запустите это:

echo "if [ ! -e /etc/foo/ ]; then mkdir /etc/foo/; fi; rm -rf /etc/foo/*" > /bin/foodel; sudo chmod 755 /bin/foodel 

затем добавьте это в / etc / inittab здесь: где isitab файл?:

foo:2345:boot:/bin/foodel

Это создаст / etc / foo на загрузке, если он не существует, а затем его пуст.

Это будет делать то же самое в bash login:

echo "/bin/foodel" >> ~/.bashrc
-1
ответ дан 23 May 2018 в 19:54
  • 1
    Ubuntu версии 14 не использует /etc/inittab. Это четко и недвусмысленно указано на его странице руководства. – JdeBP 13 June 2015 в 18:30
  • 2
    * facepalm * Извините @JdeBP, вот что происходит со мной после жонглирования 4 различными версиями Linux. Он может помещать код где-то где-то askubuntu.com/questions/34308/where-is-inittab-file – Daniel 13 June 2015 в 23:25

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

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