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

Содержание

Журнал

Четверг (06/04/09)

/dev/pts/37
15:37:57
#StrictModes yes

прошло >2 часов
/dev/pts/2
17:43:10
#ыскscreen -ls
No Sockets found in /var/run/screen/S-root.
/dev/pts/5
17:43:14
#screen -x
/dev/pts/7
17:43:15
#screen -x
/dev/pts/5
17:43:16
#screen -x
17:43:17
#screen -x
/dev/pts/7
17:43:20
#screen -l
/dev/pts/2
17:43:55
#screen -ls
/dev/pts/9
17:43:58
#screen -x
/dev/pts/7
17:44:08
#screen -x
17:44:11
#screen -x
/dev/pts/11
17:44:57
#screen -x
/dev/pts/9
17:45:05
#screen -x
/dev/pts/13
17:45:09
#screen -x
17:45:17
#screen -x
/dev/pts/2
17:45:24
#screen -ls
/dev/pts/7
17:45:30
#screen -x
/dev/pts/2
17:46:20
#screen -ls
17:46:21
#screen -ls
17:46:24
#screen -ls
17:46:25
#screen -ls
17:46:26
#screen -ls
17:46:28
#screen -ls
17:46:29
#screen -ls
17:46:29
#screen -ls
/dev/pts/15
17:46:30
#ыскуут -ч
bash: ыскуут: команда не найдена
/dev/pts/2
17:46:30
#screen -ls
/dev/pts/5
17:46:32
#screen -x
/dev/pts/2
17:46:33
#screen -ls
/dev/pts/15
17:46:33
#screen -x
/dev/pts/2
17:46:34
#screen -ls
/dev/pts/9
17:46:34
#screen -x
/dev/pts/0
17:46:34
#screen
/dev/pts/2
17:46:35
#screen -ls
17:46:41
#screen -x
/dev/pts/20
17:46:42
#screen -x
/dev/pts/5
17:46:50
#screen -x
/dev/pts/18
17:46:52
#cat /etc/hosts.allow
# /etc/hosts.allow: list of hosts that are allowed to access the system.
#                   See the manual pages hosts_access(5) and hosts_options(5).
#
# Example:    ALL: LOCAL @some_netgroup
#             ALL: .foobar.edu EXCEPT terminalserver.foobar.edu
#
# If you're going to protect the portmapper use the name "portmap" for the
# daemon name. Remember that you can only use the keyword "ALL" and IP
# addresses (NOT host or domain names) for the portmapper, as well as for
# rpc.mountd (the NFS mount daemon). See portmap(8) and rpc.mountd(8)
# for further information.
#
bc: 127.0.0.1
/dev/pts/22
17:48:15
#screen -x
/dev/pts/24
17:48:28
#screen -x
/dev/pts/26
17:49:23
#screen -x
/dev/pts/28
17:51:47
#screen -x
прошло 22 минуты
/dev/pts/18
18:13:56
#apt-get install sensible-mda qpopper
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Будут установлены следующие дополнительные пакеты:
  procmail
НОВЫЕ пакеты, которые будут установлены:
  procmail qpopper sensible-mda
обновлено 0, установлено 3 новых пакетов, для удаления отмечено 0 пакетов, и 17 пакетов не обновлено.
Необходимо скачать 770kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 1257kB.
...
(Чтение базы данных ... на данный момент установлено 25923 файлов и каталогов.)
Распаковывается пакет procmail (из файла .../procmail_3.22-16_i386.deb)...
Выбор ранее не выбранного пакета qpopper.
Распаковывается пакет qpopper (из файла .../qpopper_4.0.9.dfsg-1_i386.deb)...
Выбор ранее не выбранного пакета sensible-mda.
Распаковывается пакет sensible-mda (из файла .../sensible-mda_8.14.3-9_i386.deb)...
Обрабатываются триггеры для man-db ...
Настраивается пакет procmail (3.22-16) ...
Настраивается пакет qpopper (4.0.9.dfsg-1) ...
Настраивается пакет sensible-mda (8.14.3-9) ...
/dev/pts/10
18:14:11
#screen -x
/dev/pts/9
18:14:17
#screen -x
/dev/pts/30
18:14:23
#screen -x
/dev/pts/18
18:14:35
#apt-get install sendmail-bin
Warning: 3 database(s) sources
        were not found, (but were created)
        please investigate.
