как откатывать поврежденные полномочия в 14,04?

Я запускаю Ubuntu 14.04.3 32bit ОС. Несколько месяцев назад я хотел установить QTCAM из источника, которого он требует systemd файлам библиотеки. Поскольку Вы знаете, что 14,04 Ubuntu еще не используют systemd, таким образом, поскольку автор сказал, что я скомпилировал и установил systemd218 версию его.
Я установил префикс локальный путь, чтобы не испортить конфигурацию системы. Я скомпилировал и установил его. На следующей начальной загрузке этому не удалось войти в систему сеанса пользователя по умолчанию. Этому не удалось получить доступ к ~/.cache каталог. Когда я удаляю его путем входа текстового режима затем, я могу войти в систему сеанса пользователя по умолчанию. После входа в систему я попробовал много вещей зафиксировать его. Я сделал sudo make uninstall от systemd218 исходной папки, надеясь, что это откатывало бы изменения, но ничего не произошло.

Я переустановил связанные пакеты всего pam. Я работал sudo pam-auth-update решить проблемы авторизации.

Я посетил много форумов, и прочитайте отчеты об ошибках. Хотя моя проблема произошла от бывшей известной причины, я встретил много подобных признаков без общей фиксации.

Я нашел совместно использованные библиотеки установленными systemd218 в systemd218 исходном каталоге как

find -name  *.so
./.libs/id128.so
./.libs/_journal.so
./.libs/_reader.so
./.libs/libgudev-1.0.so
./.libs/_daemon.so
./.libs/login.so
./.libs/libsystemd.so
./.libs/pam_systemd.so
./.libs/libudev.so

и переустановленный каждый пакет содержит тех, которые от синаптического.

Я также определил местоположение conf файлов, они - партии.

find -name  *.conf
./sysusers.d/basic.conf
./sysusers.d/systemd.conf
./sysusers.d/systemd-remote.conf
./src/timesync/timesyncd.conf
./src/core/org.freedesktop.systemd1.conf
./src/core/system.conf
./src/core/user.conf
./src/journal-remote/journal-upload.conf
./src/journal-remote/journal-remote.conf
./src/resolve/org.freedesktop.resolve1.conf
./src/resolve/resolved.conf
./src/locale/org.freedesktop.locale1.conf
./src/login/logind.conf
./src/login/org.freedesktop.login1.conf
./src/hostname/org.freedesktop.hostname1.conf
./src/bootchart/bootchart.conf
./src/udev/udev.conf
./src/journal/coredump.conf
./src/journal/journald.conf
./src/machine/org.freedesktop.machine1.conf
./src/timedate/org.freedesktop.timedate1.conf
./test/bus-policy/hello.conf
./test/bus-policy/methods.conf
./test/bus-policy/test.conf
./test/bus-policy/signals.conf
./test/bus-policy/check-own-rules.conf
./test/bus-policy/ownerships.conf
./test/bus-policy/many-rules.conf
./sysctl.d/50-default.conf
./sysctl.d/50-coredump.conf
./factory/etc/nsswitch.conf
./tmpfiles.d/var.conf
./tmpfiles.d/etc.conf
./tmpfiles.d/x11.conf
./tmpfiles.d/systemd-nologin.conf
./tmpfiles.d/tmp.conf
./tmpfiles.d/systemd.conf
./tmpfiles.d/legacy.conf
./tmpfiles.d/systemd-remote.conf

Большинство важных должно быть правилами udev. Я думаю, что один из них повредил мою систему.

find -name  *.rules 
./src/login/71-seat.rules
./src/login/73-seat-late.rules
./src/login/70-uaccess.rules
./src/login/70-power-switch.rules
./src/vconsole/90-vconsole.rules
./rules/60-persistent-serial.rules
./rules/60-persistent-alsa.rules
./rules/80-net-setup-link.rules
./rules/61-accelerometer.rules
./rules/50-udev-default.rules
./rules/60-persistent-input.rules
./rules/80-drivers.rules
./rules/60-persistent-storage-tape.rules
./rules/75-probe_mtd.rules
./rules/75-tty-description.rules
./rules/70-mouse.rules
./rules/60-cdrom_id.rules
./rules/95-udev-late.rules
./rules/60-drm.rules
./rules/42-usb-hid-pm.rules
./rules/75-net-description.rules
./rules/99-systemd.rules
./rules/60-persistent-v4l.rules
./rules/60-keyboard.rules
./rules/64-btrfs.rules
./rules/60-persistent-storage.rules
./rules/78-sound-card.rules

Это имеет много других symptomps, такие как:

  • Приложения Gui не запрашивают поднятые полномочия ввести пароль. Например, когда я нажимаю тип учетной записи-> кнопка изменения настроек в users-admin окно ничего не происходит (gksu выполнения хорошо)
  • Наутилус не монтирует разделы, когда я нажимаю их на список устройств. Я "Не разрешен выполнить операцию" ошибка.
  • Фоновое изображение Lightdm не может обновить согласно пользовательским обоям.
  • Когда я нажимаю раздел информации о nm-апплете, я не получаю "Активных соединений, найденных" ошибка, хотя сеть соединяется автоматически.
  • Я не могу перезагрузить без полномочий пользователя root, которые должны перезагрузить без sudo со следующей командой:

      dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart
    

