Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 09.10.2011
Сообщений: 82

Как редактировать пользователей и группы?

10.11.2013, 20:48. Показов 1258. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!
Задали нам некую лабу по Линуксу. Задание вот:
1. Создать группы teacher и student.
2. В каждой группе создать ПО три пользователя.
3. Сделать так, чтоб у каждого пользователя его начальная группа была либо teacher, либо student соответственно.
Например:
Code
1
2
ric:x:1007:1008::/home/ric:/bin/sh
pol:x:1008:1008::/home/pol:/bin/sh
4. Добавить пользователей в свои группы.
Например:
Code
1
teacher:x:1008:ric,pol
5. Пропарсить файлы /etc/passwd, /etc/shadow, /etc/group так, чтоб в конечном файле можно было увидеть следующее (разделитель — Tab):
Code
1
2
3
4
5
Name    Password(хеш)    Group       HOMEDIR          SHELL
User1   12               group1      /home/user1      /bin/bash
User2   334              group2      /home/uesr2      /bin/sh
Daemon  *                daemon      /usr/sbin        /bin/sh
Sshd    *                nougroup    /var/run/sshd    /usr/sbin/nologin
Написать набор команд, который был использован, и содержимое выходного файла, также указать команду для архивации этого файла.
С первыми 3 я справился без проблем. Помогите разобраться с 4 (мне не совсем понятна формулировка задания) и 5 (вот тут я уже совсем не знаю). Если бы на этом компьютере был линукс, то можно было бы разобраться с этим методом проб и ошибок, но увы. Буду благодарен тому, кто сможет объяснить что да как.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.11.2013, 20:48
Ответы с готовыми решениями:

Вывод пользователей заданной группы
Доброго времени суток! Написать shell-процедуру, которая выводит на экран список всех пользователей системы, включенных в заданную...

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

Ограничение группы пользователей на выполнение команд по SSH
Здравствуйте! Есть группа gusers, в ней много юзеров, которые имеют доступ к серверу по SSH, да и вообще имеют права на выполнение...

1
4 / 4 / 0
Регистрация: 29.08.2013
Сообщений: 35
20.11.2013, 18:14
4-ый наверно так делается
Code
1
2
student:x:516:
teacher:x:517:
Bash
1
2
3
4
5
6
sudo gpasswd -a student1 student
sudo gpasswd -a student2 student
sudo gpasswd -a student3 student
sudo gpasswd -a teacher1 teacher
sudo gpasswd -a teacher2 teacher
sudo gpasswd -a teacher3 teacher
Code
1
2
student:x:516:student1,student2,student3
teacher:x:517:teacher1,teacher2,teacher3
5-ый делал только со студентом, с учителем аналогично
Bash
1
2
3
4
$ cat /etc/passwd | grep student
student1:x:513:516::/home/student1:/bin/bash
student2:x:514:516::/home/student2:/bin/bash
student3:x:515:516::/home/student3:/bin/bash
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$ echo "name:1:password:group::homedir:shell" > tabl
$ echo "$(cat /etc/passwd | grep student)" >> tabl
$ echo "$(cat tabl | cut -d':' -f1-1,3-)" > tabl
$ echo "$(sed -e 's/516/student/g' tabl)" > tabl
$ echo "$(sed -e 's/513/student1/g' tabl)" > tabl
$ echo "$(sed -e 's/514/student2/g' tabl)" > tabl
$ echo "$(sed -e 's/515/student3/g' tabl)" > tabl
$ echo "$(sed -e 's/:/ /g' tabl)" > tabl
$ echo "$(column -t tabl)" > tabl
$ cat tabl
name      password  group    homedir         shell
student1  student1  student  /home/student1  /bin/bash
student2  student2  student  /home/student2  /bin/bash
student3  student3  student  /home/student3  /bin/bash
Тут можно гораздо проще все сделать, но я не так давно bash изучаю и, думаю, раз за 10 дней тебе никто не ответил, то пусть уж хоть что-то будет, чем ничего.
Доделай сам, я не знаю как устранить ошибки типа:
1) если у одного из юзеров UID будет совпадать с GID группы
2) множество однотипных команд, для 3-ех пользователей не особо важно, но если их больше десяти, то лучше заключить в цикл
3) не учтены возможности многих важных символов попасть под замену.

Добавлено через 51 минуту
Хотя 4-ый лучше так сделать:
Bash
1
$ for i in $(seq 1 3); do sudo gpasswd -a student$i student | sudo gpasswd -a teacher$i teacher; done
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.11.2013, 18:14
Помогаю со студенческими работами здесь

Связать группы пользователей из мастер защиты на уровне пользователей с должностями пользователей в БД
Интересный вопрос и интересно как его решить. Изначально условия следующие: один компьютер, один рабочий стол, одна база...

Где почитать про пользователей и группы пользователей в Windows 7?
Подскажите где почитать про пользователей и группы пользователей в windows 7?

Как разделить пользователей на три группы?
Доброго временм суток. У меня такой вопрос как мне можно поделить пользователей на три группы, при регистрации они ввводят почти одинаковую...

Как сделать простой скрипт группы пользователей?
Здравствуйте, можите написать скрипт группы пользователя, а то я совсем не знаю как сделать. Хочу чтоб как-то можно было пользователя...

Как вывести группы и пользователей Windows через TreeView?
Доброе время время суток. Подскажите, как с помощью Treeview вывести группы и пользователей виндовс? Структура дерева должна быть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru