'std :: bad_alloc' после ошибочного изменения / usr / permissions - PullRequest
0 голосов
/ 24 мая 2018

Я работаю на машине Linux с Ubuntu Bionic Beaver, выпуск 18.04.

На днях я по ошибке изменил каталог /usr/, чтобы он принадлежал пользователю, а не пользователю root.К сожалению, я сделал это рекурсивно, и поэтому немного испортил систему, потому что это также изменило права доступа suid для некоторых команд (например, passwd, sudo).Мы действительно не можем переустановить (ну, мы можем, но это будет стоить!), Поэтому я загрузился с LiveUSB и вручную изменил все правильные пользователя / группы / разрешения для каждого файла, который я мог идентифицировать, имел не-Root:RootГруппа пользователей.Я сделал это, сравнив вывод другого компьютера с Ubuntu ls -lha /usr/.

Кажется, что это в основном исправлено, но теперь я запускаю ошибку 'std :: bad_alloc' после запуска некоторых довольно стандартных скриптов на python.Странная часть этого в том, что это иногда возникает.Например, если я открою python из командной строки и скопирую и вставлю код, код будет работать без ошибок.Однако, если я запускаю весь скрипт из командной строки (например, python script.py), я получаю эту ошибку.Полное сообщение об ошибке:

terminate called after throwing an instance of 'std::bad_alloc' what(): std::bad_alloc Aborted (core dumped)

Но чтобы добавить еще один поворот - иногда я могу без проблем запустить тот же скрипт Python из командной строки, а в других я получаю эту ошибку каквыше.

Если у кого-то есть идеи относительно того, где конкретно искать, чтобы исправить это, это было бы здорово!Я собираюсь попробовать сделать то же самое, что и раньше, но с выходом ls -lha /usr/ из релиза 18.04, так как у меня был только выход из 16 релизов.

...