Я добираюсь

      org.freedesktop.ConsoleKit.Manager.NotPrivileged: Not Authorized error.

Мне нравится моя настольная сессия, я не хочу переустанавливать целую систему. Хотя это неудобно для ввода полномочий пользователя root запустить некоторые приложения, я могу жить с ним, если один из умных парней не находит решение.

Править:

 dpkg -l | grep 'pol.*kit'
 ii  gir1.2-polkit-1.0                                           0.105-4ubuntu3.14.04.1                                   i386         GObject introspection data for PolicyKit
 ii  libpolkit-agent-1-0:i386                                    0.105-4ubuntu3.14.04.1                                   i386         PolicyKit Authentication Agent API
 ii  libpolkit-backend-1-0:i386                                  0.105-4ubuntu3.14.04.1                                   i386         PolicyKit backend API
 ii  libpolkit-gobject-1-0:i386                                  0.105-4ubuntu3.14.04.1                                   i386         PolicyKit Authorization API
 ii  libpolkit-qt-1-1                                            0.103.0-1ubuntu1                                         i386         PolicyKit-qt-1 library
 ii  plainbox-secure-policy                                      0.5.3-2                                                  all          policykit policy required to use plainbox (secure version)
 ii  policykit-1                                                 0.105-4ubuntu3.14.04.1                                   i386         framework for managing administrative policies and privileges
 ii  policykit-1-gnome                                           0.105-1ubuntu4                                           i386         GNOME authentication agent for PolicyKit-1
 ii  policykit-desktop-privileges                                0.17                                                     all          run common desktop actions without password

EDIT2: Поскольку Steeldriver интуитивно привел меня на правильном пути

   /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1

сбои для запуска:

   /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1 

   (polkit-gnome-authentication-agent-1:10331): Gtk-WARNING **: Theme parsing error: unity.css:111:9: 'shade' is not a valid property name 

   (polkit-gnome-authentication-agent-1:10331): polkit-gnome-1-WARNING **: Unable to determine the session we are in: No session for pid 10331

Я использую lightdm менеджера по оформлению и сессию каирского прикрепления гнома.

Я пытался работать exec gnome-session & в терминале, который дает мне больше ключа к разгадке.

Я получил следующий вывод:

   (gnome-session:23129): Gtk-WARNING **: Theme parsing error: unity.css:111:9: 'shade' is not a valid property name 

   (gnome-session-check-accelerated:23133): Gtk-WARNING **: Theme parsing error: unity.css:111:9: 'shade' is not a valid property name 
   gnome-session[23129]: WARNING: Could not get session id for session. Check that logind is properly installed and pam_systemd is getting used at login.

Править: 3

