Чтение онлайн

на главную - закладки

Жанры

Искусство программирования на языке сценариев командной оболочки

Купер Мендель

Шрифт:

Примеры использования большинства этих команд вы найдете в сценариях начальной загрузки и остановки системы, в каталогах /etc/rc.d. Они, обычно, вызываются пользователем root и используются для администрирования системы или восстановления файловой системы. Эти команды должны использоваться с большой осторожностью, так как некоторые из них могут разрушить систему, при неправильном использовании.

Пользователи и группы

users

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

команды who -q.

groups

Выводит список групп, в состав которых входит текущий пользователь. Эта команда соответствует внутренней переменной $GROUPS, но выводит названия групп, а не их числовые идентификаторы.

bash$ groups

bozita cdrom cdwriter audio xgrp

bash$ echo $GROUPS

501

chown, chgrp

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

root# chown bozo *.txt

Команда chgrp изменяет группу, которой принадлежит файл или файлы. Чтобы изменить группу, вы должны быть владельцем файла (при этом должны входить в состав указываемой группы) или привилегированным пользователем (root).

chgrp --recursive dunderheads *.data

# Группа "dunderheads" станет владельцем всех файлов "*.data"

#+ во всех подкаталогах текущей директории ($PWD) (благодаря ключу "--recursive").

useradd, userdel

Команда useradd добавляет учетную запись нового пользователя в систему и создает домашний каталог для данного пользователя. Противоположная, по смыслу, команда userdel удаляет учетную запись пользователя из системы [ 38 ] и удалит соответствующие файлы.

Команда adduser является синонимом для useradd и, как правило, является обычной символической ссылкой на useradd.

38

Команда userdel завершится неудачей, если удаляемый пользователь в этот момент работает с системой

id

Команда id выводит идентификатор пользователя (реальный и эффективный) и идентификаторы групп, в состав которых входит пользователь. По сути -- выводит содержимое переменных $UID, $EUID и $GROUPS.

bash$ id

uid=501(bozo) gid=501(bozo) groups=501(bozo),22(cdrom),80(cdwriter),81(audio)

bash$ echo $UID

501

См.

также Пример 9-5.

who

Выводит список пользователей, работающих в настоящий момент в системе.

bash$ who

bozo tty1 Apr 27 17:45

bozo pts/0 Apr 27 17:46

bozo pts/1 Apr 27 17:47

bozo pts/2 Apr 27 17:49

С ключом -m -- выводит информацию только о текущем пользователе. Если число аргументов, передаваемых команде, равно двум, то это эквивалентно вызову who -m, например who am i или who The Man.

bash$ who -m

localhost.localdomain!bozo pts/2 Apr 27 17:49

whoami– - похожа на who -m, но выводит только имя пользователя.

bash$ whoami

bozo

w

Выводит информацию о системе, список пользователей, подключенных к системе и процессы, связанные с пользователями. Это расширенная версия команды who. Вывод от команды w может быть передан по конвейеру команде grep, с целью поиска требуемого пользователя и/или процесса.

bash$ w | grep startx

bozo tty1 - 4:22pm 6:41 4.47s 0.45s startx

logname

Выводит имя текущего пользователя (из файла /var/run/utmp). Это довольно близкий эквивалент команды whoami.

bash$ logname

bozo

bash$ whoami

bozo

Однако...

bash$ su

Password: ......

bash# whoami

root

bash# logname

bozo

su

Команда предназначена для запуска программы или сценария от имени другого пользователя. su rjones– - запускает командную оболочку от имени пользователя rjones. Запуск команды su без параметров означает запуск командной оболочки от имени привилегированного пользователя root. См. Пример A-17.

sudo

Исполняет заданную команду от имени пользователя root (или другого пользователя).

#!/bin/bash

# Доступ к "секретным" файлам.

sudo cp /root/secretfile /home/bozo/secret

Имена пользователей, которым разрешено использовать команду sudo, хранятся в файле /etc/sudoers.

passwd

Устанавливает или изменяет пароль пользователя.

Команда passwd может использоваться в сценариях, но это плохая практика.

#!/bin/bash

# set-new-password.sh: Плохая идея.

Поделиться:
Популярные книги

Солнечный корт

Сакавич Нора
4. Все ради игры
Фантастика:
зарубежная фантастика
5.00
рейтинг книги
Солнечный корт

О, мой бомж

Джема
1. Несвятая троица
Любовные романы:
современные любовные романы
5.00
рейтинг книги
О, мой бомж

Возвышение Меркурия. Книга 2

Кронос Александр
2. Меркурий
Фантастика:
фэнтези
5.00
рейтинг книги
Возвышение Меркурия. Книга 2

Вы не прошли собеседование

Олешкевич Надежда
1. Укротить миллионера
Любовные романы:
короткие любовные романы
5.00
рейтинг книги
Вы не прошли собеседование

Метаморфозы Катрин

Ром Полина
Фантастика:
фэнтези
8.26
рейтинг книги
Метаморфозы Катрин

Эволюция мага

Лисина Александра
2. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Эволюция мага

Попаданка для Дракона, или Жена любой ценой

Герр Ольга
Любовные романы:
любовно-фантастические романы
7.17
рейтинг книги
Попаданка для Дракона, или Жена любой ценой

Истинная поневоле, или Сирота в Академии Драконов

Найт Алекс
3. Академия Драконов, или Девушки с секретом
Любовные романы:
любовно-фантастические романы
6.37
рейтинг книги
Истинная поневоле, или Сирота в Академии Драконов

Сумеречный Стрелок 5

Карелин Сергей Витальевич
5. Сумеречный стрелок
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сумеречный Стрелок 5

Кодекс Охотника. Книга XXI

Винокуров Юрий
21. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XXI

Возвышение Меркурия. Книга 17

Кронос Александр
17. Меркурий
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 17

Переиграть войну! Пенталогия

Рыбаков Артем Олегович
Переиграть войну!
Фантастика:
героическая фантастика
альтернативная история
8.25
рейтинг книги
Переиграть войну! Пенталогия

Волков. Гимназия №6

Пылаев Валерий
1. Волков
Фантастика:
попаданцы
альтернативная история
аниме
7.00
рейтинг книги
Волков. Гимназия №6

Картофельное счастье попаданки

Иконникова Ольга
Фантастика:
фэнтези
5.00
рейтинг книги
Картофельное счастье попаданки