Можно ли загрузиться без удаления /tmp?

Как упомянул пользователь, проблема была устранена с помощью пакетов/RPM, созданных для его системы CentOS Linux версии 7.3.1611 (Core ).

Судя по всему, эти правильные RPM были пакетами Red Hat Enterprise Linux (RHEL )7.

Трудности, с которыми он столкнулся ранее, как описано в вопросе, были связаны с тем, что он пытался установить пакеты Fedora Rawhide в своей системе.

3
03.09.2020, 12:46
2 ответа

Да, это так.

Есть две вещи, которые могут привести к потере файлов в/tmp:

  1. tmpfs:Многие современные системы монтируют временную файловую систему (считают RAM-диск )в /tmp, что означает, что содержимое всегда теряется при завершении работы.

  2. Очистка старых файлов в /tmp. Это настраиваемый скрипт для очистки файлов в /tmp.

Пожалуйста, проверьте вывод команды df /tmp.В случае 1 это будет выглядеть примерно так:

$ df /tmp/
Filesystem     1K-blocks  Used Available Use% Mounted on
tmpfs           12290040   276  12289764   1% /tmp

(Важен первый столбец. tmpfs.)

В случае 2 (вашем случае )вы часто можете узнать больше, просмотрев файлы в/etc/tmpfiles.d--см. man tmpfiles.d. Пожалуйста, добавьте вывод

grep -s. /*/tmpfiles.d/*.conf /*/*/tmpfiles.d/*.conf

на ваш вопрос. ⟹ Ваш файл /usr/lib/tmpfiles.d/tmp.conf, который вам нужно отредактировать, например. с помощью sudo nano /usr/lib/tmpfiles.d/tmp.confи примените изменение в соответствии со следующим примером.

Это пример файла/etc/tmpfiles.d/tmp.conf:

# see tmpfiles.d(5)
# always enable /tmp folder cleaning
D! /tmp 1777 root root 0

# remove files in /var/tmp older than 10 days
D /var/tmp 1777 root root 10d

Первая запись D! /tmp 1777 root root 0означает, что папка /tmpбудет удаляться и заново -создаваться при каждой загрузке. Вы можете закомментировать эту строку и, возможно, добавить строку, аналогичную следующей строке без комментария -в этом файле:

# see tmpfiles.d(5)

# # always enable /tmp folder cleaning
# D! /tmp 1777 root root 0

# Keep files in /tmp but not very old ones
D! /var/tmp 1777 root root 30d

# remove files in /var/tmp older than 10 days
D /var/tmp 1777 root root 10d

Поскольку в данный момент система не загружается, вам необходимо загрузиться с живого DVD/USB-носителя, а затем смонтировать системный раздел, например,. к /mnt. Затем отредактируйте файл /mnt/usr/lib/tmpfiles.d/tmp.conf, как описано выше.

0
18.03.2021, 23:07

Вы можете добавить init=/bin/bashв командную строку ядра для загрузки в оболочку без запуска systemd. Перемонтируйте файловую систему для чтения -и записи, переместите файлы из /tmp, снова смонтируйте файловую систему для чтения -и exec /sbin/initдля загрузки системы.

Обратите внимание, что в оболочке не будет полностью настроенного терминала, поэтому некоторые функции (завершение вкладок, элемент управления -Z, элемент управления -C,... )могут не работать.

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

PS :в норме /var/tmpсохраняется в ботинках.

0
18.03.2021, 23:07

Теги

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