Исправлено: домашний каталог пользователя root - / root



Попробуйте наш инструмент устранения неполадок

Возможно, вы заметили ошибку, когда при вводе cd или cd ~ вы попадаете в / root вместо чего-то внутри каталога / home, которое, кажется, содержит домашние каталоги. Если вы получаете эту ошибку, значит, вы, вероятно, замечали ее каждый раз, когда работали в Linux как суперпользователь. Исправить это очень просто, потому что на самом деле это вообще не ошибка.

Скорее, это вызвано особенностями того, как Linux обрабатывает размещение домашнего каталога. Это ожидаемое поведение, но оно может сбивать с толку, если вы никогда не сталкивались с ним раньше.

Если вы наберете команды cd или cd ~ с терминала, вы вернетесь в свой домашний каталог независимо от того, где вы находитесь в иерархии каталогов Linux. Это верно, даже если вы находитесь в отдельном разделе или даже в совершенно другой внешней файловой структуре. Если вы когда-нибудь потеряете свое место во время лазания по каталогам, просто набрав cd, вы попадете прямо туда, где вы, скорее всего, начали в тот момент, когда открыли свой терминал.

В Linux домашним каталогом пользователя root является / home / root в некоторых избранных дистрибутивах, но обычно вы видите, что он находится в / root справа на верхнем уровне начала файловой структуры. Несмотря на то, что это настраиваемый, это ситуация в подавляющем большинстве дистрибутивов Linux. Попробуйте ввести команду cd / root как обычный пользователь терминала. Вы получите сообщение об ошибке «bash: cd / root: Permission denied», потому что это домашний каталог суперпользователя.

Теперь, когда вы это сделали, откройте графическое окно корневого терминала, набрав GKSU X-терминал-эмулятор на терминале. Вам будет предложено ввести пароль администратора, потому что это создает экземпляр командной строки с повышенными правами.

Многие дистрибутивы Linux, особенно основанные на Ubuntu, хешируют имя пользователя root, чтобы вы не могли войти в систему под ним. Если вы получаете такую ​​ошибку в Ubuntu или другом подобном дистрибутиве, эта команда все равно позволит вам войти в систему как root, не беспокоясь об этой системе хеширования. В любом случае, это откроет окно терминала, отличное от того, в котором вы работали.

Как только вы попадете в командную строку bash, введите команду кто я; CD; pwd и нажмите клавишу ввода. Сначала определяется, под каким именем вы вошли в систему, а затем изменяется домашний каталог текущего пользователя. Вы заметите, что вы вошли в систему как пользователь root, а домашний каталог указанного пользователя - это не / home / root, а сам / root. Дистрибутивы Linux делают это, потому что некоторым людям нравится устанавливать весь каталог / home в отдельный раздел от точки монтирования верхнего уровня.

Когда вы закончите с корневым окном, вам нужно будет ввести Выход , чтобы выйти из этого окна, поскольку вы все еще являетесь в нем пользователем root.

Если у вас была установлена ​​структура каталогов / home на каком-то другом диске, и она физически вышла из строя, то наличие / root в другом месте не позволит вам потерять возможность хотя бы загрузить систему в качестве суперпользователя для целей восстановления. Большинство дистрибутивов делают так, чтобы каталоги разных обычных пользователей были доступны для чтения друг другу. Каждому из них дано 755 разрешений Unix. Каталог / root особенный, потому что у него 700 разрешений, что означает, что только суперпользователь root может читать из него.

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

3 минуты на чтение