Котаны, возникла сегодня охуенная ситуация. Короче, с утра на кудахтере не запускаются никакие графические приложения. Даже перезагрузить и выключить через меню нельзя, диалог не появляется. Хорошо, хоть был запущен yakuake, который продолжал работать, и через него удалось выяснить, что файл xauth - того. И тут первый момент, начиная с sddm 0.20 этот файл создаётся не в домашней папке (~/.Xauthority как раньше), а в /tmp/xauth_… Так вот, на директории /tmp было время модификации 3 часа ночи. В логе в это время как раз отработал cron. А в кроне есть такой любопытный скрипт systemd-tmpfiles-clean , который запускает systemd-tmpfiles --clean Но у меня же гента с openrc, какой нафиг systemd? А вот так, куски этого скверного поделия пробрались и сюда (как udev, logind). Раньше была баш-портянка в составе openrc “opentmpfiles”, но это было немодно и немолодёжно, поэтому её deprecated, и теперь с гентой идёт ещё один кусок лёниной поделки. И вот этот кусок, как оказалось, заодно по дефолту втихаря чистит /tmp, ломая систему. А, ещё, мякотка в том, что удаляются файлы 10-дневной давности, и обнаружилось всё потому, что у меня внезапно образовался аптайм как раз 10 дней. А так то вродё всё работает, и с новым sddm (где xauth в /tmp), который стабилизировался уже как пару месяцев назад. Такие дела.

  • Anoxemian
    link
    fedilink
    arrow-up
    0
    ·
    3 years ago

    man:

    The place for small temporary files. This directory is
               usually mounted as a "tmpfs" instance, and should hence not
               be used for larger files. (Use /var/tmp/ for larger files.)
               This directory is usually flushed at boot-up. Also, files
               that are not accessed within a certain time may be
               automatically deleted.
    
               If applications find the environment variable $TMPDIR set,
               they should use the directory specified in it instead of
               /tmp/ (see environ(7) and IEEE Std 1003.1[4] for details).
    
               Since /tmp/ is accessible to other users of the system, it is
               essential that files and subdirectories under this directory
               are only created with mkstemp(3), mkdtemp(3), and similar
               calls. For more details, see Using /tmp/ and /var/tmp/
               Safely[5].
    

    Also, files that are not accessed within a certain time may be automatically deleted.

    • TheAnonymousOP
      link
      fedilink
      arrow-up
      0
      ·
      3 years ago

      «man» Это лёнькина ересь А вот что в стандарте «Programs must not assume that any files or directories in /tmp are preserved between invocations of the program.» Но тут то иксы и sddm были всё время запущены. И вообще «Although data stored in /tmp may be deleted in a site-specific manner, it is recommended that files and directories located in /tmp be deleted whenever the system is booted.» Оно логично, если монтировать /tmp в tmpfs, тогда содержимое будет очищаться при перезагрузке, но про то, чтобы оно по планировщику внезапно удалялось, речи не идёт.