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

Содержание

Журнал

Понедельник (10/09/06)

/dev/pts/1
22:13:44
#ls m4/

22:13:59
#cp ../mail.2old/m4/* ./m4/

22:14:18
#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` ** **
22:14:20
#cat sendmail.cf | grep Dj
Djfreedom.ukraine.linux.nt
22:14:42
#netstat -lnp | grep :25
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN     9982/sendmail: MTA:
22:15:00
#make

22:15:02
#/etc/init.d/sendmail restart
Restarting Transport Agent: sendmailWarning: Cannot use HostStatusDirectory = /var/lib/sendmail/host_status: No such file or directory
.
22:15:13
#touch /var/lib/sendmail/host_status

22:15:34
#/etc/init.d/sendmail restart
Restarting Transport Agent: sendmailWarning: Cannot use HostStatusDirectory = /var/lib/sendmail/host_status: Not a directory
.
22:15:40
#netstat -lnp | grep :25
tcp        0      0 0.0.0.0:25              0.0.0.0:*               LISTEN     10367/sendmail: MTA
22:15:43
#telnet 192.168.15.4 25
Trying 192.168.15.4...
Connected to 192.168.15.4.
Escape character is '^]'.
220 freedom.ukraine.linux.nt ESMTP Sendmail 8.13.8/8.13.8/Debian-2; Mon, 9 Oct 2006 22:15:52 +0300; (No UCE/UBE) logging access from: freedom.ukraine.linux.nt(OK)-root@freedom.ukraine.linux.nt [192.168.15.4]
^]
telnet> q
Connection closed.
22:16:00
#su - user
l3-agent is already running: pid=6031; pidfile=/home/user/.lilalo/l3-agent.pid
22:16:07
$mutt
  D - 1/1: user
ïÓÔÁ×ÌÅÎÏ: 0, ÕÄÁÌÅÎÏ: 1.
22:16:14
$LANG=C

22:16:18
$mutt
---Mutt: /var/mail/user [Msgs:0]---(threads/date)-----------------------(all)---
Mailbox is unchanged.
22:16:23
$mutt
      To: user@debian.linux-sendm.linux.nt
      Cc:
     Bcc:
 Subject: test
Reply-To:
     Fcc: ~/sent
     Mix: <no chain defined>
Security: Clear
-- Attachments
Ma-l sent/var/mail/user [Msgs:0]---(threads/date)---                    (all)
Mailbox is unchanged.
22:17:05
$exit

/dev/pts/1
22:18:19
#su - user
l3-agent is already running: pid=6031; pidfile=/home/user/.lilalo/l3-agent.pid
22:18:21
$mutt
---Mutt: /var/mail/user [Msgs:0]---(threads/date)-----------------------(all)---
ðÏÞÔÏ×ÙÊ ÑÝÉË ÎÅ ÉÚÍÅÎÉÌÓÑ.
22:18:25
$LANG=C mutt
---Mutt: /var/mail/user [Msgs:0]---(threads/date)-----------------------(all)---
Mailbox is unchanged.
/dev/pts/1
22:19:50
#su - user
l3-agent is already running: pid=6031; pidfile=/home/user/.lilalo/l3-agent.pid
22:19:52
$mutt
---Mutt: /var/mail/user [Msgs:0]---(threads/date)-----------------------(all)---
ðÏÞÔÏ×ÙÊ ÑÝÉË ÎÅ ÉÚÍÅÎÉÌÓÑ.
22:19:59
$mutt
      To: root@freedom.ukraine.linux.nt
      Cc:
     Bcc:
 Subject: test#2
Reply-To:
     Fcc: ~/sent
     Mix: <no chain defined>
Security: îÅ ÐÒÉÍÅÎÑÔØ
-- ÷ÌÏÖÅÎÉÑ
óÏ-ÂÝÅÎÉÅ/var/mail/user [Msgs:0]---(threads/date)---                    (all)
ðÏÞÔÏ×ÙÊ ÑÝÉË ÎÅ ÉÚÍÅÎÉÌÓÑ.
22:20:36
$exit

/dev/pts/1
22:22:21
#su - user
l3-agent is already running: pid=6031; pidfile=/home/user/.lilalo/l3-agent.pid
22:22:24
$mutt
---Mutt: /var/mail/user [Msgs:0]---(threads/date)-----------------------(all)---
ðÏÞÔÏ×ÙÊ ÑÝÉË ÎÅ ÉÚÍÅÎÉÌÓÑ.
22:22:32
$dig ukraine.linux.nt mx
; <<>> DiG 9.2.4 <<>> ukraine.linux.nt mx
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27250
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;ukraine.linux.nt.              IN      MX
;; ANSWER SECTION:
ukraine.linux.nt.       86400   IN      MX      1 freedom.ukraine.linux.nt.
;; AUTHORITY SECTION:
ukraine.linux.nt.       86400   IN      NS      freedom.ukraine.linux.nt.
;; ADDITIONAL SECTION:
freedom.ukraine.linux.nt. 86400 IN      A       192.168.15.4
;; Query time: 2 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon Oct  9 22:22:52 2006
;; MSG SIZE  rcvd: 88
22:22:52
$dig linux-sendm.linux.nt mx
; <<>> DiG 9.2.4 <<>> linux-sendm.linux.nt mx
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60949
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;linux-sendm.linux.nt.          IN      MX
;; ANSWER SECTION:
linux-sendm.linux.nt.   604800  IN      MX      1 debian.linux-sendm.linux.nt.
;; AUTHORITY SECTION:
linux-sendm.linux.nt.   604433  IN      NS      debian.linux-sendm.linux.nt.
;; ADDITIONAL SECTION:
debian.linux-sendm.linux.nt. 604433 IN  A       192.168.15.2
;; Query time: 4 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon Oct  9 22:23:06 2006
;; MSG SIZE  rcvd: 91
22:23:06
$mail root
bash: mail: command not found
22:23:14
$muut
bash: muut: command not found
22:23:21
$mutt
---Mutt: /var/mail/user [Msgs:0]---(threads/date)-----------------------(all)---
ðÏÞÔÏ×ÙÊ ÑÝÉË ÎÅ ÉÚÍÅÎÉÌÓÑ.
22:23:28
$[root@freedom:root]# /etc/init.d/sendmail restart
Restarting Transport Agent: sendmailWarning: Cannot use HostStatusDirectory = /var/lib/sendmail/host_status: Not a directory
.
22:23:39
#su - user
l3-agent is already running: pid=6031; pidfile=/home/user/.lilalo/l3-agent.pid
22:23:41
$mutt
---Mutt: /var/mail/user [Msgs:0]---(threads/date)-----------------------(all)---
ðÏÞÔÏ×ÙÊ ÑÝÉË ÎÅ ÉÚÍÅÎÉÌÓÑ.
/dev/pts/1
22:24:02
#su - user
l3-agent is already running: pid=6031; pidfile=/home/user/.lilalo/l3-agent.pid
22:24:05
$mutt
---Mutt: /var/mail/user [Msgs:0]---(threads/date)-----------------------(all)---
ðÏÞÔÏ×ÙÊ ÑÝÉË ÎÅ ÉÚÍÅÎÉÌÓÑ.
/dev/pts/1
22:25:51
#vi /etc/network/interfaces
22:26:07
#reboot

Вторник (10/10/06)

/dev/pts/1
12:40:31
#su - user
l3-agent is already running: pid=6031; pidfile=/home/user/.lilalo/l3-agent.pid
12:40:36
$exit

12:40:37
#vi .l3rc
12:41:21
#date
Втр Окт 10 12:41:25 EEST 2006
/dev/pts/1
12:41:29
#vi .l3rc
12:42:05
#vi ~user/.bashrc
12:42:15
#vi ~user/.l3rc
12:42:27
#date
Втр Окт 10 12:42:58 EEST 2006
12:42:58
#. .proile
bash: .proile: No such file or directory
12:43:07
#ls -al
итого 3641
drwxr-xr-x  12 root root    1024 2006-10-10 12:42 .
drwxr-xr-x  23 root root    1024 2006-09-17 18:47 ..
drwx------   2 root root    1024 2006-07-03 15:16 .aptitude
-rw-------   1 root root   10613 2006-10-10 12:41 .bash_history
-rw-r--r--   1 root root      25 2006-09-17 18:54 .bash_profile
-rw-r--r--   1 root root     519 2006-10-10 12:40 .bashrc
-rw-r--r--   1 root root   73796 2006-09-19 11:29 BillInet_2006_09_19_2537_21630.pdf
-rw-r--r--   1 root root     183 2006-07-03 14:50 dbootstrap_settings
-rw-r--r--   1 root root   11674 2006-09-20 13:18 .fonts.cache-1
...
-rw-r--r--   1 root root    4272 2006-09-28 23:57 sendmail.mc
-rw-------   1 root root    1054 2006-09-29 00:24 sent
-rw-r--r--   1 root root 2290254 2006-09-21 10:05 sim_0.9.4.0+1-1_i386.deb
-rw-r--r--   1 root root 1245302 2006-09-21 10:05 sim-data_0.9.4.0+1-1_all.deb
drwx------   2 root root    1024 2006-09-21 11:59 .ssh
-rw-------   1 root root    7689 2006-10-10 12:42 .viminfo
-rw-r--r--   1 root root      21 2006-08-03 17:39 .vimrc
drwx------   2 root root    1024 2006-09-18 12:26 .w3m
-rw-r--r--   1 root root    4004 2006-09-20 12:51 xorg.conf
-rw-r--r--   1 root root       0 2006-09-19 11:23 .Xresuorces
12:43:10
#vi .profile
12:43:26
#ntpdate ntp.psn.ru
 9 Oct 21:42:57 ntpdate[7535]: step time server 194.149.67.130 offset -54042.140479 sec

Статистика

Время первой команды журнала22:13:44 2006-10- 9
Время последней команды журнала12:43:26 2006-10-10
Количество командных строк в журнале50
Процент команд с ненулевым кодом завершения, % 4.00
Процент синтаксически неверно набранных команд, % 4.00
Суммарное время работы с терминалом *, час 0.26
Количество командных строк в единицу времени, команда/мин 3.27
Частота использования команд
mutt10|==================| 18.87%
su7|=============| 13.21%
vi6|===========| 11.32%
grep3|=====| 5.66%
exit3|=====| 5.66%
/etc/init.d/sendmail2|===| 3.77%
dig2|===| 3.77%
make2|===| 3.77%
netstat2|===| 3.77%
ls2|===| 3.77%
date2|===| 3.77%
LANG=C2|===| 3.77%
touch1|=| 1.89%
muut1|=| 1.89%
telnet1|=| 1.89%
ntpdate1|=| 1.89%
cp1|=| 1.89%
reboot1|=| 1.89%
[root@freedom:root]#1|=| 1.89%
mail1|=| 1.89%
.1|=| 1.89%
cat1|=| 1.89%
____
*) Интервалы неактивности длительностью 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$