Я добавляю /etc/pam.d/* файлы. Я думал sudo pam-auth-update --force исправил бы pam конфигурацию, но когда я изменяю umask=0022 кому: umask=022 в /etc/pam.d/common-session это не заметило модификацию и не выдало предупреждения.

$ grep '^[^#]' /etc/pam.d/common-auth | sed 's/^/    /' 
auth    [success=3 default=ignore]  pam_unix.so nullok_secure
auth    [success=2 default=ignore]  pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass
auth    [success=1 default=ignore]  pam_ldap.so minimum_uid=1000 use_first_pass
auth    requisite           pam_deny.so
auth    sufficient      pam_usb.so
auth    required            pam_permit.so
auth    optional    pam_mount.so 
auth    optional            pam_smbpass.so migrate
auth    optional            pam_cap.so 


$ grep '^[^#]' /etc/pam.d/common-account  | sed 's/^/    /' 
account [success=2 new_authtok_reqd=done default=ignore]    pam_unix.so 
account [success=1 new_authtok_reqd=done default=ignore]    pam_winbind.so 
account requisite           pam_deny.so
account required            pam_permit.so
account [success=ok new_authtok_reqd=done ignore=ignore user_unknown=ignore authinfo_unavail=ignore default=bad]    pam_ldap.so minimum_uid=1000


$ grep '^[^#]' /etc/pam.d/common-session  | sed 's/^/    /' 
session [default=1]         pam_permit.so
session requisite           pam_deny.so
session required            pam_permit.so
session optional            pam_umask.so    umask=0022
session required                pam_unix.so try_first_pass  nullok_secure 
session required    pam_unix.so 
session optional            pam_winbind.so 
session optional    pam_mount.so 
session [success=ok default=ignore] pam_ldap.so minimum_uid=1000
session optional    pam_systemd.so 
session optional            pam_ck_connector.so nox11


$ grep '^[^#]' /etc/pam.d/common-password |   sed 's/^/    /' 
password    [success=3 default=ignore]  pam_unix.so obscure sha512
password    [success=2 default=ignore]  pam_winbind.so use_authtok try_first_pass
password    [success=1 default=ignore]  pam_ldap.so minimum_uid=1000 try_first_pass
password    requisite           pam_deny.so
password    required            pam_permit.so
password    optional            pam_smbpass.so nullok use_authtok use_first_pass
password    optional    pam_gnome_keyring.so 

Признаки и предлагаемые решения почти идентичны этой ошибке

один из парней там требует того добавления

 session         required        pam_loginuid.so
 session         required        pam_systemd.so

строки к /etc/pam.d/lightdm исправляет ошибку. Я попробовал его, но это повреждает lightdm, я даже не мог войти в систему с ним.

$ grep '^[^#]' /etc/pam.d/lightdm |   sed 's/^/    /' 
auth    requisite       pam_nologin.so
auth    sufficient      pam_succeed_if.so user ingroup nopasswdlogin
@include common-auth
auth    optional        pam_gnome_keyring.so
auth    optional        pam_kwallet.so
@include common-account
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close
session required        pam_limits.so
@include common-session
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
session optional        pam_gnome_keyring.so auto_start
session optional        pam_kwallet.so auto_start
session required        pam_env.so readenv=1
session required        pam_env.so readenv=1 user_readenv=1 envfile=/etc/default/locale
@include common-password

Править: 4

Сегодня, когда я видел udev и обновления systemd в пакете, я думал, что был благословлен, думая, что обновление решит проблему, но к сожалению ничто не изменилось.

Вот обновленные пакеты:

gir1.2-gudev-1.0 (1:204-5ubuntu20.17) to 1:204-5ubuntu20.18
libgudev-1.0-0 (1:204-5ubuntu20.17) to 1:204-5ubuntu20.18
libgudev-1.0-dev (1:204-5ubuntu20.17) to 1:204-5ubuntu20.18
libpam-systemd (204-5ubuntu20.17) to 204-5ubuntu20.18
libsystemd-daemon-dev (204-5ubuntu20.17) to 204-5ubuntu20.18
libsystemd-daemon0 (204-5ubuntu20.17) to 204-5ubuntu20.18
libsystemd-id128-0 (204-5ubuntu20.17) to 204-5ubuntu20.18
libsystemd-id128-dev (204-5ubuntu20.17) to 204-5ubuntu20.18
libsystemd-journal0 (204-5ubuntu20.17) to 204-5ubuntu20.18
libsystemd-login-dev (204-5ubuntu20.17) to 204-5ubuntu20.18
libsystemd-login0 (204-5ubuntu20.17) to 204-5ubuntu20.18
libudev-dev (204-5ubuntu20.17) to 204-5ubuntu20.18
libudev1 (204-5ubuntu20.17) to 204-5ubuntu20.18
python-systemd (204-5ubuntu20.17) to 204-5ubuntu20.18
systemd-services (204-5ubuntu20.17) to 204-5ubuntu20.18
udev (204-5ubuntu20.17) to 204-5ubuntu20.18

Так, какова могла бы быть проблема?

Править: 5

Сегодня я заметил, что после того, как проблема возникла, когда я пытался установить больше разрешающего авторства, я неправильно испортил владение в /etc/polkit-1/localauthority Я вышел sudo chown -R 777 /etc/polkit-1 вместо sudo chmod -R 755 /etc/polkit-1 . Я установил его на sudo chown root:root -R /etc/polkit-1 сегодня.

По тому, как я заметил это /usr/lib/policykit-1-gnome/polkit-gnome-authentication-agent-1 не настолько важно. Я даже удалил пакет, который содержит его (policykit-1-gnome). Я протестировал, если это сделало какое-либо изменение, ничто не изменилось. Затем я удалил consolekit видеть функцию его, когда я удалил его склонный - переустанавливается policykit-1-gnome, berevity consolekit не имеет никакого эффекта на решение проблемы аутентификации, которую я имею также.

Я не знаю, важно ли это, вот pam-auth-update список:

 │    [*] Unix authentication                                                       
 │    [*] Winbind NT/Active Directory authentication   
 │    [*] Mount volumes for user                                              
 │    [*] LDAP Authentication                                                       
 │    [*] Register user sessions in the systemd control group hierarchy  
 │    [*] SMB password synchronization                                               
 │    [*] GNOME Keyring Daemon - Login keyring management  
 │    [*] ConsoleKit Session Management                                 
 │    [*] Inheritable Capabilities Management                  

Править: 6

Я начинаю думать, что это не имеет никакого отношения к моей модификации к файловой системе. Я заметил, что новомодное задание не работает. Это может быть связано с выскочкой-> systemd переход процесса init?

Поскольку

 echo $UPSTART_SESSION

и

 initctl list-sessions

пустая строка возвратов.

Интересно как мои начальные загрузки системы?

1
задан 31 January 2016 в 16:45

1 ответ

Ubuntu живые медиа имеет функцию переустановки.

Начальная загрузка живой CD или USB и начинают установку. Выберите опцию установить обновления пакета во время установки. В конечном счете Вы встретитесь с вопросом, спрашивающим, хотите ли Вы "Переустановить Ubuntu". Выбор той опции заставит установщик попытаться не стереть Вашу существующую систему.

0
ответ дан 29 September 2019 в 13:44

Другие вопросы по тегам:

Похожие вопросы: