1

Я искал сейчас некоторое время, но не смог найти ответ на этот вопрос.

У меня есть сервер на базе Linux (CentOs).

В корневой папке (/) у меня есть папка с именем root (/root).

Теперь, когда я sudo cd root/ я остаюсь в той же папке (/).

Сначала я подумал, что /root - это символическая ссылка, но символические ссылки имеют синий цвет, а здесь у меня темно-синий.

Я читал, что папка /root - это корневая папка пользователя, но я туда не попадаю.

Может кто-нибудь объяснить, что здесь происходит?

3 ответа3

3

/ (Корневой каталог) vs /root каталог

  1. Каталог / называемый Root Directory находится в верхней части иерархии файловой системы.
    • Это означает, что это конечный родитель, прародитель или прародитель любого файла или каталога, которые вы можете найти в своей системе.
    • Он содержит все файлы, необходимые для работы системы, такие как загрузочные файлы, библиотеки, пакеты, необходимые двоичные файлы, конфигурацию системы, пользовательские файлы и временные файлы.

Файловая система Linux источник

  1. Теперь /root является Home directory for User named Root . Смотрите внизу справа на изображении выше.

    • Точно так же, как у каждого пользователя есть свой собственный каталог с его / ее именем пользователя в /home , Root пользователя также должен иметь каталог.
    • Но поскольку пользователю Root необходимо знать каждую мелочь о системе, его домашний каталог создается в / себе под именем /root
    • Он содержит файлы и папки, которые вы создали, когда вы были пользователем root, а также скрытые файлы конфигурации для некоторых приложений или пакетов, которые вы установили.

Теперь, когда я sudo cd root/ я остаюсь в той же папке (/)

Как указано в комментариях Цилглад ,

cd is a builtin shell command, so doing sudo cd /root won't work

Видеть это :

amit@C0deDaedalus:~$ cd /root
bash: cd: /root: Permission denied
amit@C0deDaedalus:~$ 
amit@C0deDaedalus:~$ sudo cd /root
[sudo] password for amit: 
sudo: cd: command not found

Вместо этого вы должны сначала перейти к пользователю root, а затем сделать CD в /root

$ sudo -i
# cd /root
# pwd

Не стесняйтесь добавлять более подробно.

1

Ваша корневая папка - /. Ваш /root является домашней папкой root. Например, если вы создаете пользователя с именем test, тогда его домашней папкой является /home /test. Для пользователя root это просто /root вместо /home /root.

1

перейдите к пользователю root, а затем к нему CD

$ sudo su
# cd /root

как было упомянуто ранее, cd является встроенным в bash и не может быть выполнен с использованием sudo. если вы хотите увидеть разрешения для каталога, попробуйте

$ ls -al

затем посмотрите на столбец разрешений, чтобы определить, имеет ли пользователь, с которым вы вошли в систему, разрешения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .