Журнал лабораторных работ

Содержание

Журнал

Четверг (09/07/17)

/dev/pts/4
08:51:48
#vi /etc/gro
08:51:48
#vi /etc/gro
08:51:48
#vi /etc/group
08:54:49
#~
Использование: groupadd [параметры] ГРУППА
Параметры:
  -f, --force                   закончить работу без ошибки, если группа
                                существует и отменить -g, если GID уже
                                используется
  -g, --gid GID                 для новой группы использовать указанный GID
  -h, --help                    показать данное сообщение и закончить работу
  -K, --key Ко умолчанию
                                из /etc/login.defs
  -o, --non-unique              разрешить создание групп с повторяющимся
                                (не уникальным) GID
  -p, --password ПАРОÐй пароль для
                                новой группы
  -r, --system                  создать системную учётную запись
  -R, --root КАТ_CHROOT         каталог, в который выполняется chroot
08:54:54
#groupadd -g 10000 developers

08:55:31
#vi /etc/group
08:56:03
#~
Добавление пользователя ivan в группу developers
08:58:56
#~
Добавление пользователя user в группу developers
08:59:52
#usermod
Использование: usermod [параметры] ПОÐ
, --comment КОММЕНТАРИЙ     новое значение поля GECOS
  -d, --home ДОМ_КАТ            новый домашний каталог учётной записи
  -e, --expiredate ДАТА_УСТ     установить дату окончания действия
                                учётной записи в ДАТА_УСТ
  -f, --inactive НЕАКТИВНОСТЬ   установить период неактивности пароля после
                                устаревания учётной записи равным НЕАКТИВНОСТЬ
  -g, --gid ГРУППА              принудительно назначить первичную ГРУППУ
  -G, --groups ГРУППЫ           список дополнительных ГРУПП
  -a, --append                  добавить пользователя в дополнительные
...
                                имеющимся (не уникальным) UID
  -p, --password ПАРОоль для
                                учётной записи
  -R, --root КАТ_CHROOT         каталог, в который выполняется chroot
  -s, --shell ОБОолочка для учётной
                                записи
  -u, --uid UID                 новый UID для учётной записи
  -U, --unlock                  разблокировать учётную запись
  -Z, --selinux-user SEUSER     новое пользовательское сопоставление
                                SELinux для учётной записи
08:59:59
#usermod -G developers petr

09:00:39
#vi /etc/group
09:01:15
# 46 petr:x:1002:
uid=1001(ivan) gid=1001(ivan) группы=1001(ivan),10000(developers)
09:01:20
#cat /etc/g
gai.conf  groff/    group     group-    grub.d/   gshadow   gshadow-
09:01:20
#cat /etc/g
gai.conf  groff/    group     group-    grub.d/   gshadow   gshadow-
09:01:20
#cat /etc/gr
groff/  group   group-  grub.d/
09:01:20
#cat /etc/gr
groff/  group   group-  grub.d/
09:01:20
#cat /etc/gro
groff/  group   group-
09:01:20
#cat /etc/group | grep developers
developers:x:10000:ivan,user,petr
09:03:51
#cat /etc/group | grep developers | tr ',' '\n'
developers:x:10000:ivan
user
petr
09:04:10
#grep developers /etc/group | tr ',' '\n'
developers:x:10000:ivan
user
petr
09:04:40
#grep developers /etc/group| cut -d: -f4 | tr ',' '\n'
ivan
user
petr
09:07:36
# 46 petr:x:1002:
mkdir: невозможно создать каталог «d1»: Файл существует
прошло 55 минут
10:02:53
#mkdir /opt/public

10:03:14
#chmod 777 /opt/public/

10:03:26
#cd /opt/public/

10:03:43
#touch rootfile

10:03:55
#chmod 770 rootfile

10:04:09
#chmod +t /opt/public/

10:05:50
#echo #?

10:06:03
#echo $?
0
10:06:25
#passwd
Введите новый пароль UNIX:
Повторите ввод нового пароля UNIX:
passwd: Ошибка при операциях с маркером проверки подлинности
passwd: пароль не изменён
10:12:20
#cd

10:13:08
#whi
which     while     whiptail
10:13:08
#whi
which     while     whiptail
10:13:08
#which bash
/bin/bash
10:13:23
#ls /bin/bash -l
-rwxr-xr-x 1 root root 975488 Сен 25  2014 /bin/bash
10:13:40
#find / -perm -4000
/usr/lib/openssh/ssh-keysign
/usr/lib/pt_chown
/usr/lib/eject/dmcrypt-get-device
/usr/bin/passwd
/usr/bin/chfn
/usr/bin/gpasswd
/usr/bin/chsh
/usr/bin/newgrp
/usr/sbin/exim4
/bin/mount
/bin/su
/bin/ping6
/bin/umount
/bin/ping
find: `/proc/21882/task/21882/fd/5': Нет такого файла или каталога
find: `/proc/21882/task/21882/fdinfo/5': Нет такого файла или каталога
find: `/proc/21882/fd/5': Нет такого файла или каталога
find: `/proc/21882/fdinfo/5': Нет такого файла или каталога
10:14:49
#^C

