Сервер Ubuntu перестал работать в более высоком разрешении

Почему для чтения устройства требуются права администратора?

Во-первых, здесь возникает пара проблем

  1. монтирование физического запоминающего устройства и разделов, которые оно содержит.
  2. Доступ к файлам на нем и управление ими.

Если файловая система основана на разрешениях, например ext2,3,4, тогда разрешения определяются для каждого файла.

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

  1. Это предотвращает чтение вредоносных программ После монтирования диска вся коллекция ненадежных программ теперь потенциально доступна для выполнения, что может нарушить работу операционной системы. Если бы вы администрировали эту систему, вы могли бы быть более уверены в том, что этого не произойдет, если бы случайные пользователи не могли загружать свои собственные программы со своих дисков.
  2. Запись / сохранение конфиденциальных секретных данных Если у вас есть корпоративные секреты или пароли пользователей в системе, и кто-то может подключить неавторизованное запоминающее устройство, он может сделать на него копии.

Вы можете обойти проблему sudo, запустив весь сценарий как sudo, а затем используя sudo , чтобы переключиться обратно на обычного пользователя внутри сценария для команд, которые вы не хотите запускать от имени пользователя root ( да, вы можете сделать это) например

файл: скрипт.sh

#!/bin/sh

# this dd command now works
dd if=<source> of=<target> bs=<byte size>

# normal cammand you want to run as "mathmaniac" user
sudo -u "MathManiac" bash -c "touch foo.bar" 

Затем вы запускаете этот скрипт с помощью:

sudo ./script.sh

Другой быстрый и грязный, но обычно не рекомендуемый способ - просто поместить sudo перед командой внутри скрипта, когда интерпретатор встречает sudo он остановит выполнение скрипта и попросит вас ввести пароль sudo перед продолжением.

0
05.08.2016, 18:40
1 ответ

с еще парой виртуальных машин я проследил проблему до того, как VMware добавила

svga.guestBackedPrimaryAware = "TRUE"

в файл VMX, что указывает на то, что VMware знает, что на виртуальной машине установлены инструменты VMware. Похоже, что когда этот флаг установлен, VMware не предоставляет более высокие разрешения через VBE, поэтому GRUB не может использовать более высокие разрешения. Удаление этой строки из файла VMX решает проблему для одной загрузки, но VMware добавляет ее обратно при выключении машины.

Такое поведение не возникает, если версия оборудования 10, но происходит 11 или 12. Чтобы навсегда решить проблему, удалите строку svga.guestBackedPrimaryAware = "TRUE" из файла VMX, и измените строку virtualHW.version = "11" или virtualHW.version = "12" на virtualHW.version = "10" .

2
29.04.2021, 00:11

Теги

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