Как сменить каталог на домашний linux

Обновлено: 03.07.2024

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

Создание

useradd <имя пользователя> [опции]

* опции не являются обязательными при создании пользователя.

* в данном примере создается учетная запись dmosk.

Для учетной записи стоит сразу создать пароль:

* после ввода, система попросит ввести пароль дважды.

Ключи (опции)

Ключ Описание и примеры
-b Задает базовый каталог для домашнего каталога
useradd dmosk -b /var/home
-c Создает комментарий для описания учетной записи
useradd dmosk -c "Пользователя для управления системой"
-d Полный путь к домашнему каталогу пользователя
useradd dmosk -d /home/newuser
-D Позволяет показать или изменить настройки по умолчанию, которые будут применяться при последующем создании пользователей
useradd dmosk -Ds /bin/bash
-e Дата, после которой учетная запись устареет.
useradd dmosk -e 2017-12-31
-f Число дней, после которого учетная запись с устаревшим паролем будет заблокирована
useradd dmosk -f 0
-g Задает основную группу
useradd dmosk -g altternativegroup
-G Задает дополнительные группы
useradd dmosk -G wheel
-k Путь к источнику скелета (файлы с шаблонами для нового пользователя)
useradd dmosk -k /var/skel
-m При создании пользователя создать домашний каталог
useradd dmosk -m
-M Не создавать домашний каталог
useradd dmosk -M
-N Не создавать основную группу с таким же именем, как у пользователя
useradd dmosk -N
-o Разрешает создание учетной записи с повторяющимся UID
useradd dmosk -u 15 -o
-p Задает пароль
useradd dmosk -p pass
-r Системная учетная запись (без домашнего каталога и с идентификаторами в диапазоне SYS_UID_MIN - SYS_UID_MAX из файла /etc/login.defs)
useradd dmosk -r
-R Каталог, в который выполняется chroot
useradd dmosk -R /var/chroot/home
-s Путь до оболочки командной строки
useradd dmosk -s /bin/csh
-u Задает UID
useradd dmosk -u 666
-U Имя группы будет таким же, как у пользователя
useradd dmosk -U

Актуальный список ключей можно получить командой useradd -h.

Редактирование

usermod <имя пользователя> [опции]

usermod dmosk -G wheel

* эта команда добавит пользователя dmosk в группу wheel

Удаление

userdel <имя пользователя> [опции]

Блокировка

Можно заблокировать пользователя, не удаляя его из системы:

usermod -L <имя пользователя>

usermod -L dmosk

Чтобы разблокировать пользователя, вводим:

usermod -U <имя пользователя>

Работа с группами

1. Добавление группы:

groupadd <группа> [опции]

groupmod <группа> [опции]

3. Удаление группы:

groupdel <группа> [опции]

4. Добавление пользователя в группу:

Выполняется через команду usermod:

usermod -a -G <группы через запятую> <пользователь>

5. Удаление из группы:

Выполняется с помощью gpasswd:

gpasswd --delete <пользователь> <группы через запятую>

Список пользователей

Посмотреть список пользователей можно в файле /etc/passwd:

Мы увидим что-то на подобие:

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
.

Как правило, большая часть данных пользователей является системными — их UID меньше 1000 и больше 60000.

Более функциональная команда для отображения содержимого файла passwd — getent:

Можно найти пользователя по идентификатору:

getent passwd 1000

Получить список не системных пользователей:

Получить только список логинов не системных учетных записей:

Примеры работы с учетными записями

useradd

Создать пользователя, добавить его в группу и создать домашнюю директорию:

useradd dmosk -G wheel -m

Создать пользователя с определенными UID и GID (соответственно идентификаторы пользователя и группы):

useradd dmosk -u 900 -g 950

* группа с используемым идентификатором (в данном примере 950) уже должна быть создана заранее с использованием команды groupadd.

Создать пользователя и указать путь к домашней директории:

useradd dmosk -d /home/newdmosk

Создать учетную запись без возможности входа в систему:

useradd dmosk -s /sbin/nologin

usermod

Потребовать сменить пароль при следующем входе в систему:

chage -d 0 dmosk

Поменять пользователю основную группу:

usermod dmosk -g kdonewgroup

Задать пользователю дополнительную группу с правами root:

usermod dmosk -G sudo

Добавить пользователя в группу:

usermod -a -G group dmosk

* в данном примере мы добавим пользователя dmosk в группу group.

Сменить домашнюю директорию:

usermod -d /var/www/dmosk dmosk

* данной командой мы меняем для пользователя dmosk домашнюю директорию на /var/www/dmosk.

Команда cd («изменить каталог») используется для изменения текущего рабочего каталога в Linux и других Unix-подобных операционных системах. Это одна из самых основных и часто используемых команд при работе в терминале Linux.

В этом руководстве мы покажем вам, как использовать команду cd для навигации по дереву каталогов вашей системы.

cd Command

Мы рассмотрим встроенную в Bash версию cd .