10:15:36
#mkdir /opt/proj

10:19:51
#chgrp developers /opt/proj/

10:21:27
#ls /opt/proj/

10:21:35
#ls /opt/proj/ -l
итого 0
10:21:38
#ls /opt/proj/ -ld
drwxr-xr-x 2 root developers 4096 Сен  7 11:19 /opt/proj/
10:21:47
#chmod 770 /opt/proj/

10:22:16
#ls /opt/
proj  public
10:22:25
#useradd anna -m

10:23:24
#passwd anna
Введите новый пароль UNIX:
Повторите ввод нового пароля UNIX:
passwd: пароль успешно обновлён
10:23:48
#setfacl --help
l3script: setfacl: команда не найдена
10:25:01
#setfacl
l3script: setfacl: команда не найдена
10:25:11
#apt-get install setfacl
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
E: Не удалось найти пакет setfacl
10:25:51
#apt-get install acl
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
НОВЫЕ пакеты, которые будут установлены:
  acl
обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 70,8 kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 264 kB.
Получено:1 http://ftp.ua.debian.org/debian/ wheezy/main acl amd64 2.2.51-8 [70,8 kB]
Получено 70,8 kБ за 0с (309 kБ/c)
Выбор ранее не выбранного пакета acl.
(Чтение базы данных … на данный момент установлено 30019 файлов и каталогов.)
Распаковывается пакет acl (из файла …/acl_2.2.51-8_amd64.deb) …
Обрабатываются триггеры для man-db …
Настраивается пакет acl (2.2.51-8) …
10:26:22
#setfacl -m u:anna:rx /opt/p
proj/   public/
10:26:22
#setfacl -m u:anna:rx /opt/proj/

10:26:57
#getfacl /opt/proj/
getfacl: Removing leading '/' from absolute path names
# file: opt/proj/
# owner: root
# group: developers
user::rwx
user:anna:r-x
group::rwx
mask::rwx
other::---

Файлы

  • /etc/g
  • /etc/gr
  • /etc/gro
  • /etc/g
    >
    gai.conf  groff/    group     group-    grub.d/   gshadow   gshadow-
    
    /etc/gr
    >
    groff/  group   group-  grub.d/
    
    /etc/gro
    >
    groff/  group   group-
    

    Статистика

    Время первой команды журнала08:51:48 2017- 9- 7
    Время последней команды журнала10:26:57 2017- 9- 7
    Количество командных строк в журнале54
    Процент команд с ненулевым кодом завершения, %12.96
    Процент синтаксически неверно набранных команд, % 3.70
    Суммарное время работы с терминалом *, час 0.66
    Количество командных строк в единицу времени, команда/мин 1.35
    Частота использования команд
    cat7|===========| 11.67%
    vi5|========| 8.33%
    ls5|========| 8.33%
    chmod4|======| 6.67%
    setfacl4|======| 6.67%
    grep4|======| 6.67%
    ~3|=====| 5.00%
    tr3|=====| 5.00%
    mkdir2|===| 3.33%
    passwd2|===| 3.33%
    whi2|===| 3.33%
    cd2|===| 3.33%
    echo2|===| 3.33%
    462|===| 3.33%
    apt-get2|===| 3.33%
    usermod2|===| 3.33%
    touch1|=| 1.67%
    groupadd1|=| 1.67%
    useradd1|=| 1.67%
    cut1|=| 1.67%
    ^C1|=| 1.67%
    find1|=| 1.67%
    getfacl1|=| 1.67%
    which1|=| 1.67%
    chgrp1|=| 1.67%
    ____
    *) Интервалы неактивности длительностью 30 минут и более не учитываются

    Справка

    Для того чтобы использовать LiLaLo, не нужно знать ничего особенного: всё происходит само собой. Однако, чтобы ведение и последующее использование журналов было как можно более эффективным, желательно иметь в виду следующее:
    1. В журнал автоматически попадают все команды, данные в любом терминале системы.

    2. Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду w. В поле WHAT, соответствующем текущему терминалу, должна быть указана программа script.

    3. Команды, при наборе которых были допущены синтаксические ошибки, выводятся перечёркнутым текстом:
      $ l s-l
      bash: l: command not found
      

    4. Если код завершения команды равен нулю, команда была выполнена без ошибок. Команды, код завершения которых отличен от нуля, выделяются цветом.
      $ test 5 -lt 4
      Обратите внимание на то, что код завершения команды может быть отличен от нуля не только в тех случаях, когда команда была выполнена с ошибкой. Многие команды используют код завершения, например, для того чтобы показать результаты проверки

    5. Команды, ход выполнения которых был прерван пользователем, выделяются цветом.
      $ find / -name abc
      find: /home/devi-orig/.gnome2: Keine Berechtigung
      find: /home/devi-orig/.gnome2_private: Keine Berechtigung
      find: /home/devi-orig/.nautilus/metafiles: Keine Berechtigung
      find: /home/devi-orig/.metacity: Keine Berechtigung
      find: /home/devi-orig/.inkscape: Keine Berechtigung
      ^C
      

    6. Команды, выполненные с привилегиями суперпользователя, выделяются слева красной чертой.
      # id
      uid=0(root) gid=0(root) Gruppen=0(root)
      

    7. Изменения, внесённые в текстовый файл с помощью редактора, запоминаются и показываются в журнале в формате ed. Строки, начинающиеся символом "<", удалены, а строки, начинающиеся символом ">" -- добавлены.
      $ vi ~/.bashrc
      2a3,5
      >    if [ -f /usr/local/etc/bash_completion ]; then
      >         . /usr/local/etc/bash_completion
      >        fi
      

    8. Для того чтобы изменить файл в соответствии с показанными в диффшоте изменениями, можно воспользоваться командой patch. Нужно скопировать изменения, запустить программу patch, указав в качестве её аргумента файл, к которому применяются изменения, и всавить скопированный текст:
      $ patch ~/.bashrc
      В данном случае изменения применяются к файлу ~/.bashrc

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

      Если справочная информация о команде есть, команда выделяется голубым фоном, например: vi. Если справочная информация отсутствует, команда выделяется розовым фоном, например: notepad.exe. Справочная информация может отсутствовать в том случае, если (1) команда введена неверно; (2) если распознавание команды LiLaLo выполнено неверно; (3) если информация о команде неизвестна LiLaLo. Последнее возможно для редких команд.

    10. Большие, в особенности многострочные, всплывающие подсказки лучше всего показываются браузерами KDE Konqueror, Apple Safari и Microsoft Internet Explorer. В браузерах Mozilla и Firefox они отображаются не полностью, а вместо перевода строки выводится специальный символ.

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

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

    13. Вывод не интересующих вас в настоящий момент элементов журнала, таких как время, имя терминала и других, можно отключить. Для этого нужно воспользоваться формой управления журналом вверху страницы.

    14. Небольшие комментарии к командам можно вставлять прямо из командной строки. Комментарий вводится прямо в командную строку, после символов #^ или #v. Символы ^ и v показывают направление выбора команды, к которой относится комментарий: ^ - к предыдущей, v - к следующей. Например, если в командной строке было введено:

      $ whoami
      
      user
      
      $ #^ Интересно, кто я?
      
      в журнале это будет выглядеть так:
      $ whoami
      
      user
      
      Интересно, кто я?

    15. Если комментарий содержит несколько строк, его можно вставить в журнал следующим образом:

      $ whoami
      
      user
      
      $ cat > /dev/null #^ Интересно, кто я?
      
      Программа whoami выводит имя пользователя, под которым 
      мы зарегистрировались в системе.
      -
      Она не может ответить на вопрос о нашем назначении 
      в этом мире.
      
      В журнале это будет выглядеть так:
      $ whoami
      user
      
      Интересно, кто я?
      Программа whoami выводит имя пользователя, под которым
      мы зарегистрировались в системе.

      Она не может ответить на вопрос о нашем назначении
      в этом мире.
      Для разделения нескольких абзацев между собой используйте символ "-", один в строке.

    16. Комментарии, не относящиеся непосредственно ни к какой из команд, добавляются точно таким же способом, только вместо симолов #^ или #v нужно использовать символы #=

    17. Содержимое файла может быть показано в журнале. Для этого его нужно вывести с помощью программы cat. Если вывод команды отметить симоволами #!, содержимое файла будет показано в журнале в специально отведённой для этого секции.
    18. Для того чтобы вставить скриншот интересующего вас окна в журнал, нужно воспользоваться командой l3shot. После того как команда вызвана, нужно с помощью мыши выбрать окно, которое должно быть в журнале.
    19. Команды в журнале расположены в хронологическом порядке. Если две команды давались одна за другой, но на разных терминалах, в журнале они будут рядом, даже если они не имеют друг к другу никакого отношения.
      1
          2
      3   
          4
      
      Группы команд, выполненных на разных терминалах, разделяются специальной линией. Под этой линией в правом углу показано имя терминала, на котором выполнялись команды. Для того чтобы посмотреть команды только одного сенса, нужно щёкнуть по этому названию.

    О программе

    LiLaLo (L3) расшифровывается как Live Lab Log.
    Программа разработана для повышения эффективности обучения Unix/Linux-системам.
    (c) Игорь Чубин, 2004-2008

    $Id$