Създаване на скрипт (Linux terminal
Разработване на скриптове заадминистриране на операционна система Ubuntu. Използват се командите, за управление на файлове и директории, на акаунти и
групи, на дискови устройства и файлови системи, на права за достъп и др.
Напишете скрипт, който изпълнява следното:
1. Проверява дали съществува потребител с наименование newUser. Ако не,
то го създава.
2. Ако съществува, да изведе съобщение за грешка и да създаде потребител
testUser.
3. Да създаде потребителска група „newUsers“, която предварително да
провери дали съществува или не. Новият потребител да бъде от тази група.
4. Проверява дали съществува директория с наименование Вашите
факултетни номера в /home. Ако не съществува, да я създава.
5. Да създаде в нея файл с наименование Task1.
6. Да провери дали потребителят, задействал скрипта, има права за запис
върху този файл, ако няма, то да изведе съобщение за грешка.
7. Ако има, нека да записва във файла текущия час и колко пъти е стартиран
скрипта досега.
8. След това да направи копие на файла с ново наименование newFile, което
да премести в директория Documents на текущия потребител.
9. Нека да промени собственика на newFile – потребител newUser, който да
има пълни права за работа с него. Групата newUsers да има права за четене и запис,
а всички останали потребители да имат право само за четене.
10. Накрая да извърши shutdown, като изведе предупредително съобщение на
потребителя.
Ако можеш помогни поне с първата..на мен много грешки ми дава....
Дай да видим какво си направила и какви са грешките, които излизат.
Немога да кача screenshot
unix@ubuntu:~$ #!/bin/bash
unix@ubuntu:~$ if (! user -d newUser); then
> sudo useradd newUser
> else echo "Potrebitelqt syshtestvuva!"
> id -u [newUser]
> fi
No command 'user' found, did you mean:
Command 'kuser' from package 'kuser' (universe)
Command 'fuser' from package 'psmisc' (main)
Command 'users' from package 'coreutils' (main)
Command 'userv' from package 'userv' (universe)
user: command not found
[sudo] password for unix:
useradd: user 'newUser' already exists
Като за начало още първия ред (след #!/bin/bash) създава проблем. Спокойно може да бъде заменен с нещо от сорта на:
if ( grep ^newUser /etc/passwd > /dev/null 2>&1 ); then echo "present"; else echo "missing"; fi
Горния ред само проверява дали съществува въпросния потребител или не и извежда съответното съобщение.
Всяка от двете секции (then и else) може да бъде допълнена с желаните действия.
Разбира се горното предложение е само един от начините за проверка.