Автор Тема: Xfce c Sysv  (Прочитано 565062 раз)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #705 : 01.10.2018 13:01:10 »
Цитировать
https://bugzilla.altlinux.org/show_bug.cgi?id=35350#c9

Проблема с /var/run также решается добавлением плюсика в
/lib/tmpfiles.d/var.conf в строку:
L /var/run - - - - ../run

Первая строка, - исправленное на L+
Вторая не исправлена
$ grep ^L /{etc,run,lib}/tmpfiles.d/*
/lib/tmpfiles.d/legacy.conf:L+ /var/lock - - - - ../run/lock
/lib/tmpfiles.d/var.conf:L /var/run - - - - ../run

Пакет:
$ ls /{etc,run,lib}/tmpfiles.d/{var,legacy}.conf 2>/dev/null
/lib/tmpfiles.d/legacy.conf  /lib/tmpfiles.d/var.conf
$ rpm -qf $(ls /{etc,run,lib}/tmpfiles.d/{var,legacy}.conf 2>/dev/null)
systemd-utils-239-alt2.i586
systemd-utils-239-alt2.i586
« Последнее редактирование: 01.10.2018 13:33:17 от Speccyfighter »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #706 : 01.10.2018 14:20:28 »
На
http://nightly.altlinux.org/sisyphus/snapshots/20180926/regular-xfce-20180926-i586.iso
с sysvinit
на intel графике не регулируется яркость дисплея.
Ни хоткеями, ни из power менеджер:
# grep -rHi backlight /etc/polkit-1/rules.d/
#

Надо добавлять рулезы в сизифный polkit-sysvinit для xgrp взяв за основу:
# grep -rHi backlight /usr/share/polkit-1/actions/
/usr/share/polkit-1/actions/org.x.xf86-video-intel.backlight-helper.policy:  <action id="org.x.xf86-video-intel.backlight-helper">
/usr/share/polkit-1/actions/org.x.xf86-video-intel.backlight-helper.policy:    <annotate key="org.freedesktop.policykit.exec.path">/usr/libexec/xf86-video-intel-backlight-helper</annotate>
/usr/share/polkit-1/actions/org.xfce.power.policy:  <action id="org.xfce.power.backlight-helper">
/usr/share/polkit-1/actions/org.xfce.power.policy:    <annotate key="org.freedesktop.policykit.exec.path">/usr/sbin/xfpm-power-backlight-helper</annotate>

# ls -l /usr/share/polkit-1/actions/
итого 608
-rw-r--r-- 1 root root  20140 авг 14 16:55 org.freedesktop.accounts.policy
-rw-r--r-- 1 root root  67107 апр 18 14:18 org.freedesktop.color.policy
-rw-r--r-- 1 root root  27859 сен 24 17:43 org.freedesktop.ModemManager1.policy
-rw-r--r-- 1 root root 141516 авг  3 17:40 org.freedesktop.NetworkManager.policy
-rw-r--r-- 1 root root   3520 сен 18 15:10 org.freedesktop.policykit.policy
-rw-r--r-- 1 root root  16183 авг  6  2017 org.freedesktop.realmd.policy
-rw-r--r-- 1 root root 306051 авг 15 22:32 org.freedesktop.UDisks2.policy
-rw-r--r-- 1 root root   6980 авг 30 10:51 org.gnome.gparted.policy
-rw-r--r-- 1 root root  14634 сен  3 17:24 org.gtk.vfs.file-operations.policy
-rw-r--r-- 1 root root   2733 мая 13 05:04 org.pkexec.cpu-x.policy
-rw-r--r-- 1 root root   1356 авг 21 20:04 org.xfce.power.policy
-rw-r--r-- 1 root root    895 авг 20 18:10 org.xfce.session.policy
-rw-r--r-- 1 root root   9201 авг 22 17:57 org.xfce.thunar.policy
-rw-r--r-- 1 root root    860 сен  7 11:46 org.x.xf86-video-intel.backlight-helper.policy

# ls -1 /usr/share/polkit-1/actions/*
/usr/share/polkit-1/actions/org.freedesktop.accounts.policy
/usr/share/polkit-1/actions/org.freedesktop.color.policy
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy
/usr/share/polkit-1/actions/org.freedesktop.NetworkManager.policy
/usr/share/polkit-1/actions/org.freedesktop.policykit.policy
/usr/share/polkit-1/actions/org.freedesktop.realmd.policy
/usr/share/polkit-1/actions/org.freedesktop.UDisks2.policy
/usr/share/polkit-1/actions/org.gnome.gparted.policy
/usr/share/polkit-1/actions/org.gtk.vfs.file-operations.policy
/usr/share/polkit-1/actions/org.pkexec.cpu-x.policy
/usr/share/polkit-1/actions/org.xfce.power.policy
/usr/share/polkit-1/actions/org.xfce.session.policy
/usr/share/polkit-1/actions/org.xfce.thunar.policy
/usr/share/polkit-1/actions/org.x.xf86-video-intel.backlight-helper.policy
# rpm -qf $(ls -1 /usr/share/polkit-1/actions/*)
accountsservice-0.6.50-alt2.S1.i586
colord-1.4.3-alt1.i586
ModemManager-1.8.2-alt1.i586
NetworkManager-daemon-1.12.2-alt3.i586
polkit-0.115-alt3.i586
realmd-0.16.3-alt1.S1.i586
udisks2-2.8.0-alt1.i586
gparted-0.32.0-alt1.i586
gvfs-backend-admin-1.38.0-alt1.i586
cpu-x-3.2.2-alt1.i586
xfce4-power-manager-1.6.1-alt1.i586
xfce4-session-4.13.1-alt1.i586
thunar-1.8.1-alt1.i586
xorg-drv-intel-2.99.917-alt8.i586

Все actions с messages во вложении
« Последнее редактирование: 01.10.2018 15:12:04 от Speccyfighter »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #707 : 01.10.2018 15:51:06 »
На
http://nightly.altlinux.org/sisyphus/snapshots/20180926/regular-xfce-20180926-i586.iso
с sysvinit
на intel графике не регулируется яркость дисплея.
Ни хоткеями, ни из power менеджер:
...

Надо добавлять рулезы в сизифный polkit-sysvinit для xgrp взяв за основу:
# grep -rHi backlight /usr/share/polkit-1/actions/
...
/usr/share/polkit-1/actions/org.xfce.power.policy:  <action id="org.xfce.power.backlight-helper">
/usr/share/polkit-1/actions/org.xfce.power.policy:    <annotate key="org.freedesktop.policykit.exec.path">/usr/sbin/xfpm-power-backlight-helper</annotate>
...

Рулез регулировки яркости лэптоп дисплеев готов и работает.
polkit-sysvinit для сизифа в процессе и будет повышен до версии 0.4.0
Он никогда не станет версией 1.x.x, ибо костыль.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #708 : 01.10.2018 18:14:57 »
Что предварительно готово
$ cat hlam-varlock/polkit-sysvinit.txt
- 60-xfce4-pm-helper.rules переименован в 60-xfce-power-policy.rules
- xfsm-shutdown-helper переименован в 60-xfce.session.policy.rules
- в 60-xfce-power-policy.rules добавлено правило org.xfce.power.backlight-helper
- добавлен 60-gnome.gparted.policy.rules
-

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #709 : 01.10.2018 18:18:38 »
Антон, нужно принимать решение по sysv сизифу:
- или запускаем gparted через xdg-su, или 60-gnome.gparted.policy.rules ложу в сизифный polkit-sysvinit и делаю предварительную сборку пакета.

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Xfce c Sysv
« Ответ #710 : 01.10.2018 18:35:29 »
Антон, нужно принимать решение по sysv сизифу:
- или запускаем gparted через xdg-su, или 60-gnome.gparted.policy.rules ложу в сизифный polkit-sysvinit и делаю предварительную сборку пакета.

Есть у меня идейка подредактировать /usr/bin/gparted, чтобы определял отсутствие logind, или же, что система на SysV. И в этом случае использовалось xdg-su. В принципе сложного ничего в этом нет. Нужно лишь немного времени.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #711 : 01.10.2018 18:47:41 »
Антон, нужно принимать решение по sysv сизифу:
- или запускаем gparted через xdg-su, или 60-gnome.gparted.policy.rules ложу в сизифный polkit-sysvinit и делаю предварительную сборку пакета.

Есть у меня идейка подредактировать /usr/bin/gparted, чтобы определял отсутствие logind, или же, что система на SysV. И в этом случае использовалось xdg-su. В принципе сложного ничего в этом нет. Нужно лишь немного времени.

Короче я не ложу 60-gnome.gparted.policy.rules в polkit-sysvinit ?

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #712 : 02.10.2018 00:46:39 »
polkit-sysvinit (сизиф, будущий 0.4.0)

Что сделано:
- 60-xfce4-pm-helper.rules переименован в 60-xfce-power-policy.rules
- xfsm-shutdown-helper.rules переименован в 60-xfce.session.policy.rules
- в 60-xfce-power-policy.rules добавлено правило org.xfce.power.backlight-helper
- добавлен 60-xf86-video-intel.backlight-helper.policy.rules

Что не сделано:
- не добавлялся рулез org.freedesktop.accounts.policy ввиду прибитости к systemd
- не добавлялся рулез pkexec.cpu-x.policy ввиду запуска cpu-x через xdg-su

Под вопросом:
- 60-policykit.policy.rules - запуск программ от другого пользователя включая root (группа wheel)
  Реализуемо аналогичным функционалом через su или xdg-su для группы wheel
- 60-xfce.thunar.policy.rules - запуск от root; реализуемо через su или xdg-su для группы wheel
- 60-gnome.gparted.policy.rules - планируется запуск через xdg-su

Что имеем в остатке
Оставлять предложения/пожелания/рулезы по полиси:
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:  <action id="org.freedesktop.ModemManager1.Control">
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:    <message>System policy prevents controlling the Modem Manager.</me
ssage>
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:  <action id="org.freedesktop.ModemManager1.Device.Control">
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:    <message>System policy prevents unlocking or controlling the mobil
e broadband device.</message>
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:  <action id="org.freedesktop.ModemManager1.Contacts">
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:    <message>System policy prevents adding, modifying, or deleting this device's contacts.</message>
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:  <action id="org.freedesktop.ModemManager1.Messaging">
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:    <message>System policy prevents sending or manipulating this device's text messages.</message>
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:  <action id="org.freedesktop.ModemManager1.Voice">
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:    <message>System policy prevents voice calls.</message>
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:  <action id="org.freedesktop.ModemManager1.Location">
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:    <message>System policy prevents enabling or viewing geographic location information.</message>
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:  <action id="org.freedesktop.ModemManager1.USSD">
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:    <message>System policy prevents querying or utilizing network information and services.</message>
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:  <action id="org.freedesktop.ModemManager1.Firmware">
/usr/share/polkit-1/actions/org.freedesktop.ModemManager1.policy:    <message>System policy prevents querying or managing this device's firmware.</message>
/usr/share/polkit-1/actions/org.freedesktop.realmd.policy:      <action id="org.freedesktop.realmd.discover-realm">
/usr/share/polkit-1/actions/org.freedesktop.realmd.policy:              <message>Authentication is required to discover a kerberos realm</message>
/usr/share/polkit-1/actions/org.freedesktop.realmd.policy:      <action id="org.freedesktop.realmd.configure-realm">
/usr/share/polkit-1/actions/org.freedesktop.realmd.policy:              <message>Authentication is required to join this machine to a realm or domain</message>
/usr/share/polkit-1/actions/org.freedesktop.realmd.policy:      <action id="org.freedesktop.realmd.deconfigure-realm">
/usr/share/polkit-1/actions/org.freedesktop.realmd.policy:              <message>Authentication is required to remove this computer from a realm or domain.</message>
/usr/share/polkit-1/actions/org.freedesktop.realmd.policy:      <action id="org.freedesktop.realmd.login-policy">
/usr/share/polkit-1/actions/org.freedesktop.realmd.policy:              <message>Authentication is required to change the policy of who can log in on this computer.</message>
/usr/share/polkit-1/actions/org.gtk.vfs.file-operations.policy:  <action id="org.gtk.vfs.file-operations-helper">
/usr/share/polkit-1/actions/org.gtk.vfs.file-operations.policy:    <message>Authentication is required to perform file operations</message>
/usr/share/polkit-1/actions/org.gtk.vfs.file-operations.policy:  <action id="org.gtk.vfs.file-operations">
/usr/share/polkit-1/actions/org.gtk.vfs.file-operations.policy:    <message>Authentication is required to perform file operations</message>
« Последнее редактирование: 02.10.2018 01:07:47 от Speccyfighter »

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Xfce c Sysv
« Ответ #713 : 02.10.2018 11:18:06 »
Короче я не ложу 60-gnome.gparted.policy.rules в polkit-sysvinit ?

Пока нет.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #714 : 02.10.2018 11:33:36 »
Внимание! Предельно высокий уровень опасности в альтлинукс!
Пользователь не обладающий правами, через xdg-su способен внести изменения в блочное устройство или уничтожить его содержимое:

(regular-sysv-xfce sisyphus лайв тест)
$ echo $USER
builder
$ groups
builder
$ xdg-su -c gparted
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Узел выключен
Too few arguments.
======================
libparted : 3.2.46-e4ae
======================

   GParted 0.32.0 --enable-libparted-dmraid --enable-online-resize

   Libparted 3.2.46-e4ae

   Создать Главный раздел #1 (ext2, 7.00 МиБ) на /dev/sda  00:00:17    ( УСПЕШНО )
        создать пустой раздел  00:00:06    ( УСПЕШНО )
                     путь: /dev/sda12 (раздел)
                     начало: 882444288
                     конец: 882458623
                     размер: 14336 (7.00 МиБ)

        стереть сигнатуры старой файловой системы в /dev/sda12  00:00:03    ( УСПЕШНО )
              write 512.00 КиБ of zeros at byte offset 0  00:00:00    ( УСПЕШНО )

              write 512.00 КиБ of zeros at byte offset 6815744  00:00:00    ( УСПЕШНО )

              write 4.00 КиБ of zeros at byte offset 7274496  00:00:00    ( УСПЕШНО )

              write 8.00 КиБ of zeros at byte offset 7331840  00:00:00    ( УСПЕШНО )
       
              очистить системный кеш операций /dev/sda  00:00:01    ( УСПЕШНО )

        установить тип раздела на /dev/sda12  00:00:08    ( УСПЕШНО )
                              новый тип раздела: ext2

        создать новую файловую систему ext2  00:00:00    ( УСПЕШНО )
             mkfs.ext2 -F -L ʼʼ ʼ/dev/sda12ʼ  00:00:00    ( УСПЕШНО )
                    Creating filesystem with 7168 1k blocks and 1792 inodes

                    Allocating group tables: done
                    Writing inode tables: done
                    Writing superblocks and filesystem accounting information: done

                    mke2fs 1.44.3 (10-July-2018)

   ========================================
# tune2fs -l /dev/sda12 | grep 'created\|write time'
Filesystem created:       Tue Oct  2 10:36:22 2018
Last write time:          Tue Oct  2 10:36:22 2018
# fdisk -l /dev/sda | grep sda12
/dev/sda12 882444288 882458623     14336     7M Файловая система Linux
# file -s /dev/sda12
/dev/sda12: Linux rev 1.0 ext2 filesystem data, UUID=cb855d0c-1712-48c5-a488-89da061b4b56 (large files)
# ls -l /usr/bin/xdg-su
-rwxr-xr-x 1 root root 18603 июл 18 16:18 /usr/bin/xdg-su


А вот в этом случае последует отказ в доступе если пользователь не состоит в группе wheel, т.е. не имеет прав выполнения программ требующих повышения привилегий:
# chmod 754 /usr/bin/xdg-su
# chown root:wheel /usr/bin/xdg-su
# ls -l /usr/bin/xdg-su
-rwxr-xr-- 1 root wheel 18603 июл 18 16:18 /usr/bin/xdg-su
$ echo $USER
builder
$ groups
builder
$ xdg-su -c gparted
bash: /usr/bin/xdg-su: Отказано в доступе

К слову:
# ls -l /bin/su
-rws--x--- 1 root wheel 22368 янв 16  2017 /bin/su


Или:
# ls -l /usr/bin/xdg-su
-rwsr-x--- 1 root wheel 18603 июл 18 16:18 /usr/bin/xdg-su

Надо вешать багу с статусом critical, - предельно опасно:
# rpm -qf /usr/bin/xdg-su
xdg-utils-1.1.3-alt3.S1.noarch
« Последнее редактирование: 02.10.2018 11:49:20 от Speccyfighter »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #715 : 02.10.2018 12:18:27 »
Отправлен багрепорт (степень опасности: критический):
Ошибка 35463 - xdg-su и не wheel user
https://bugzilla.altlinux.org/show_bug.cgi?id=35463

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #716 : 02.10.2018 14:04:08 »
Отправлен багрепорт (степень опасности: критический):
Ошибка 35463 - xdg-su и не wheel user
https://bugzilla.altlinux.org/show_bug.cgi?id=35463

Багрепорт перешёл в статус RESOLVED NOTABUG.
« Последнее редактирование: 02.10.2018 14:09:45 от Speccyfighter »

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Re: Xfce c Sysv
« Ответ #717 : 02.10.2018 15:09:48 »
Отправлен багрепорт (степень опасности: критический):
Ошибка 35463 - xdg-su и не wheel user
https://bugzilla.altlinux.org/show_bug.cgi?id=35463

Багрепорт перешёл в статус RESOLVED NOTABUG.


Похоже, что это проблема beesu.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #718 : 02.10.2018 15:22:30 »
Отправлен багрепорт (степень опасности: критический):
Ошибка 35463 - xdg-su и не wheel user
https://bugzilla.altlinux.org/show_bug.cgi?id=35463

Багрепорт перешёл в статус RESOLVED NOTABUG.


Похоже, что это проблема beesu.

Возможно Антон. К тому же beesu не понимает '-u user', а при 'xdg-su -u user -c COMMAND', xdg-su вывалится с ошибкой:
$ xdg-su -u root -c gparted
/usr/bin/beesu: invalid option -- '-u'

И beesu действительно не имеет такой опции.
Хотя хэлп на xdg-su говорит, что такая опция у xdg-su есть.
« Последнее редактирование: 02.10.2018 15:24:15 от Speccyfighter »

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Re: Xfce c Sysv
« Ответ #719 : 02.10.2018 15:32:19 »
О как:
$ ls -l /usr/bin/xdg-su
-rwxr-xr-x 1 root root 18603 июл 18 16:18 /usr/bin/xdg-su
$ ls -l /usr/bin/beesu
lrwxrwxrwx 1 root root 13 окт  1  2017 /usr/bin/beesu -> consolehelper
$ ls -l /usr/bin/consolehelper
lrwxrwxrwx 1 root root 27 янв 25  2016 /usr/bin/consolehelper -> ../lib/consolehelper/helper
$ ls -l /usr/lib/consolehelper/helper
-rwx--s--x 1 root conshelp 18124 янв 25  2016 /usr/lib/consolehelper/helper

А зачем ему conshelp если запускать могут other? Какой в этом смысл?