Esoteric :) Журнал ошибок в Ubuntu 17.10

Я обновил Ubuntu с 17.04 по 17.10. Я столкнулся с двумя проблемами: -

1. Поскольку это обновление было произведено в журнале ошибок:

Не удалось установить «network-manager-openvpu». Subprocess установил пост-установочный скрипт, возвратил статус выхода 1 не смог установить «geoclue-2.0». Subprocess, сценарий установки возвратил статус выхода ошибки 1 Обновление было прервано. Ваша система может находиться в непригодном состоянии. Теперь будет выполнено восстановление (dpkg --config -a), но были ошибки во время процесса обновления

1. По мере обновления были созданы журналы ошибок:

Не удалось установить «network-manager-openvpu». Subprocess установил послеустановочный скрипт, возвратил статус выхода 1 (! D4) [ ! d10]

Приложение

Я сделал

sudo apt autoremove

, затем этот

sudo apt install --fix-missing Reading package lists... Done Building dependency tree Reading state information... Done 0 to upgrade, 0 to newly install, 0 to remove and 0 not to upgrade. 4 not fully installed or removed. After this operation, 0 B of additional disk space will be used. Setting up gdm3 (3.26.1-3ubuntu3) ... addgroup: No GID is available in the range 100-999 (FIRST_SYS_GID - LAST_SYS_GID). addgroup: The group `gdm' was not created. dpkg: error processing package gdm3 (--configure): subprocess installed post-installation script returned error exit status 1 Setting up geoclue-2.0 (2.4.7-1ubuntu1) ... addgroup: No GID is available in the range 100-999 (FIRST_SYS_GID - LAST_SYS_GID). addgroup: The group `geoclue' was not created. dpkg: error processing package geoclue-2.0 (--configure): subprocess installed post-installation script returned error exit status 1 dpkg: dependency problems prevent configuration of empathy: empathy depends on geoclue-2.0 (>= 2.0); however: Package geoclue-2.0 is not configured yet. dpkg: error processing package empathy (--configure): dependency problems - leaving unconfigured No apport report written because the error message indicates it's a follow-up error from a previous failure. dpkg: dependency problems prevent configuration of ubuntu-desktop: ubuntu-desktop depends on gdm3; however: Package gdm3 is not configured yet. dpkg: error processing package ubuntu-desktop (--configure): dependency problems - leaving unconfigured No apport report written because MaxReports has already been reached Errors were encountered while processing: gdm3 geoclue-2.0 empathy ubuntu-desktop E: Sub-process /usr/bin/dpkg returned an error code (1)
0
задан 23 November 2017 в 21:39

2 ответа

Удалить некоторые ненужные группы

Шаг 1 - Полное резервное копирование системы

Команды в этом ответе могут привести к хаосу вашей системы. Сделайте полную резервную копию системы с помощью предпочтительного метода. Подтвердить / проверить эту резервную копию. Защитите свои резервные копии, чтобы следующие шаги не могли нанести им вред. Дополнительные сведения о резервных копиях см. В Ubuntu Community Wiki - BackupYourSystem. Я бы порекомендовал Clonezilla для однократного резервного копирования os и пользовательских данных. Но при переходе резервных копий я использую Borg Backup.

Шаг 2 - выбор групп и пользователей для удаления

Запуск getent group | egrep \:[1-9][0-9][0-9]\: отобразит группы в диапазоне 100-999. Из этого списка обратите внимание на минимум 10 нежелательных групп, связанных с гостевыми аккаунтами. У них не должно быть ни одного пользователя, включенного в группу, а также не должны быть программами, которые в настоящее время установлены. Следующий блок кода показывает, что четвертое поле содержит пользователей в этой группе. Из этих немногих только самбашаре есть пользователь. Проблема в том, что только «гостевые» группы.

saned:x:122: uuidd:x:123: sambashare:x:124:jon ssh:x:125: geoclue:x:126: guest-262uVu:x:127: guest-qAD7pX:x:128: guest-H1HJgy:x:129: guest-fbfgab:x:130: guest-LdeNZx:x:131: guest-jIHtqC:x:132: guest-w7GINW:x:133:

Шаг 3 - Удаление нежелательных групп

В следующих командах замените <NEWGID> на группу для хранения любых остаточных файлов. Вы можете либо использовать существующую группу, либо новую группу. Также замените <OLDGID> группой, которую нужно удалить. Выполняйте команды один раз для каждой группы, которую нужно удалить. Если вы не хотите, чтобы какой-либо из файлов из старых групп запускал потенциально очень вредную команду find / -group <OLDGID> -exec rm {} \;. Если вам все равно, кто может получить файлы удаленных групп, вы можете просто запустить delgroup --only-if-empty <OLDGID>.

find / -group <OLDGID> -exec rm {} \; find / -group <OLDGID> -exec chgrp -h <NEWGID> {} \; delgroup --only-if-empty <OLDGID> # example using random groups find / -group 200 -exec chgrp -h 2000 {} \; delgroup --only-if-empty 200

Шаг 4 - Очистить

Запустить sudo dpkg --configure -a до завершить настройку распакованных пакетов.

Сценарий bash, охватывающий шаги 2-4. Откройте текстовый редактор, скопируйте и запустите следующий блок кода. Сохраните файл как guest.sh. В терминале перейдите к месту сохранения guest.sh. запустите chmod +x guest.sh, чтобы сделать исполняемый файл. Затем запустите ./guest.sh.

