Котаны, возникла сегодня охуенная ситуация. Короче, с утра на кудахтере не запускаются никакие графические приложения. Даже перезагрузить и выключить через меню нельзя, диалог не появляется. Хорошо, хоть был запущен 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

    А не думаешь ли ты, котан, что мудак конкретно в этом кейсе не лёня, а тот кто сломал стандарт и впихнул .xauth в tmp?

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

      «.xauth в tmp» Фиг с ним с xauth, а если бы в /tmp какие важные данные хранились? В каком стандарте написано, что файлы из tmp надо удалять через 10 дней?

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

        В каком стандарте написано

        а еще правильнее: а есть ли у нас вообще сейчас стандарты на линукс или каждый редхат просто импровизирует?

        все эти симлинки, которые они насоздавали?

        lrwxrwxrwx   1 root root     7 Sep 29 06:06 bin -> usr/bin
        lrwxrwxrwx   1 root root     7 Sep 29 06:06 lib -> usr/lib
        lrwxrwxrwx   1 root root     9 Sep 29 06:06 lib32 -> usr/lib32
        lrwxrwxrwx   1 root root     9 Sep 29 06:06 lib64 -> usr/lib64
        lrwxrwxrwx   1 root root    10 Sep 29 06:06 libx32 -> usr/libx32
        lrwxrwxrwx   1 root root     8 Sep 29 06:06 sbin -> usr/sbin
        

        это стандарт что ли?

      • 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, тогда содержимое будет очищаться при перезагрузке, но про то, чтобы оно по планировщику внезапно удалялось, речи не идёт.

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

    гента… systemd… одно г*вно на другом сидит и другим погоняет… это реально все косяки дизайна Linux’a вцелом. так называемый базар по все статьям… плохая интеграцию разнородных систем… тут и поттер виноват, и гентушники и все-все-все, кто в этом принимал участие…

    они говорили, что systemd создаст единый стандарт, а в итоге на сосискиной убунту я читаю в крон-файлах:

    # Important Note!  This cronjob will NOT be executed if you are
    # running systemd as your init system.  If you are running systemd,
    # the cronjob.timer function takes precedence over this cronjob.  For
    # more details, see the systemd.timer manpage, or use systemctl show
    

    отлично! еще одна специфика!

    p.s.

    переходи на фряху. никаких тебе левых скриптов и тем более никаких systemd.

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

      «плохая интеграцию разнородных систем» На мой взгляд, проблема в том, что эти системы слишком много на себя берут. Ладно, если это готовый дистрибутив, куда надо только тыкать мышкой, но тут самые базовые компоненты превращаются в грёбаный комбайн, который живёт своей жизнью, и сам делает то, чего от него не ожидаешь. По сути, tmpfiles был нужен, чтобы при загрузке создавать временные папки и всякие pid-файлы в /run для демонов, а он внезапно начинает хозяйничать, удалять “старые” файлы, запускаясь по таймеру. И это не сам systemd, а его малюсенький кусочек

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

        На мой взгляд, проблема в том, что эти системы слишком много на себя берут.

        или слишком мало. вот если бы у тебя systemd заодно рулил файлами графических сессий, как это делается в Gnome на дистрах от RH, у тебя бы не вышло этой проблемы. так что смотря как смотреть.

        смысл в том, что такие вещи должны быть продуманы в рамках единого дизайна, а не конструктора “собери сам”.

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

      вайфай завезли или вы с диалапа капчуете до сих пор?

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

    И тут первый момент, начиная с sddm 0.20

    Надо пойти к ним в иссуси и пригрозить кастрацией.

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

    Пацаны!

    А леня не пробовал вообще, перед тем как сносить файлы по крону, проверять не открыт ли часом энтот файл кем-то?

    • deep-purple
      link
      fedilink
      arrow-up
      0
      ·
      3 years ago

      Ты хочешь, чтобы от такой замудреной логики системда еле ворочалась на последнем поколении процов?

      Вот и потный не хочет, потому удаляет без проверки.

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

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

        • deep-purple
          link
          fedilink
          arrow-up
          0
          ·
          3 years ago

          Исходя из того, как пишет потный – оно или будет еле ворочатся или всеравно будет недопроверять и удалять.

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

    Но у меня же гента с openrc

    ССЗБ. Используй gentoo с systemd.

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

    Хорошо, хоть был запущен yakuake, который продолжал работать, и через него удалось выяснить, что файл xauth - того.

    Позорник, в чём проблема нажать CtrL+Alt+F1 и залогинится в консоли?

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

    – Васильиваныч, Анка к белым ползëт!
    – Не стреляй, Петька. Это наше бактериологическое оружие.

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

      Да ладно, винда тоже не без сюрпризов.