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

Содержание

Журнал

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

/dev/ttyp0
12:48:29
#make
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...
The following file(s) have changed:
** ** You should issue `/etc/init.d/sendmail reload` ** **
12:48:43
#vim /etc/mail/sendmail.mc
--- /tmp/l3-saved-2422.32287.20488	2009-05-29 12:48:55.000000000 +0300
+++ /etc/mail/sendmail.mc	2009-05-29 12:50:24.000000000 +0300
@@ -62,7 +62,7 @@
 `needmailhelo,needexpnhelo,needvrfyhelo,restrictqrun,restrictexpand,nobodyreturn,authwarnings')dnl
 INPUT_MAIL_FILTER(`clamav', `S=local:/var/run/clamav/clamav-milter.ctl, F=, T=S:4m;R:4m')dnl
 INPUT_MAIL_FILTER(`spamassassin', `S=local:/var/run/spamass/spamass.sock, F=, T=C:15m;S:4m;R:4m;E:10m')dnl
-define(`confINPUT_MAIL_FILTERS', `spamassassin,clamav')dnl
+define(`confINPUT_MAIL_FILTERS', `spamassassin, clamav')dnl
 dnl # Define connection throttling and window length
 define(`confCONNECTION_RATE_THROTTLE', `15')dnl
 define(`confCONNECTION_RATE_WINDOW_SIZE',`10m')dnl
12:50:24
#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` ** **
12:51:19
#tail -f /var/log/mail.log
[root@debian5:mail]# /etc/init.d/sendmail reload
Reloading Mail Transport Agent configuration: sendmail.
May 29 12:52:05 debian5 spamd[26574]: spamd: result: Y 3 - ALL_TRUSTED,AWL,TVD_SPACE_RATIO scantime=0.1,size=1637,user=user,uid=1000,required_score=1.0,rhost=localhost.localdomain,raddr=127.0.0.1,rport=42198,mid=<1243590740.3780.24.camel@debian6.net.nt>,autolearn=no
May 29 12:52:05 debian5 sm-mta[27614]: n4T9q4Vo027614: Milter add: header: X-Spam-Flag: YES
May 29 12:52:05 debian5 sm-mta[27614]: n4T9q4Vo027614: Milter add: header: X-Spam-Status: Yes, score=3.1 required=1.0 tests=ALL_TRUSTED,AWL,\n\tTVD_SPACE_RATIO autolearn=no version=3.2.5
May 29 12:52:05 debian5 sm-mta[27614]: n4T9q4Vo027614: Milter add: header: X-Spam-Level: ***
May 29 12:52:05 debian5 sm-mta[27614]: n4T9q4Vo027614: Milter add: header: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on debian5.net.nt
May 29 12:52:05 debian5 sm-mta[27614]: n4T9q4Vo027614: Milter change: header Subject: from 1 to *****SPAM_from_elena***** 1
May 29 12:52:05 debian5 sm-mta[27614]: n4T9q4Vo027614: Milter change: header Content-Type: from multipart/mixed; boundary="=-8yi5d+VnH1GH258BnbkK" to multipart/mixed; boundary="----------=_4A1FB045.1F5BA19A"
May 29 12:52:05 debian5 sm-mta[27614]: n4T9q4Vo027614: Milter message: body replaced
May 29 12:52:05 debian5 spamd[26545]: prefork: child states: II
May 29 12:52:05 debian5 sm-mta[27617]: n4T9q4Vo027614: to=<user@elena.net.nt>, ctladdr=<user@elena.net.nt> (1000/1000), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=33779, dsn=2.0.0, stat=Sent
May 29 13:01:23 debian5 sm-mta[27655]: n4T9OJqo025342: to=<elena@net.nt>, ctladdr=<user@elena.net.nt> (1000/1000), delay=00:37:02, xdelay=00:00:06, mailer=esmtp, pri=889071, relay=debian11.net.nt. [192.168.16.11], dsn=4.0.0, stat=Deferred: debian11.net.nt.: No route to host
May 29 13:11:23 debian5 sm-mta[27676]: n4T9OJqo025342: to=<elena@net.nt>, ctladdr=<user@elena.net.nt> (1000/1000), delay=00:47:02, xdelay=00:00:06, mailer=esmtp, pri=979071, relay=debian11.net.nt. [192.168.16.11], dsn=4.0.0, stat=Deferred: debian11.net.nt.: No route to host
May 29 13:21:23 debian5 sm-mta[27717]: n4T9OJqo025342: to=<elena@net.nt>, ctladdr=<user@elena.net.nt> (1000/1000), delay=00:57:02, xdelay=00:00:06, mailer=esmtp, pri=1069071, relay=debian11.net.nt. [192.168.16.11], dsn=4.0.0, stat=Deferred: debian11.net.nt.: No route to host
May 29 13:31:23 debian5 sm-mta[27738]: n4T9OJqo025342: to=<elena@net.nt>, ctladdr=<user@elena.net.nt> (1000/1000), delay=01:07:02, xdelay=00:00:06, mailer=esmtp, pri=1159071, relay=debian11.net.nt. [192.168.16.11], dsn=4.0.0, stat=Deferred: debian11.net.nt.: No route to host
May 29 13:41:23 debian5 sm-mta[27776]: n4T9OJqo025342: to=<elena@net.nt>, ctladdr=<user@elena.net.nt> (1000/1000), delay=01:17:02, xdelay=00:00:06, mailer=esmtp, pri=1249071, relay=debian11.net.nt. [192.168.16.11], dsn=4.0.0, stat=Deferred: debian11.net.nt.: No route to host
May 29 13:51:23 debian5 sm-mta[27797]: n4T9OJqo025342: to=<elena@net.nt>, ctladdr=<user@elena.net.nt> (1000/1000), delay=01:27:02, xdelay=00:00:06, mailer=esmtp, pri=1339071, relay=debian11.net.nt. [192.168.16.11], dsn=4.0.0, stat=Deferred: debian11.net.nt.: No route to host
May 29 14:01:23 debian5 sm-mta[27835]: n4T9OJqo025342: to=<elena@net.nt>, ctladdr=<user@elena.net.nt> (1000/1000), delay=01:37:02, xdelay=00:00:06, mailer=esmtp, pri=1429071, relay=debian11.net.nt. [192.168.16.11], dsn=4.0.0, stat=Deferred: debian11.net.nt.: No route to host
прошло 79 минут
14:10:35
#apt-cache search squid
adzapper - proxy advertisement zapper add-on
awffull - web server log analysis program
biosquid - utilities for biological sequence analysis
biosquid-dev - headers and static library for biological sequence analysis
calamaris - log analyzer for Squid or Oops proxy log files
ccze - A robust, modular log coloriser
dansguardian - Web content filtering
frox - Transparent caching ftp proxy
gadmin-squid - GTK+ configuration tool for squid
gadmin-squid-dbg - GTK+ configuration tool for squid (debug)
...
squid3 - A full featured Web Proxy cache (HTTP proxy)
squid3-cgi - A full featured Web Proxy cache (HTTP proxy) - control CGI
squid3-common - A full featured Web Proxy cache (HTTP proxy) - common files
squidclient - A full featured Web Proxy cache (HTTP proxy) - control utility
squidguard - filter, redirector and access controller plug for Squid
squidtaild - Squid log monitoring program
squidview - monitors and analyses squid access.log files
srg - Fast, Flexible and Detailed log analysis for the Squid Proxy
tinyproxy - A lightweight, non-caching, optionally anonymizing http proxy
zope-cachefu - suite of Zope products for speeding up Plone
прошло 99 минут
15:49:42
#apt-get install squid3 squidview
2009/05/29 15:51:22| Making directories in /var/spool/squid3/05
2009/05/29 15:51:22| Making directories in /var/spool/squid3/06
2009/05/29 15:51:22| Making directories in /var/spool/squid3/07
2009/05/29 15:51:22| Making directories in /var/spool/squid3/08
2009/05/29 15:51:22| Making directories in /var/spool/squid3/09
2009/05/29 15:51:22| Making directories in /var/spool/squid3/0A
2009/05/29 15:51:22| Making directories in /var/spool/squid3/0B
2009/05/29 15:51:23| Making directories in /var/spool/squid3/0C
2009/05/29 15:51:23| Making directories in /var/spool/squid3/0D
2009/05/29 15:51:23| Making directories in /var/spool/squid3/0E
2009/05/29 15:51:23| Making directories in /var/spool/squid3/0F
Restarting Squid HTTP Proxy 3.0: squid3.
Настраивается пакет squidview (0.72-1) ...
15:51:25
#vim /etc/squid3/

Статистика

Время первой команды журнала12:48:29 2009- 5-29
Время последней команды журнала15:51:25 2009- 5-29
Количество командных строк в журнале7
Процент команд с ненулевым кодом завершения, %14.29
Процент синтаксически неверно набранных команд, % 0.00
Суммарное время работы с терминалом *, час 0.08
Количество командных строк в единицу времени, команда/мин 1.54
Частота использования команд
vim2|============================| 28.57%
make2|============================| 28.57%
tail1|==============| 14.29%
apt-cache1|==============| 14.29%
apt-get1|==============| 14.29%
____
*) Интервалы неактивности длительностью 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$