#!/bin/bash TEMP=$(mktemp --tmpdir) getent group | grep guest- | cut --delimiter=: -f 3 > "$TEMP" NGID=$(head -n1 "$TEMP") GIDS=$(grep -v "$NGID" "$TEMP" | tr '\n' ' ') for i in $GIDS do find / -group "$i" -exec chgrp -h "$NGID" {} \; delgroup --only-if-empty "$i" done rm "$TEMP" sudo dpkg --configure -a
0
ответ дан 18 July 2018 в 02:45

Удалить некоторые ненужные группы

Шаг 1 - Полное резервное копирование системы

Команды в этом ответе могут привести к хаосу вашей системы. Сделайте полную резервную копию системы с помощью предпочтительного метода. Подтвердить / проверить эту резервную копию. Защитите свои резервные копии, чтобы следующие шаги не могли нанести им вред. Дополнительные сведения о резервных копиях см. В Ubuntu Community Wiki - BackupYourSystem. Я бы порекомендовал Clonezilla для однократного резервного копирования os и пользовательских данных. Но при переходе резервных копий я использую Borg Backup.

Шаг 2 - выбор групп и пользователей для удаления

Запуск getent group | egrep \:[1-9][0-9][0-9]\: отобразит группы в диапазоне 100-999. Из этого списка обратите внимание на минимум 10 нежелательных групп, связанных с гостевыми аккаунтами. У них не должно быть ни одного пользователя, включенного в группу, а также не должны быть программами, которые в настоящее время установлены. Следующий блок кода показывает, что четвертое поле содержит пользователей в этой группе. Из этих немногих только самбашаре есть пользователь. Проблема в том, что только «гостевые» группы.

saned:x:122: uuidd:x:123: sambashare:x:124:jon ssh:x:125: geoclue:x:126: guest-262uVu:x:127: guest-qAD7pX:x:128: guest-H1HJgy:x:129: guest-fbfgab:x:130: guest-LdeNZx:x:131: guest-jIHtqC:x:132: guest-w7GINW:x:133:

Шаг 3 - Удаление нежелательных групп

В следующих командах замените <NEWGID> на группу для хранения любых остаточных файлов. Вы можете либо использовать существующую группу, либо новую группу. Также замените <OLDGID> группой, которую нужно удалить. Выполняйте команды один раз для каждой группы, которую нужно удалить. Если вы не хотите, чтобы какой-либо из файлов из старых групп запускал потенциально очень вредную команду find / -group <OLDGID> -exec rm {} \;. Если вам все равно, кто может получить файлы удаленных групп, вы можете просто запустить delgroup --only-if-empty <OLDGID>.

find / -group <OLDGID> -exec rm {} \; find / -group <OLDGID> -exec chgrp -h <NEWGID> {} \; delgroup --only-if-empty <OLDGID> # example using random groups find / -group 200 -exec chgrp -h 2000 {} \; delgroup --only-if-empty 200

Шаг 4 - Очистить

Запустить sudo dpkg --configure -a до завершить настройку распакованных пакетов.

Сценарий bash, охватывающий шаги 2-4. Откройте текстовый редактор, скопируйте и запустите следующий блок кода. Сохраните файл как guest.sh. В терминале перейдите к месту сохранения guest.sh. запустите chmod +x guest.sh, чтобы сделать исполняемый файл. Затем запустите ./guest.sh.

#!/bin/bash TEMP=$(mktemp --tmpdir) getent group | grep guest- | cut --delimiter=: -f 3 > "$TEMP" NGID=$(head -n1 "$TEMP") GIDS=$(grep -v "$NGID" "$TEMP" | tr '\n' ' ') for i in $GIDS do find / -group "$i" -exec chgrp -h "$NGID" {} \; delgroup --only-if-empty "$i" done rm "$TEMP" sudo dpkg --configure -a
0
ответ дан 24 July 2018 в 17:38
  • 1
    Спасибо, это превосходно. Расскажите, пожалуйста, о replace <NEWGID> with a group to hold any residual files - если это будет новая группа или существующая группа. Какую команду следует использовать, если я не хочу, чтобы группа сохраняла какие-либо остаточные файлы - я мог бы использовать только delgroup --only-if-empty <OLDGID>? – jam 24 November 2017 в 22:00
  • 2
    Сделайте полную резервную копию системы с помощью вашего предпочтительного метода. Подтвердить / проверить эту резервную копию. Защитите свои резервные копии, чтобы следующие шаги не могли нанести им вред . == Что вы предлагаете, если я новичок? Должен ли я также использовать ручной USB, если файл резервной копии не может быть найден? – jam 24 November 2017 в 22:07
  • 3
    Что это значит find / -group 200 -exec chgrp -h 2000 {} \; delgroup --only-if-empty 200? – jam 25 November 2017 в 02:51
  • 4
    Первая строка - пример использования файлов find, принадлежащих gid 200 в пути /, а затем для каждого найденного файла execute chgrp. chgrp изменяет файл, принадлежащий gid 2000. Вторая строка запускает delgrop, чтобы удалить группу 200, но только если в ней нет пользователей. Группы, используемые в приведенных выше командах, выбирались случайным образом, чтобы их можно было использовать в качестве примера. – J. Starnes 25 November 2017 в 09:33
  • 5
    / etc / groups file link – jam 30 November 2017 в 02:36

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

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