Автор Тема: Летние стартеркиты p10 (20220612)  (Прочитано 2744 раз)

Оффлайн dango_

  • Давно тут
  • **
  • Сообщений: 292
Re: Летние стартеркиты p10 (20220612)
« Ответ #15 : 24.06.2022 12:00:48 »
alt-p10-xfce-sysv-20220612-x86_64 установлен на Dell Inspiron 3558 в дуалбуте с Windows 10.
Смутно помню, что после установки ярлыки на разделы с NTFS на рабочем столе вроде как были.
Потом я их привязал через fstab.
Попозже откачу на исходную и проверю.
Без фанатизма!

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 8 900
    • Email
Re: Летние стартеркиты p10 (20220612)
« Ответ #16 : 24.06.2022 13:53:22 »
Предлагаю примонтировать при установке на постоянку. Ну или после.
Потом я их привязал через fstab.
Да я бы тоже так смог, но в том то и дело, что диск нужен не всегда и хотелось бы его монтировать только при необходимости. Блин это ведь раньше работало как-то...

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

  • alt linux team
  • ***
  • Сообщений: 4 723
  • antohami@
Re: Летние стартеркиты p10 (20220612)
« Ответ #17 : 24.06.2022 15:05:47 »
Да я бы тоже так смог, но в том то и дело, что диск нужен не всегда и хотелось бы его монтировать только при необходимости. Блин это ведь раньше работало как-то...

Интеграция с polkit всё глубже и глубже... А polkit работает только или с systemd, либо с elogind. В одном репозитории не уживаются.

Оффлайн dango_

  • Давно тут
  • **
  • Сообщений: 292
Re: Летние стартеркиты p10 (20220612)
« Ответ #18 : 24.06.2022 16:26:34 »
alt-p10-xfce-sysv-20220612-x86_64 установлен на Dell Inspiron 3558 в дуалбуте с Windows 10.
Прошу прощения, соврал. На ноут ставил бета-версию означенного стартеркита от 20220605.
Проверил сейчас на ноуте в live-режиме сначала бета-версию, а потом и сам релиз стартеркита.
Разделы с NTFS доступны на рабочем столе и в Thunar.
И пакет polkit-rule-udisks2-mount в стартерките есть.
# rpm -qa polkit-rule-udisks2-mount
polkit-rule-udisks2-mount-1.2-alt1.noarch
« Последнее редактирование: 24.06.2022 16:28:49 от dango_ »
Без фанатизма!

Оффлайн dango_

  • Давно тут
  • **
  • Сообщений: 292
Re: Летние стартеркиты p10 (20220612)
« Ответ #19 : 24.06.2022 16:59:37 »
И хотя система на ноуте уже прошла через обновления и напильник, решил проверить и в ней.
Закомментил в fstab разделы NTFS, включил отображение носителей на рабочем столе и перезагрузился.
В общем, результат, как и выше, положительный.
Без фанатизма!

Оффлайн dango_

  • Давно тут
  • **
  • Сообщений: 292
Re: Летние стартеркиты p10 (20220612)
« Ответ #20 : 24.06.2022 17:06:01 »
Да я бы тоже так смог, но в том то и дело, что диск нужен не всегда и хотелось бы его монтировать только при необходимости. Блин это ведь раньше работало как-то...
Ну у меня вроде работает. Если надо что-то для сравнения, спрашивайте. Чем смогу - помогу.
Без фанатизма!

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 087
    • Email
Re: Летние стартеркиты p10 (20220612)
« Ответ #21 : 28.07.2022 15:21:32 »
всем привет!
в образы с Xfce думаю имеет смысл добавить xkill, потом что на него висит хоткей Cltr+Alt+Esc
Сноси Винду, переходи на Линукс ! :)

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

  • alt linux team
  • ***
  • Сообщений: 4 723
  • antohami@
Re: Летние стартеркиты p10 (20220612)
« Ответ #22 : 23.08.2022 07:29:30 »
всем привет!
в образы с Xfce думаю имеет смысл добавить xkill, потом что на него висит хоткей Cltr+Alt+Esc

Добавил.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 9 955
Re: Летние стартеркиты p10 (20220612)
« Ответ #23 : 02.10.2022 23:07:45 »
А если его наоборот удалить?
Если удалить, то картина меняется:
Не удалось подключить Том 320GB
Not authorized to perform operation


Этим пакетом, добавив его в стабильный репозиторий, в образы стартеркитов, а следовательно и в образ p10-xfce-sysv:
# polkit-rule-udisks2-mount-1.2-alt1.noarch.rpm:
$ cat usr/share/polkit-1/rules.d/10-udisks2-mount.rules
polkit.addRule(function(action, subject) {
    if (  (
action.id == "org.freedesktop.udisks2.filesystem-mount-system" ||
action.id == "org.freedesktop.udisks2.filesystem-mount-other-seat" ||
action.id == "org.freedesktop.udisks2.filesystem-unmount-others" ||
action.id == "org.freedesktop.udisks2.encrypted-unlock-other-seat" ||
action.id == "org.freedesktop.udisks2.eject-media-other-seat" ||
action.id == "org.freedesktop.udisks2.power-off-drive-other-seat" ) &&
subject.isInGroup("xgrp"))
    {
    return polkit.Result.YES;
    }
});

альты в p10-xfce-sysv  и во все стартеркиты, вкрячили сразу две ошибки:
# grep 'org.freedesktop.udisks2.filesystem-mount-system"' /usr/share/polkit-1/rules.d/*
/usr/share/polkit-1/rules.d/60-sysvinit-mount.rules:    if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" && subject.isInGroup("xgrp"))


# grep 'org.freedesktop.udisks2.filesystem-mount-other-seat"' /usr/share/polkit-1/rules.d/*
/usr/share/polkit-1/rules.d/60-sysvinit-mount.rules:    if (action.id == "org.freedesktop.udisks2.filesystem-mount-other-seat" && subject.isInGroup("xgrp"))


# grep 'org.freedesktop.udisks2.filesystem-unmount-others"' /usr/share/polkit-1/rules.d/*
#


# grep 'org.freedesktop.udisks2.encrypted-unlock-other-seat"' /usr/share/polkit-1/rules.d/*
#


# grep 'org.freedesktop.udisks2.eject-media-other-seat"' /usr/share/polkit-1/rules.d/*
/usr/share/polkit-1/rules.d/60-sysvinit-mount.rules:    if (action.id == "org.freedesktop.udisks2.eject-media-other-seat" && subject.isInGroup("xgrp"))


# grep 'org.freedesktop.udisks2.power-off-drive-other-seat"' /usr/share/polkit-1/rules.d/*
/usr/share/polkit-1/rules.d/60-sysvinit-mount.rules:    if (action.id == "org.freedesktop.udisks2.power-off-drive-other-seat" && subject.isInGroup("xgrp"))
(К тому же, пакет polkit-rule-udisks2-mount-1.2-alt1.noarch.rpm, дублирует ^^^^ три правила пакета polkit-sysvinit. Из всего этого следует: нельзя в образы xfce-sysv, правила и пакеты, добавлять неглядя и бездумно.)

Ошибка безопасности в polkit-rule-udisks2-mount-1.2-alt1.noarch.rpm (непривилегированный пользователь состоящий в группе xgrp, может размонтироввать любую файловую любого пользователя, включая root):
$ grep 'others\|isInGroup' ./usr/share/polkit-1/rules.d/10-udisks2-mount.rules
action.id == "org.freedesktop.udisks2.filesystem-unmount-others" ||
subject.isInGroup("xgrp"))

и техническая ошибка (на монтировании файловых, используется не одно правило, а два):
$ grep 'mount-other-seat\|isInGroup' ./usr/share/polkit-1/rules.d/10-udisks2-mount.rules
action.id == "org.freedesktop.udisks2.filesystem-mount-other-seat" ||
subject.isInGroup("xgrp"))
$ grep 'filesystem-mount"' ./usr/share/polkit-1/rules.d/10-udisks2-mount.rules | wc -l
0
И второе правило, точнее первое, - отсутствует в polkit-rule-udisks2-mount-1.2-alt1.noarch.rpm.


Правило безопасности xfce-sysv (как и систем на sysvinit с kde3/tde) гласит:
- Ни при каких условиях, непривилегированный пользователь группы xgrp, не должен иметь прав размонтировать файловые смонтированные другими пользователями. Это прерогатива только root и wheel.
Иное, имеет место быть. Но только в репозитории. Не в образах xfce-sysv.
И если и может существовать в xfce-sysv, то только в виде:
polkit.addRule(function(action, subject)
{
    if (action.id == "org.freedesktop.udisks2.filesystem-unmount-others" && subject.isInGroup("wheel"))
    {
return polkit.Result.YES;
    };
});
(Первый пользователь, он же администратор, по-умолчанию в группе wheel)


Это главная причина, по которой правило org.freedesktop.udisks2.filesystem-unmount-others, никогда не добавлялось в xfce-sysv.

Следовательно:
- Пакет polkit-rule-udisks2-mount-1.2-alt1.noarch.rpm, должен быть немедленно удалён из образов p10-xfce-sysv и из установленных систем на p10-xfce-sysv.


PS Готов предоставить любую диагностику лишь бы только работало.

Это довольно редкая юзер-специфичная ошибка:
- Отказ в авторизации за отсутствием рулеза с разрешением выполнения действия в p10-xfce-sysv. После локализации ошибки, потребует внесение изменения в файл /usr/share/polkit-1/rules.d/60-sysvinit-mount.rules пакета polkit-sysvinit. Либо вкручиванием костыля вручную в каталог /etc/polkit-1/rules.d, правила с экшном.

Для начала, перед монтированием Windows, рекомендуется отключать гибернацию в Windows:
$ man ntfs-3g | grep 'Windows hibernation and fast restarting' -A17
   Windows hibernation and fast restarting
       On  computers  which  can  be dual-booted into Windows or Linux,
       Windows has to be fully shut down  before  booting  into  Linux,
       otherwise the NTFS file systems on internal disks may be left in
       an inconsistent state and changes made by Linux may  be  ignored
       by Windows.

       So,  Windows may not be left in hibernation when starting Linux,
       in order to avoid inconsistencies. Moreover,  the  fast  restart
       feature  available on recent Windows systems has to be disabled.
       This can be achieved by issuing as an Administrator the  Windows
       command which disables both hibernation and fast restarting :

              powercfg /h off

       If  either Windows is hibernated or its fast restart is enabled,
       partitions on internal disks are forced to be mounted  in  read-
       only mode.

Для устранения/локализации ошибки
Не удалось подключить Том 320GB
Not authorized to perform operation

потребуется:
- Удалить из системы на p10-xfce-sysv пакет polkit-rule-udisks2-mount-1.2-alt1.noarch.rpm (и из образов xfce-sysv).
- Запустить X-терминал.
- Выполнить пользователем в X-терминале команду
udisksctl mount -b /dev/sdXY
где sdXY, файловая с Windows, выдающая в thunar на монтировании ошибку
Не удалось подключить Том 320GB
Not authorized to perform operation

- Полный вывод вместе с командой, сюда.

Дальше будет видно что делать.
Фишка выполнения монтирования через udisksctl в xfce-sysv:
В выводе, в xfce-sysv, в строке после AUTHENTICATING FOR, на Not authorized to perform operation, выведет имя запрашиваемого действия, которое с return polkit.Result.YES и используется как разрешение выполнения для правила для группы.

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 9 955
Re: Летние стартеркиты p10 (20220612)
« Ответ #24 : 02.10.2022 23:14:02 »
Комментарий получился довольно большой простынёй. И если такая простыня кому-то не понравится, мне строго пофигу. Не нравится?, - не ешь.
В комментарии бегло, но достаточно, рассморена внутренняя системная логика xfce-sysv.
Для облегчения локализации, решения аналогичных проблем и администрирования в xfce-sysv.