Синтаксис команды cd следующий:

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

  • −L , переходить по символическим ссылкам . По умолчанию cd ведет себя так, как если бы указана опция -L .
  • −P , не переходите по символическим ссылкам. Другими словами, когда эта опция указана, и вы пытаетесь перейти к символической ссылке, которая указывает на каталог, cd перейдет в каталог.

В простейшей форме, при использовании без аргументов, cd перенесет вас в ваш домашний каталог.

При навигации по файловой системе вы можете использовать клавишу Tab для автозаполнения имен каталогов. Добавление косой черты в конце имени каталога необязательно.

Чтобы переключиться в каталог, у вас должны быть разрешения на выполнение для этого каталога.

Команда pwd позволяет узнать, в каком каталоге вы сейчас находитесь.

Абсолютные и относительные имена путей

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

По умолчанию, когда вы входите в систему Linux, вашим текущим рабочим каталогом становится домашний каталог. Предполагая, что каталог Downloads существует в вашем домашнем каталоге, вы можете перейти к нему, используя относительный путь к каталогу:

Вы также можете перейти в тот же каталог, используя его абсолютный путь:

Короче говоря, если путь начинается с косой черты ( / ), это абсолютный путь к каталогу.

Родительский каталог

В Unix-подобных операционных системах текущий рабочий каталог представлен одной точкой ( . ). Две точки ( .. ), одна за другой, представляют родительский каталог или, другими словами, каталог, расположенный непосредственно над текущим.

Если вы наберете cd . , вы перейдете в текущий каталог или, другими словами, команда ничего не сделает.

Предположим, вы находитесь в каталоге /usr/local/share , чтобы переключиться в каталог /usr/local (на один уровень выше текущего каталога), вы должны ввести:

Чтобы переместиться на два уровня вверх в каталог /usr (родительский родитель), вы можете запустить следующее:

Другой пример. Допустим, вы находитесь в каталоге /usr/local/share и хотите перейти в каталог /usr/local/src . Вы можете сделать это, набрав:

Перейти в предыдущий каталог

Чтобы вернуться в предыдущий рабочий каталог, передайте символ тире ( - ) в качестве аргумента команды cd:

Перейдите в домашний каталог

), как показано ниже:

Например, если вы хотите перейти в каталог Downloads , который находится внутри вашего домашнего каталога, вы должны ввести:

Вы также можете перейти в домашний каталог другого пользователя, используя следующий синтаксис:

Каталоги с пробелами в именах

Если в имени каталога, в который вы хотите перейти, есть пробелы, вы должны либо заключить путь в кавычки, либо использовать символ обратной косой черты ( ), чтобы избежать пробела:

Выводы

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

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

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

Синтаксис команды usermod имеет следующий вид:

Только root или пользователи с sudo доступом могут вызывать usermod и изменять учетную запись пользователя. В случае успеха команда не выводит никаких результатов.

Добавить пользователя в группу

Чтобы добавить существующего пользователя во вторичную группу, используйте параметры -a -G после имени группы и имени пользователя:

Если вы хотите добавить пользователя сразу в несколько групп, укажите группы после -G параметра, разделенные, (запятыми), без пробелов.

Например, чтобы добавить пользователя linuxizeв gamesгруппу, вы должны выполнить следующую команду:

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

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

Изменить основную группу пользователя

Чтобы изменить основную группу пользователя, вызовите команду usermod с помощью параметра -g , следующего за именем группы и именем пользователя:

В следующем примере мы меняем основную группу пользователя linuxize на developers:

Каждый пользователь может принадлежать ровно к одной основной группе и нулю или более вторичных групп.

Изменение информации о пользователе

Чтобы изменить информацию GECOS (полное имя пользователя), запустите команду с параметром -c , за которым следует новый комментарий и имя пользователя:

Вот пример, показывающий, как добавить дополнительную информацию пользователю linuxize:

Эта информация хранится в файле /etc/passwd.

Изменение домашнего каталога пользователя

В большинстве систем Linux домашние каталоги пользователей названы по имени пользователя и создаются в каталоге /home.

Если по какой-то причине вы хотите изменить домашний каталог пользователя, вызовите usermodкоманду, указав опцию -d , указав абсолютный путь к новому домашнему каталогу и имя пользователя:

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

Вот пример, показывающий, как изменить домашний каталог пользователя www-data на /var/www:

Изменение пользовательской оболочки по умолчанию

Чтобы изменить оболочку пользователя по умолчанию, запустите команду с параметром -s , следующим за абсолютным путем оболочки и именем пользователя:

В приведенном ниже примере мы меняем оболочку пользователя на Zsh:

Вы можете узнать, какие оболочки доступны в вашей системе, просмотрев /etc/shells содержимое файла.

Изменение UID пользователя

Чтобы изменить UID пользователя, вызовите команду с -uпараметром, следующим за новым UID и именем пользователя:

В приведенном ниже примере показано, как изменить номер «UID» на «1050»:

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

Изменение имени пользователя

Хотя не очень часто, иногда вам может потребоваться изменить имя существующего пользователя. Параметр -l используется для изменения имени пользователя:

В приведенном ниже примере мы переименование пользователя linuxizeк lisaна «1050»:

При изменении имени пользователя вы также можете изменить домашний каталог пользователя, чтобы отразить новое имя пользователя.

Установка даты истечения срока действия пользователя

Срок годности должен быть установлен в формате YYYY-MM-DD.

Например, чтобы отключить пользователя linuxize на 2022-02-21, вы бы выполнить следующую команду:

Чтобы отключить истечение срока действия учетной записи, установите пустую дату истечения срока действия:

Используйте chage команду -l , чтобы просмотреть дату истечения срока действия пользователя:

Срок годности хранится в /etc/shadow файле.

Блокировка и разблокировка учетной записи пользователя

Опция -L позволяет заблокировать учетную запись пользователя:

Команды вставят восклицательный знак ( ! ) перед зашифрованным паролем. Если поле пароля в /etc/shadow файле содержит восклицательный знак, пользователь не сможет войти в систему, используя аутентификацию по паролю. Другие методы входа в систему, такие как аутентификация на основе ключей или переключение на пользователя, по-прежнему разрешены. Если вы хотите заблокировать учетную запись и отключить все методы входа в систему, вам также необходимо установить дату истечения срока действия равной 1.

В следующих примерах показано, как заблокировать пользователя linuxize:

Чтобы разблокировать пользователя, запустите usermodс -Uопцией:

Заключение

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

Не стесняйтесь оставлять комментарии, если у вас есть вопросы.

Команда CD в Linux (Change Directory)

Команда cd («изменить каталог») используется для изменения текущего рабочего каталога в Linux и других Unix-подобных операционных системах. Это одна из самых основных и часто используемых команд при работе на терминале Linux.

Текущий рабочий каталог является каталогом (папка) , в котором пользователь в настоящее время работает в. Каждый раз , когда вы взаимодействуете с вашей командной строкой, вы работаете в директории.

CD команда

cd является встроенной оболочкой, и ее поведение может немного отличаться от оболочки к оболочке. Он использует переменные среды оболочки для определения необходимой информации для его выполнения.

Мы рассмотрим встроенную версию Bash cd .

Синтаксис cd команды следующий:

Команда принимает только две опции, которые используются редко.
  • −L Перейдите по символическим ссылкам . По умолчанию cd ведет себя так, как будто -L опция указана.
  • −P Не переходите по символическим ссылкам. Другими словами, когда указана эта опция, и вы пытаетесь перейти к символической ссылке, которая указывает на каталог, вы cd перейдете в каталог.

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

При навигации по файловой системе вы можете использовать Tab клавишу для автозаполнения имен каталогов. Добавление косой черты в конце имени каталога не является обязательным.

Чтобы переключиться на каталог, вы должны иметь права на выполнение для этого каталога.

Команда pwd позволяет вам узнать, в каком каталоге вы сейчас находитесь.

Абсолютные и относительные имена путей

При указании каталога для изменения вы можете использовать как абсолютные, так и относительные имена путей. Абсолютный или полный путь начинается с системного корня / , а относительный путь начинается с вашего текущего каталога.

По умолчанию, когда вы входите в систему Linux, текущим рабочим каталогом становится ваш домашний каталог. Предполагая, что Downloads каталог существует в вашем домашнем каталоге, вы можете перейти к нему, используя относительный путь к каталогу:

Вы также можете перейти в тот же каталог, используя его абсолютный путь:

Короче говоря, если путь начинается с косой черты ( / ), то это абсолютный путь к каталогу.

Родительский каталог

В Unix-подобных операционных системах текущий рабочий каталог представлен одной точкой ( . ). Две точки ( .. ), одна за другой, представляют родительский каталог или, другими словами, каталог непосредственно над текущим.

Если вы напечатаете cd . , вы перейдете в текущий каталог или, другими словами, команда ничего не сделает.

Предположим, что вы находитесь в /usr/local/share каталоге, чтобы переключиться на /usr/local каталог (на один уровень выше текущего каталога), вы должны набрать:

Чтобы переместить два уровня вверх в /usr каталог (родительский родительский), вы можете выполнить следующее:

Вот еще один пример. Допустим, вы находитесь в /usr/local/share каталоге, и вы хотите переключиться на /usr/local/src . Вы можете сделать это, набрав:

Перейти к предыдущему каталогу

Чтобы вернуться к предыдущему рабочему каталогу, передайте - символ dash ( ) в качестве аргумента команде cd:

Перейдите в Домашний каталог

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

символ tilde ( ), как показано ниже:

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

Вы также можете перейти к домашнему каталогу другого пользователя, используя следующий синтаксис:

Каталоги с пробелом в их именах

Если в каталоге, который вы хотите изменить, в имени есть пробелы, вы должны либо заключить путь в кавычки, либо использовать \ символ обратной косой черты ( ), чтобы убрать пробел:

Вывод

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

Читайте также: