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

Содержание

Журнал

Вторник (02/12/13)

/dev/pts/1
15:24:37
$su
Пароль:
root@debian1:/home/user# l3script
15:29:43
#telnet 192.168.13.2 chargen
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
Connection closed by foreign host.
15:30:28
#telnet 192.168.13.2 echo
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
Connection closed by foreign host.
15:31:15
#telnet 192.168.13.2 echo
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
Connection closed by foreign host.
15:33:04
#telnet 192.168.13.2 echo
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
Connection closed by foreign host.
15:33:12
#telnet 192.168.13.2 echo
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
Connection closed by foreign host.
15:33:27
#telnet 192.168.13.2 echo
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
^]
telnet> q
Connection closed.
15:33:51
#telnet 192.168.13.2 echo
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
^]
telnet> q
Connection closed.
15:34:10
#telnet 192.168.13.2 echo
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
^]
telnet> q
Connection closed.
15:34:37
#telnet 192.168.13.2 chargen
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgh
"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghi
#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij
$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk
%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl
&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklm
'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn
...
cdefghijklmnopqrstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLM
defghijklmnopqrstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMN
efghijklmnopqrstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNO
fghijklmnopqrstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOP
ghijklmnopqrstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQ
hijklmnopqrstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQR
ijklmnopqrstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRS
jklmno
telnet> q
Connection closed.
15:35:01
#telnet 192.168.13.2 chargen
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
Connection closed by foreign host.
15:35:07
#telnet 192.168.13.2 chargen
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
Connection closed by foreign host.
15:35:33
#telnet 192.168.13.2 chargen
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
Connection closed by foreign host.
15:35:47
#telnet 192.168.13.22 chargen
Trying 192.168.13.22...
Connected to 192.168.13.22.
Escape character is '^]'.
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefgh
"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghi
#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghij
$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk
%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijkl
&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklm
'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmn
...
opqrstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY
pqrstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ
qrstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[
rstuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\
stuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]
tuvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^
uvwxyz{|}!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
vwxyz{
telnet> q
Connection closed.
15:37:35
#telnet 192.168.13.2 chargen
Trying 192.168.13.2...
Connected to 192.168.13.2.
Escape character is '^]'.
Connection closed by foreign host.

Среда (02/13/13)

07:42:27
#ls
bigfile      Light_Alloy_4.4.784_RC2_by_FAFNIR.exe  matrix.jpg    press_any_key_to_continue.jpg
bin          lpi 1                                  names         proj
freebsd.jpg  lpi 2                                  ogo.jpg       text
granata.jpg  man_smb_conf                           pamyatka.pdf  touchlist
прошло 63 минуты
08:45:46
#nmap localhost
Starting Nmap 5.00 ( http://nmap.org ) at 2013-02-13 14:22 EET
Interesting ports on localhost.localdomain (127.0.0.1):
Not shown: 995 closed ports
PORT    STATE SERVICE
7/tcp   open  echo
19/tcp  open  chargen
22/tcp  open  ssh
25/tcp  open  smtp
111/tcp open  rpcbind
Nmap done: 1 IP address (1 host up) scanned in 0.14 seconds
прошло >4 часов
13:22:28
#netstat nlp | grep 25

13:23:11
#netstat nlp
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 debian1.net.nt:ssh      192.168.15.105:49767    ESTABLISHED
tcp        0      0 debian1.net.nt:48223    xgu.ru:18030            TIME_WAIT
tcp        0      0 debian1.net.nt:48224    xgu.ru:18030            TIME_WAIT
tcp        0     52 debian1.net.nt:ssh      192.168.15.101:50453    ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  6      [ ]         DGRAM                    3659     /dev/log
unix  2      [ ]         DGRAM                    2381     @/org/kernel/udev/udevd
unix  2      [ ]         DGRAM                    9406
unix  2      [ ]         DGRAM                    8357
unix  3      [ ]         STREAM     CONNECTED     7918
unix  3      [ ]         STREAM     CONNECTED     7917
unix  2      [ ]         DGRAM                    7916
unix  2      [ ]         DGRAM                    3674
unix  3      [ ]         DGRAM                    2386
unix  3      [ ]         DGRAM                    2385
13:23:15
#nmap localhost
Starting Nmap 5.00 ( http://nmap.org ) at 2013-02-13 14:23 EET
Interesting ports on localhost.localdomain (127.0.0.1):
Not shown: 995 closed ports
PORT    STATE SERVICE
7/tcp   open  echo
19/tcp  open  chargen
22/tcp  open  ssh
25/tcp  open  smtp
111/tcp open  rpcbind
Nmap done: 1 IP address (1 host up) scanned in 0.16 seconds
13:23:50
#vim /etc/hosts.
13:23:50
#vim /etc/hosts.allow
13:24:21
#~
# 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.
#
# The PARANOID wildcard matches any host whose name does not match its
# address.s.deny" 20L, 906C
#
# You may wish to enable this to ensure any programs that don't
# validate looked up hostnames still leave understandable logs. In past
# versions of Debian this has been the default.
# ALL: PARANOID
#chargen : 192.168.13.0/24
13:24:31
#~
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 debian1.net.nt:ssh      192.168.15.105:49767    ESTABLISHED
tcp        0      0 debian1.net.nt:41985    xgu.ru:18030            TIME_WAIT
tcp        0      0 debian1.net.nt:41983    xgu.ru:18030            TIME_WAIT
tcp        0      0 debian1.net.nt:41982    xgu.ru:18030            TIME_WAIT
tcp        0      0 debian1.net.nt:41986    xgu.ru:18030            TIME_WAIT
tcp        0      0 debian1.net.nt:41984    xgu.ru:18030            TIME_WAIT
tcp        0      0 debian1.net.nt:48227    xgu.ru:18030            TIME_WAIT
tcp        0    372 debian1.net.nt:ssh      192.168.15.101:50453    ESTABLISHED
...
unix  6      [ ]         DGRAM                    3659     /dev/log
unix  2      [ ]         DGRAM                    2381     @/org/kernel/udev/udevd
unix  2      [ ]         DGRAM                    9406
unix  2      [ ]         DGRAM                    8357
unix  3      [ ]         STREAM     CONNECTED     7918
unix  3      [ ]         STREAM     CONNECTED     7917
unix  2      [ ]         DGRAM                    7916
unix  2      [ ]         DGRAM                    3674
unix  3      [ ]         DGRAM                    2386
unix  3      [ ]         DGRAM                    2385
13:24:54
#nmap localhost
Starting Nmap 5.00 ( http://nmap.org ) at 2013-02-13 14:25 EET
Interesting ports on localhost.localdomain (127.0.0.1):
Not shown: 995 closed ports
PORT    STATE SERVICE
7/tcp   open  echo
19/tcp  open  chargen
22/tcp  open  ssh
25/tcp  open  smtp
111/tcp open  rpcbind
Nmap done: 1 IP address (1 host up) scanned in 0.11 seconds
13:25:29
#vim /etc/xinetd.conf
13:26:29
#telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
220 debian1.net.nt ESMTP Exim 4.72 Wed, 13 Feb 2013 14:27:08 +0200
^C
^[
^]
telnet> q
Connection closed.
13:27:34
#netstat nlp
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 debian1.net.nt:ssh      192.168.15.105:49767    ESTABLISHED
tcp        0      0 debian1.net.nt:41994    xgu.ru:18030            TIME_WAIT
tcp        0    372 debian1.net.nt:ssh      192.168.15.101:50453    ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  6      [ ]         DGRAM                    3659     /dev/log
unix  2      [ ]         DGRAM                    2381     @/org/kernel/udev/udevd
unix  2      [ ]         DGRAM                    9406
unix  2      [ ]         DGRAM                    8357
unix  3      [ ]         STREAM     CONNECTED     7918
unix  3      [ ]         STREAM     CONNECTED     7917
unix  2      [ ]         DGRAM                    7916
unix  2      [ ]         DGRAM                    3674
unix  3      [ ]         DGRAM                    2386
unix  3      [ ]         DGRAM                    2385
13:27:42
#ps waux | grep LISTAEN
root      4088  0.0  0.1   5076   736 pts/3    S+   14:28   0:00 grep LISTAEN
13:28:07
#ps waux | grep LISTEN
root      4097  0.0  0.1   5076   736 pts/3    S+   14:28   0:00 grep LISTEN
13:28:17
#ps waux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.1   2084   700 ?        Ss   Feb12   0:02 init [2]
root         2  0.0  0.0      0     0 ?        S    Feb12   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    Feb12   0:00 [ksoftirqd/0]
root         4  0.0  0.0      0     0 ?        S    Feb12   0:10 [kworker/0:0]
root         5  0.0  0.0      0     0 ?        S    Feb12   0:00 [kworker/u:0]
root         6  0.0  0.0      0     0 ?        S    Feb12   0:00 [migration/0]
root         7  0.0  0.0      0     0 ?        S    Feb12   0:01 [watchdog/0]
root         8  0.0  0.0      0     0 ?        S<   Feb12   0:00 [cpuset]
root         9  0.0  0.0      0     0 ?        S<   Feb12   0:00 [khelper]
...
root      3304  0.0  0.2   5744  1220 pts/2    S    Feb12   0:00 su
root      3306  0.0  0.3   6272  1748 pts/2    S    Feb12   0:00 bash
root      3307  0.0  0.1   5144   752 pts/2    S+   Feb12   0:00 script -f -c l3script -q /root/.lilalo//1851329037241549071-1360679
root      3338  0.0  0.0   5148   412 pts/2    S+   Feb12   0:01 script -f -c l3script -q /root/.lilalo//1851329037241549071-1360679
root      3339  0.0  0.3   6348  1900 pts/3    Ss   Feb12   0:00 l3script
root      3417  0.0  0.1   2448   832 ?        Ss   Feb12   0:00 /usr/sbin/xinetd -pidfile /var/run/xinetd.pid -stayalive -inetd_com
root      3548  0.0  0.1   1760   564 tty1     Ss+  Feb12   0:00 /sbin/getty 38400 tty1
root      3871  0.0  0.5   8524  2980 ?        Ss   11:40   0:00 sshd: root@pts/0
root      3874  0.0  0.5   7408  2972 pts/0    Ss+  11:41   0:00 -bash
root      4112  0.0  0.2   5624  1056 pts/3    R+   14:28   0:00 ps waux
13:28:22
#ls /usr/local/etc/xinetd.d/
chargen  echo

Статистика

Время первой команды журнала15:24:37 2013- 2-12
Время последней команды журнала13:28:22 2013- 2-13
Количество командных строк в журнале32
Процент команд с ненулевым кодом завершения, %31.25
Процент синтаксически неверно набранных команд, % 0.00
Суммарное время работы с терминалом *, час 0.31
Количество командных строк в единицу времени, команда/мин 1.70
Частота использования команд
telnet15|==========================================| 42.86%
ps3|========| 8.57%
netstat3|========| 8.57%
vim3|========| 8.57%
nmap3|========| 8.57%
grep3|========| 8.57%
ls2|=====| 5.71%
~2|=====| 5.71%
su1|==| 2.86%
____
*) Интервалы неактивности длительностью 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$