Я установил свой самый первый сервер Ubuntu и сразу вошел в систему (как myuser
), чтобы начать его настройку. Я иду в /opt
и запускаю mkdir sandbox
.
mkdir: невозможно создать каталог «песочница»: разрешение запрещено
Доступ запрещен?!? Хорошо. Поэтому я запускаю sudo -i
и ввожу пароль myuser
. Повторите команду mkdir
и вуаля! Каталог создан. Я выхожу
Я снова вхожу в систему как myuser
к /opt
и запускаю ls
: nothing! Нет видимых каталогов внутри /opt
! Какие!?!?
Так что я снова sudo с sudo -i
и снова запускаю ls
. Теперь он видит sandbox/
.
Я думаю, что мне не хватает фундаментальных знаний о Linux в отношении пользователей и корней. Во время настройки / настройки сервера он попросил меня создать пользователя, что я и сделал (myuser
). Я предполагал, что это также будет пользователь root (с полными правами администратора), поскольку это был не только пользователь, которого я создал во время установки, это самый первый пользователь в системе!
Так почему же myuser
не может:
- Создать каталоги вне
/home/myuser
без sudo-ing? - Просмотр каталогов, созданных в "режиме sudo"
Я также расплывчат в разнице между sudo
, su
и пользователем root
.
В конечном счете, в дополнение к полному пониманию этих основ, я хотел бы установить пакет серверного программного обеспечения в /opt/sandbox/
который может работать круглосуточно и взаимодействовать с локальной файловой системой. Теперь я не уверен, стоит ли устанавливать эти приложения при входе в систему просто как myuser
, sudoed как myuser
или как-то еще.
Эти серверы находятся в защищенной частной домашней сети, поэтому мне не нужны "настоящие администраторы" и сумасшедшие меры безопасности. Я просто настраиваю простую среду разработки для небольшого программного инструмента, который пишу. Заранее спасибо за любую помощь с вопросами выше.