Ubuntu та права адміністратора втрата та здобуття - Наш Блогосайт Linux та «лірика»

— А пішли ви все назад: і внучка, і Жучка, і ручка, і фея! А про шарманку і забув…Стара готична казка

Нещодавно, займаючись налаштуванням віртуальних машин Ubuntu у VirtualBox'і, я з подивом виявив, що в цьому дистрибутиві немає простого способу включити користувача в будь-яку додаткову групу. Точніше, такого способу не передбачено ніПараметрах системи, ні в Ubity Tweek Tool. У штатних налаштуваннях можна лише змінити мову, пароль та увімкнути автоматичний вхід до системи:

здобуття
А в напівштатному твікері я взагалі не знайшов нічого, що стосується управління користувачами та групами.

Звичайно, це не велике лихо, оскільки в будь-якій Linux-системі є спеціальна утиліта usermod , яка, в тому числі, дозволяє і змінити групову приналежність користувача - як змінити його основну групу (якщо це потрібно було), так і приписати його до довільній кількості додаткових груп. Робиться це так:

Так ось, знадобилося мені включити себе, коханого, до гостьової Ubuntu до групи vboxsf для доступу до каталогу на хост-машині. Ось тут і таїлася моя загибель, бо, давши команду

я зовсім забув про опцію -a , внаслідок чого був із ганьбою вигнаний із усіх груп, у яких перебував раніше (крім зазначеної як значення опції -G ). У тому числі й із групи власної первинної групи. А що ще сумніше — із групи adm, яка є найважливішою для першого користувача у системі. Тому що саме вона дає право отримувати адміністративні привілеї за командою sudo. І в результаті я втратив можливість простим способом повернути все назад.

Проте впоратися з цим невдачею не так складно. Теоретично для цьоготреба при перезавантаженні системи, відразу після виходу з BIOS'а, швидко-швидко натиснутиEscape, щоб отримати доступ до меню GRUB'а, вибрати там додаткові опції завантаження, а в них - пунктrecovery mode :

права
Щоправда, в русифікованих Ubuntu 15.04 і 15.10 картина після цього буде дещо сюрреалістичною. Втім, упізнати в цій китайській грамоті пункт зі словомroot, написаним латиницею, труднощів не складе:

ubuntu
Після чого ми, без жодного пароля та іншої ідентифікації, опиняємося в командному рядку шелла з правами адміністратора. Де спочатку потрібно перемонтувати кореневу файлову систему в режим запису (за замовчуванням вона змонтована тільки для читання):

І дати вже правильні команди для визначення своєї групової приналежності, спочатку основної:

До речі сказати, саме таким чином можна і просто поміняти свою первинну групи, наприклад, на users, для однаковості з більшістю інших дистрибутивів Linux - це може мати сенс за наявності на машині (реальної) кількох систем, з яких необхідний доступ до одних і тих ж даними. Хоча це й не обов'язково — це завдання вирішується й іншими способами.

А тепер повторити команду, акуратно перерахувавши всі потрібні групи (головне, не забувши шарманку групу adm і опцію -a):

Тепер командою exit можна повернутися в менюrecovery mode і вибрати в ньому пункт перший, що містить чарівне словоresume :

блогосайт
Саме в такий спосіб треба діяти за умов реальності. У віртуальній же машині більш простим способом може бути підключення інсталяційного диска Ubuntu (або майже будь-якого іншого Live-образу) як віртуальний оптичний привод з вибором при завантаженні пунктуTry Ubuntu. Після чого монтується (у файловомуменеджера) коренева файлова система віртуальної машини і дається команда зміни кореня:

Сам UUID можна підглянути в каталозі /media/ubuntu/ або визначити безпосередньо:

А тепер залишається тільки дати наведену вище послідовність команд usermod і перезавантажитись звичайним чином. Не забувши, зрозуміло, заздалегідь від'єднавши віртуальний Live-носій.