Warning: These messages were issued while creating sendmail.cf
        make sure they are benign before starting sendmail!
Errors in generating sendmail.cf
*** ERROR: FEATURE() should be before MAILER()
*** MAILER(`local') must appear after FEATURE(`always_add_domain')*** ERROR: FEATURE() should be before MAILER()
*** MAILER(`local') must appear after FEATURE(`allmasquerade')*** ERROR: FEATURE() should be before MAILER()
Starting Mail Transport Agent (MTA): sendmail.
18:15:32
#grep pop /etc/inetd.conf
pop-3           stream  tcp     nowait  root    /usr/sbin/tcpd  /usr/sbin/in.qpopper -f /etc/qpopper.conf
/dev/pts/32
18:15:47
#screen -x
прошло 20 минут
/dev/pts/18
18:35:55
#vi sendmail.mc
--- /tmp/l3-saved-7459.26748.1472	2009-06-04 18:35:57.000000000 +0300
+++ sendmail.mc	2009-06-04 18:36:10.000000000 +0300
@@ -54,7 +54,7 @@
 dnl #
 FEATURE(`no_default_msa')dnl
 dnl DAEMON_OPTIONS(`Family=inet6, Name=MTA-v6, Port=smtp, Addr=::1')dnl
-DAEMON_OPTIONS(`Family=inet,  Name=MTA-v4, Port=smtp, Addr=127.0.0.1')dnl
+DAEMON_OPTIONS(`Family=inet,  Name=MTA-v4, Port=smtp, Addr=0.0.0.0')dnl
 dnl DAEMON_OPTIONS(`Family=inet6, Name=MSP-v6, Port=submission, M=Ea, Addr=::1')dnl
 DAEMON_OPTIONS(`Family=inet,  Name=MSP-v4, Port=submission, M=Ea, Addr=127.0.0.1')dnl
 dnl #
18:36:10
#make
Updating databases ...
Reading configuration from /etc/mail/sendmail.conf.
Validating configuration.
Creating /etc/mail/databases...
Updating auth ...
sasl2-bin not installed, not configuring sendmail support.
To enable sendmail SASL2 support at a later date, invoke "/usr/share/sendmail/update_auth"
Creating /etc/mail/relay-domains
# Optional file...
Updating Makefile ...
Reading configuration from /etc/mail/sendmail.conf.
Validating configuration.
Creating /etc/mail/Makefile...
Updating sendmail.cf ...
*** ERROR: FEATURE() should be before MAILER()
*** MAILER(`local') must appear after FEATURE(`always_add_domain')*** ERROR: FEATURE() should be before MAILER()
*** MAILER(`local') must appear after FEATURE(`allmasquerade')*** ERROR: FEATURE() should be before MAILER()
The following file(s) have changed:
  /etc/mail/sendmail.cf
** ** You should issue `/etc/init.d/sendmail reload` ** **
18:36:12
#vi sendmail.mc
--- /tmp/l3-saved-7459.14113.12130	2009-06-04 18:36:30.000000000 +0300
+++ sendmail.mc	2009-06-04 18:36:38.000000000 +0300
@@ -97,13 +97,14 @@
 include(`/etc/mail/m4/dialup.m4')dnl
 include(`/etc/mail/m4/provider.m4')dnl
 dnl #
-dnl # Default Mailer setup
-MAILER_DEFINITIONS
-MAILER(`local')dnl
-MAILER(`smtp')dnl
 
 dnl # Masquerading options
 FEATURE(`always_add_domain')dnl
 MASQUERADE_AS(`linux0')dnl
 FEATURE(`allmasquerade')dnl
 FEATURE(`masquerade_envelope')dnl
+
+dnl # Default Mailer setup
+MAILER_DEFINITIONS
+MAILER(`local')dnl
+MAILER(`smtp')dnl
18:36:38
#make
Updating databases ...
Reading configuration from /etc/mail/sendmail.conf.
Validating configuration.
Creating /etc/mail/databases...
Updating auth ...
sasl2-bin not installed, not configuring sendmail support.
To enable sendmail SASL2 support at a later date, invoke "/usr/share/sendmail/update_auth"
Creating /etc/mail/relay-domains
# Optional file...
Updating Makefile ...
Reading configuration from /etc/mail/sendmail.conf.
Validating configuration.
Creating /etc/mail/Makefile...
Updating sendmail.cf ...
The following file(s) have changed:
  /etc/mail/sendmail.cf
** ** You should issue `/etc/init.d/sendmail reload` ** **
18:36:39
#vi local-host-names
--- /tmp/l3-saved-7459.32183.2521	2009-06-04 18:36:54.000000000 +0300
+++ local-host-names	2009-06-04 18:37:07.000000000 +0300
@@ -1,2 +1,4 @@
 localhost
 linux0
+class0.unix.nt
+linux0.class0.unix.nt
/dev/pts/9
18:36:40
#screen -x
/dev/pts/18
18:38:20
#vi local-host-names
18:40:41
#~
Restarting Mail Transport Agent (MTA): sendmail.
/dev/pts/34
18:40:46
#screen -x
/dev/pts/18
18:40:52
#nc 127.0.0.
1 127.0.0.: forward host lookup failed: Unknown host
18:41:10
#nc 127.0.0.1 25
220 linux0.unix.nt ESMTP Sendmail 8.14.3/8.14.3/Debian-9; Thu, 4 Jun 2009 18:41:14 +0300; (No UCE/UBE) logging access from: [127.0.0.1](FORGED)-localhost [127.0.0.1] (may be forged)
HELO zlo
250 linux0.unix.nt Hello localhost [127.0.0.1] (may be forged), pleased to meet you
MAIL FROM: root@microsoft.com
250 2.1.0 root@microsoft.com... Sender ok
RCPT TO: root@class0.unix.nt
250 2.1.5 root@class0.unix.nt... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
From: ROOT OF MICROSOFT <root@microsoft.com>
To: Root of EB <root@class0.unix.nt>
Subject: Hello
Hello, EB
.
250 2.0.0 n54FfEw3010545 Message accepted for delivery
У вас есть новая почта в /var/mail/root
18:45:37
#apt-get install mutt
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Будут установлены следующие дополнительные пакеты:
  libsasl2-modules
Предлагаемые пакеты:
  libsasl2-modules-otp libsasl2-modules-ldap libsasl2-modules-sql
  libsasl2-modules-gssapi-mit libsasl2-modules-gssapi-heimdal urlview aspell ispell
  mixmaster
НОВЫЕ пакеты, которые будут установлены:
  libsasl2-modules mutt
обновлено 0, установлено 2 новых пакетов, для удаления отмечено 0 пакетов, и 17 пакетов не обновлено.
Необходимо скачать 2041kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 6042kB.
Хотите продолжить [Д/н]?
Ош  http://10.0.35.1 sid/main mutt 1.5.19-3
  404 Not Found
Получено:1 http://10.0.35.1 sid/main libsasl2-modules 2.1.23.dfsg1-1 [147kB]
Получено 147kБ за 0s (822kБ/c)
Не удалось загрузить http://10.0.35.1:9999/debian/pool/main/m/mutt/mutt_1.5.19-3_i386.deb  404 Not Found
E: Невозможно загрузить некоторые архивы, вероятно надо запустить apt-get update или попытаться повторить запуск с ключом --fix-missing
18:45:42
#apt-get update
Получено:1 http://10.0.35.1 sid Release.gpg [1032B]
Получено:2 http://10.0.35.1 sid/main Translation-ru [400kB]
Игн http://10.0.35.1 sid/contrib Translation-ru
Игн http://10.0.35.1 sid/non-free Translation-ru
Получено:3 http://10.0.35.1 sid Release [94,4kB]
Игн http://10.0.35.1 sid/main Packages/DiffIndex
Игн http://10.0.35.1 sid/contrib Packages/DiffIndex
Игн http://10.0.35.1 sid/non-free Packages/DiffIndex
Игн http://10.0.35.1 sid/main Packages
Игн http://10.0.35.1 sid/contrib Packages
Игн http://10.0.35.1 sid/non-free Packages
Получено:4 http://10.0.35.1 sid/main Packages [7775kB]
Получено:5 http://10.0.35.1 sid/contrib Packages [79,8kB]
Получено:6 http://10.0.35.1 sid/non-free Packages [143kB]
Получено 8493kБ за 10s (786kБ/c)
Чтение списков пакетов... Готово
18:45:58
#t
bash: t: команда не найдена
/dev/pts/36
18:47:39
#screen -x
прошло 11 минут
/dev/pts/22
18:59:11
#screen -x
19:03:42
#screen -r
/dev/pts/11
19:03:42
#EXIT
bash: EXIT: команда не найдена
/dev/pts/20
19:03:42
#dig class12.unix.nt
; <<>> DiG 9.6.0-P1 <<>> class12.unix.nt
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28928
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;class12.unix.nt.               IN      A
;; AUTHORITY SECTION:
class12.unix.nt.        3555    IN      SOA     linux12.class12.uxix.nt. root.class12.unix.nt. 2009060402 10800 43200 259200 3600
;; Query time: 1 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Fri Jun  5 14:38:15 2009
;; MSG SIZE  rcvd: 95
/dev/pts/22
19:04:52
#screen -x
19:04:54
#ping 10.0.35.100
PING 10.0.35.100 (10.0.35.100) 56(84) bytes of data.
64 bytes from 10.0.35.100: icmp_seq=1 ttl=64 time=0.021 ms
64 bytes from 10.0.35.100: icmp_seq=2 ttl=64 time=0.013 ms
--- 10.0.35.100 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.013/0.017/0.021/0.004 ms

Пятница (06/05/09)

/dev/pts/0
09:50:51
#screen -x
09:50:54
#screen -x
/dev/pts/3
09:53:17
#screen -x
/dev/pts/5
09:53:18
#screen -x
09:53:34
#screen -x
09:54:14
#screen -x
09:54:51
#screen -x
/dev/pts/7
09:55:11
#screen -x
09:55:15
#screen -x
/dev/pts/9
09:55:48
#screen -x
/dev/pts/15
09:59:40
#screen -x
09:59:44
#screen -x
/dev/pts/0
10:00:48
#screen -x
/dev/pts/15
10:01:58
#screen -x
/dev/pts/5
10:05:12
#screen -x
/dev/pts/17
10:05:31
#screen -ls
/dev/pts/0
10:05:48
#screen -x
/dev/pts/11
10:06:30
#screen -ls
/dev/pts/7
10:06:32
#screen -x
/dev/pts/13
10:06:35
#ысÐscreen -x
[root@linux0:~]#
[root@linux0:~]#
[root@linux0:~]# alias exit='echo no exit'
[root@linux0:~]# set -o ignoreeof
[root@linux0:~]#
/dev/pts/11
10:06:36
#screen -ls
/dev/pts/15
10:06:39
#screen -x
10:06:42
#screen -x
/dev/pts/17
10:06:42
#screen -ls
/dev/pts/5
10:06:45
#screen -x
/dev/pts/15
10:06:45
#screen -x
/dev/pts/5
10:06:46
#screen -x
10:06:46
#screen -x
/dev/pts/19
10:06:58
#screen -x
10:07:01
#screen -x
/dev/pts/9
10:07:01
#screen -x

Файлы

  • /etc/hosts.allow
  • /etc/hosts.allow
    >
    # /etc/hosts.allow: list of hosts that are allowed to access the system.
    #                   See the manual pages hosts_access(5) and hosts_options(5).
    #
    # Example:    ALL: LOCAL @some_netgroup
    #             ALL: .foobar.edu EXCEPT terminalserver.foobar.edu
    #
    # If you're going to protect the portmapper use the name "portmap" for the
    # daemon name. Remember that you can only use the keyword "ALL" and IP
    # addresses (NOT host or domain names) for the portmapper, as well as for
    # rpc.mountd (the NFS mount daemon). See portmap(8) and rpc.mountd(8)
    # for further information.
    #
    bc: 127.0.0.1
    

    Статистика

    Время первой команды журнала15:37:57 2009- 6- 4
    Время последней команды журнала10:07:01 2009- 6- 5
    Количество командных строк в журнале101
    Процент команд с ненулевым кодом завершения, %57.43
    Процент синтаксически неверно набранных команд, % 2.97
    Суммарное время работы с терминалом *, час 1.63
    Количество командных строк в единицу времени, команда/мин 1.03
    Частота использования команд
    screen78|=============================================================================| 77.23%
    vi4|===| 3.96%
    apt-get4|===| 3.96%
    make2|=| 1.98%
    nc2|=| 1.98%
    ысÐscreen1|| 0.99%
    dig1|| 0.99%
    ping1|| 0.99%
    ыскуут1|| 0.99%
    EXIT1|| 0.99%
    t1|| 0.99%
    cat1|| 0.99%
    grep1|| 0.99%
    StrictModes1|| 0.99%
    ~1|| 0.99%
    ыскscreen1|| 0.99%
    ____
    *) Интервалы неактивности длительностью 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$