Как я могу перечислить всех суперпользователей?

Хорошо, я собираюсь расстаться с предположением, что у вас уже есть ядро ​​3.11-GIT и есть r6xx-SI или более новая карта ATI. Оттуда вам нужно добавить radeom.dpm=1 в качестве параметра модуля ядра, и DPM должен быть активирован.

Он может быть либо в параметре GRUB, в файле /etc/default/grub записать

GRUB_CMDLINE_LINUX_DEFAULT="quiet radeon.dpm=1"
sudo update-grub

Или в файле .conf в вашем каталоге /etc/modprobe:

sudo su -
touch /etc/modprobe.d/radeon-dpm.conf
echo options radeon dpm=1 > /etc/modprobe.d/radeon-dpm.conf 
cat /etc/modprobe.d/radeon-dpm.conf 
# will output "options radeon dpm=1"

Цитата из источников:

Драйвер AMD Radeon, наконец, имеет динамическую мощность поддержка управления! Для графических процессоров Radeon основные часы и часы памяти будут динамически регулироваться (вместе с напряжением) на основе нагрузки, это работает для конфигурации с несколькими мониторами, и это почти соответствует характеристикам PowerPlay и функциям драйвера AMD Catalyst. Это большой выигрыш в экономии энергии / аккумулятора при использовании драйвера Radeon Linux с открытым исходным кодом, а также улучшенная производительность для более новых графических процессоров с тактовой частотой загрузки, которая ниже их номинальных частот. Эта поддержка возвращается к графическим процессорам Radeon HD 2000 (R600), но по умолчанию она не включена по умолчанию, но требует установки radeon.dpm = 1.

Источники:

http://lists.freedesktop.org/archives/dri-devel/2013-June/040436.html http://www.phoronix.com/scan .php? page = article & amp; item = amd_radeon_dpm & amp; num = 1 http://www.phoronix.com/scan.php?page=news_item&px=MTQwNjA http://www.phoronix.com/scan.php?page = article & amp; item = amd_dpm_preview & amp; num = 1
1
задан 14 May 2015 в 08:24

5 ответов

Как было сказано здесь, я рассматриваю самый простой способ обнаружить с помощью -l & amp; -U, просто введите users, который будет отображаться, например: John, затем:

Если у пользователя есть доступ sudo, он будет печатать уровень доступа sudo для этого конкретного user:

  sudo -l -U John
  User John may run the following commands on this host:
     (ALL : ALL) ALL

Если у пользователя нет доступа sudo, он будет печатать, что пользователю не разрешено запускать sudo на localhost:

   sudo -l -U John
   User John is not allowed to run sudo on localhost.
24
ответ дан 23 May 2018 в 21:13
  • 1
    Вы можете прокрутить всех обычных пользователей и вернуть данные на них, используя что-то вроде : for u in $(awk -F'[/:]' '{if($3>=1000&&$3!=65534) print $1}' /etc/passwd); do sudo -lU "$u" ; done. быстрый взлом ничего не гарантировал :) – Wilf 8 June 2015 в 23:09
  • 2
    Это также работает в активной настройке каталога. Например, вы можете выбрать пользователя из определенной группы и проверить пользователя. Если вы добавили группу AD правильно, то, как "%domain admins@mycompany.intra" ALL=(ALL) ALL, она работает. Вы спасли меня много времени, потому что я не знал, что это работает и для нелокальных пользователей. – AdamKalisz 26 May 2017 в 13:11

Как уже было сказано, ответ можно найти в Unix & amp; Linux Stack Exchange:

Это показывает, что пользователь «saml» является членом группы колес.
$ getent group wheel
wheel:x:10:saml

Единственное отличие состоит в том, что группа в Ubuntu не wheel, а sudo (или admin в более старых версиях Ubuntu). Таким образом, команда становится:

getent group sudo
10
ответ дан 23 May 2018 в 21:13

Расширение теста sudo -l -U позволяет использовать getent passwd для определения пользователей, которые могут использовать sudo. Использование getent позволяет нам получать доступ к пользователям, которые не могут присутствовать в файле passwd, например, пользователи LDAP:

getent passwd | cut -f1 -d: | sudo xargs -L1 sudo -l -U | grep -v 'not allowed'

sudo -U не возвращает ненулевое значение выхода, которое мы могли бы воспользоваться преимуществами, поэтому мы сводимся к grepping вывода.

6
ответ дан 23 May 2018 в 21:13
  • 1
    Это лучший ответ, потому что он не предполагает, что существует группа, называемая sudo. – Simon Woodside 14 March 2017 в 10:15

Эта команда возвращает список пользователей с правами sudo:

awk -F ":" '{ system("groups " $1 " | grep -P \"[[:space:]]sudo([[:space:]]|$)\"") }' /etc/passwd

Выход (например):

<username> : <username> adm cdrom sudo dip plugdev lpadmin sambashare docker

Если отображается только имя пользователя, то эта команда:

awk -F ":" '{ system("groups " $1 " | grep -P \"[[:space:]]sudo([[:space:]]|$)\"") }' | awk -F ":" '{ print $1 }' /etc/passwd
1
ответ дан 23 May 2018 в 21:13

В большинстве Unix-подобных систем, которые имеют команду sudo и имеют файл конфигурации sudo; run visudo как root:

:~$ sudo bash

или

:~$ su

:~# visudo

позволит администратору проверять и изменять привилегии групп, которые могут использовать команду sudo.

В Unix-подобных системах, базирующихся на Debian, таких как Ubuntu, группы 4 и 27 обычно имеют права доступа к привилегиям sudo.

Группа 4 - это группа администраторов (adm) и группа 27 - это sudo gid.

Чтобы узнать, какие пользователи в настоящее время назначены этим группам, укажите файл / etc / group, как показано ниже:

:~$ cat /etc/group

Примерный вывод на Ubuntu (но не основанные на Redhat, основанные на Oracle Solaris / Solaris или BSD):

adm:x:4:youruser
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9: 
uucp:x:10:
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:
fax:x:21:
voice:x:22:
cdrom:x:24:youruser,mybrother
floppy:x:25:
tape:x:26:
sudo:x:27:youruser,mybrother

Как мы можем сказать, ваш администратор является администратором системы и членом группы 4 ( ADM). Но youruser и mybrother являются членами группы 27, которая является gid (групповой идентификацией) номером группы sudo. Таким образом, mybrother также может получить привилегии root (суперпользователь).

Многие системы Linux, такие как Fedora и Slackware, включают группу колес gid = 10. Это разрешает административные привилегии при применении команды sudo. В системах на базе BSD (например, FreeBSD) пользователь root является членом группы колес, которая является gid 0.

Также, используя команду id, любой пользователь может найти информацию о группе другого известного пользователя для

Пример:

:~$ id mybrother

Пример вывода

uid=1001(mybrother) gid=1001(mybrother) groups=1001(mybrother),24(cdrom),27(sudo),30(dip),46(plugdev),108(lpadmin),124(sambashare)
0
ответ дан 23 May 2018 в 21:13

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

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