LINUX.ORG.RU

Debian, pulse, tmpfs и /tmp

 ,


0

1

Не то что-бы проблема, а маленькая заноза.

Debian stable 10.8, ядро 4.19.0-14-amd64 x86_64 (на ядрах 11…13 было тоже самое).

/etc/fstab:

tmpfs /tmp tmpfs nosuid,nodev,noatime,mode=1777 0 0

при этом, при каждой перезагрузке в физическом каталоге /tmp на HDD появляется папочка вида:

pulse-PKdhtXMmr18n (т.е. /tmp/pulse-PKdhtXMmr18n)

как понимаю, pulse audio успевает «ссыкануть» в /tmp до маунта tmpfs.

в /var/log/daemon.log

xxxxx systemd[1]: tmp.mount: Directory /tmp to mount over is not empty, mounting anyway.

проблемка видится в настройках systemd, но что и где?

просим Великий Олл, кто знает что делать?

проблемка некритическая, просто неприятная… как заноза.



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

Загрузить в режиме восстановления с установщика, проделай все запрошенные шаги, далее через chroot удали все из /tmp и активируй tmp.mount.

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

Анон говнарь.

Сделай просто в рабочей системе umount /tmp
удали всё в /tmp/*
Pulse не может гадить, user space, Karl!

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

Pulse не может

Да нет, может. Ради любопытства сейчас посмотрел у себя, сидя под Arch в корень Debian /tmp - точно такая же картина.

Штук 100 этих /tmp/pulse-PKdhtXMmr18n. Правда все старые, лет пять похоже уже там лежат некоторые.

Удалил. Сейчас в Debian перезагружусь, посмотрю появятся ли. Интересно.

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

посмотрю появятся ли

Не, не появляются.

Загрузился в Debian, обновил apt update, вернулся в Arch, в Debian'овском /tmp пусто и чисто.

Какие-то хвосты из прошлой жизни, наверное.

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

Может

Ответ на: комментарий от anonymous 12.03.21 11:09:15

как видим проблема подтведилась.

чтоб удалить достаточно сделать

mount –bind / /mnt/root

но каждый раз всё поновой

AntonZP
() автор топика
Ответ на: Может от AntonZP

но каждый раз всё поновой

Это я не могу подтвердить. Прошлый раз под Hyper-V туда/сюда перегружался. Сейчас на голом железе повторил - у меня они больше не появляются на реальном /tmp.

На tmpfs - да, есть такие директории и сейчас. И они понятно что пропадают вместе с tmpfs. До файловой системы не добираются.

Debian10 + KDE.

Нужно звать специалистов по порядку запуска сервисов, видимо.

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

не могу подтвердить

Теперь могу.

Оказывается стабильно воспроизводится на 4.19 ядре. Все прошлые попытки были на 5.4 из bpo - и там не воспроизводится.

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

Ну, пока других мыслей нет. Несколько раз перезагружался в 5.4 - всё чисто.

На 4.19 каждый раз появляется это /tmp/pulse-XXXXXXX до монтирования /tmp в tmpfs.

Сравнивал daemon.log с обоих - никаких особых отличий не вижу до /tmp.

это https://pastebin.com/UnvjJzPx чистый tmp в 5.4

это https://pastebin.com/nQU9uMHn мусорный tmp в 4.19

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

В общем наиграл следующее:

У меня в 4.19 слишком быстро загружаются модули ядра snd_hda_intel и snd_hda_codec_realtek, которые и провоцируют /tmp/pulse-XXXXXXX раньше времени. В 5.4 они просто случайно, похоже, позже подгружаются.

Если их в blacklist, тогда всё чисто загружается.

Когда потом руками modprobe snd_hda_intel - вот тут и появляется это /tmp/pulse-XXXXXXX, но уже в tmpfs, как положено. (Причем - именно на intel; на realtek никаких /tmp/pulse не появляется, молча модуль загружается)

Как заставить их загружаться с задержкой - так и не разобрался.

Где-то тут собака порылась.

Устал играть в это, пардон.

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

ага… что-то типа этого Как правильно /tmp в tmpfs сделать в debian

скажу по секрету… шопотом…

если так сделать, то не только pulse успеет ссыкнуть… но и многие другие нагадить побольшому %(((((((

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

Там про юнит tmp.mount. Какой порядок загрузки ему прописать это уже отдельный вопрос.

скажу по секрету

Нет уж, показывайте свой юнит tmp.mount и что у него с порядком запуска. Такое добавляли ?:

[Install]
WantedBy=local-fs-pre.target

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

бобёр выдыхай...

выдохнул…

уронил полностью систему… полчаса удалял свой tmp.mount

если можете помочь - дайте нормальный юнит.

AntonZP
() автор топика
Ответ на: комментарий от Toxo2

Устал

Отдохнул.

Но теперь без физического доступа к той машине. И линуксы там доступны сейчас только через HyperV. А в таком режиме не видно, что лечить: ничего не болеет. Это только на реальном железе происходит.

На самом деле я тоже пытался вчера навесить зависимости на tmp.mount. И это можно сказать работает. Если не считать, что загрузка происходит некорректно и в итоге пытается войти в Single Mode (это там где Control-D or root password). Работает в том смысле, что /tmp не пачкается.

По-моему реальнее всё-таки со стороны модулей или udev какие-то костыли придумать. Может попробовать из Ubuntu украсть ее /etc/modprobe.d/alsa-base.conf ?

Toxo2 ★★★★
()
Ответ на: извиняюсь от AntonZP

беру отпуск

Это всегда хорошо.

Добрался физически до своей машины - проверил теорию с /etc/modprobe.d/alsa-base.conf спёртую из Ubuntu 20.04

Это работает у меня. Беда в том, что я не понимаю почему работает. Но работает. /tmp не пачкается.

При этом по

journalctl -xb -o short-iso-precise | grep -E 'snd_hda|/tmp'
всё равно видно с точностью до микросекунд, что /tmp монтируется после модулей, как и раньше.

Это - с alsa-base.conf

2021-03-14T19:56:56.860646+0700 omsiz97.berg kernel: snd_hda_codec_realtek hdaudioC0D0:      Line=0x1a
2021-03-14T19:56:56.954215+0700 omsiz97.berg systemd[1]: Mounting /tmp...
2021-03-14T19:56:56.957070+0700 omsiz97.berg systemd[1]: Mounted /tmp.

Это - без

2021-03-14T19:53:14.904711+0700 omsiz97.berg kernel: snd_hda_codec_realtek hdaudioC0D0:      Line=0x1a
2021-03-14T19:53:15.180279+0700 omsiz97.berg systemd[1]: tmp.mount: Directory /tmp to mount over is not empty, mounting anyway.
-- Каталог /tmp, который был указан в качестве точки монтирования (во втором
2021-03-14T19:53:15.180767+0700 omsiz97.berg systemd[1]: Mounting /tmp...
2021-03-14T19:53:15.182737+0700 omsiz97.berg systemd[1]: Mounted /tmp.

Было бы здорово, если бы кто-нибудь объяснил, что там такого в убунтовской alsa-base.conf происходит. Но в принципе - работает и чудненько.

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

ЧЯДНТ

$ systemctl cat /tmp

# /run/systemd/generator/tmp.mount
# Automatically generated by systemd-fstab-generator

[Unit]
SourcePath=/etc/fstab
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
Before=local-fs.target

[Mount]
Where=/tmp
What=tmpfs
Type=tmpfs
Options=nosuid,nodev,noatime,mode=1777

$systemctl enable tmp.mount

кака было така есть %((((((((

AntonZP
() автор топика
Ответ на: ЧЯДНТ от AntonZP

вылечилось

Точно не знаю как, но…

что сделал (вчера): обновил систему до: Debian GNU/Linux bullseye/sid x86_64 обновил ядро до: 5.10.0-4-amd64

неделю назад: tmp.mount взял из /usr/share/systemd несколько дней назад: выключил гипертридинг

как-то так %)))

AntonZP
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.