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

Содержание

Журнал

Пятница (04/03/09)

/dev/ttyp1
19:12:06
#tree /root
/root
0 directories, 0 files
19:12:11
#ls /dev
console  psaux  ptypc  ram4    tty13  tty26  tty39  tty51  tty7   ttypb
disk     ptmx   ptypd  ram5    tty14  tty27  tty4   tty52  tty8   ttypc
full     ptyp0  ptype  ram6    tty15  tty28  tty40  tty53  tty9   ttypd
hda1     ptyp1  ptypf  ram7    tty16  tty29  tty41  tty54  ttyp0  ttype
initctl  ptyp2  ram0   ram8    tty17  tty3   tty42  tty55  ttyp1  ttypf
input    ptyp3  ram1   ram9    tty18  tty30  tty43  tty56  ttyp2  urandom
kmem     ptyp4  ram10  random  tty19  tty31  tty44  tty57  ttyp3  xconsole
kmsg     ptyp5  ram11  shm     tty2   tty32  tty45  tty58  ttyp4  xen
log      ptyp6  ram12  tty     tty20  tty33  tty46  tty59  ttyp5  zero
MAKEDEV  ptyp7  ram13  tty0    tty21  tty34  tty47  tty6   ttyp6
mapper   ptyp8  ram14  tty1    tty22  tty35  tty48  tty60  ttyp7
mem      ptyp9  ram15  tty10   tty23  tty36  tty49  tty61  ttyp8
null     ptypa  ram2   tty11   tty24  tty37  tty5   tty62  ttyp9
port     ptypb  ram3   tty12   tty25  tty38  tty50  tty63  ttypa
19:12:26
#ls /dev -l
итого 0
crw------- 1 root root  5,  1 2009-03-31 16:25 console
drwxr-xr-x 3 root root     60 2009-03-31 16:25 disk
crw-rw-rw- 1 root root  1,  7 2009-03-31 16:25 full
brw-rw---- 1 root root  3,  1 2009-03-31 16:25 hda1
prw------- 1 root root      0 2009-03-31 16:25 initctl
drwxr-xr-x 2 root root     60 2009-03-31 16:25 input
crw-r----- 1 root root  1,  2 2009-03-31 16:25 kmem
crw-rw---- 1 root root  1, 11 2009-03-31 16:25 kmsg
srw-rw-rw- 1 root root      0 2009-03-31 16:25 log
...
crw-rw-rw- 1 root tty   3, 10 2009-03-31 16:25 ttypa
crw-rw-rw- 1 root tty   3, 11 2009-03-31 16:25 ttypb
crw-rw-rw- 1 root tty   3, 12 2009-03-31 16:25 ttypc
crw-rw-rw- 1 root tty   3, 13 2009-03-31 16:25 ttypd
crw-rw-rw- 1 root tty   3, 14 2009-03-31 16:25 ttype
crw-rw-rw- 1 root tty   3, 15 2009-03-31 16:25 ttypf
crw-rw-rw- 1 root root  1,  9 2009-03-31 16:25 urandom
prw-r----- 1 root adm       0 2009-04-03 19:12 xconsole
drwxr-xr-x 2 root root     60 2009-03-31 16:25 xen
crw-rw-rw- 1 root root  1,  5 2009-03-31 16:25 zero
19:12:36
#ls /dev/hda1
brw-rw---- 1 root root 3, 1 2009-03-31 16:25 /dev/hda1
19:13:28
#tree /dev/hda1
/dev/hda1 [error opening dir]
0 directories, 0 files
19:13:45
#dmidecode -s }
Invalid string keyword: }
Valid string keywords are:
  bios-vendor
  bios-version
  bios-release-date
  system-manufacturer
  system-product-name
  system-version
  system-serial-number
  system-uuid
...
  baseboard-asset-tag
  chassis-manufacturer
  chassis-type
  chassis-version
  chassis-serial-number
  chassis-asset-tag
  processor-family
  processor-manufacturer
  processor-version
  processor-frequency
19:14:18
#dmidecode -s | less
19:14:46
#ping ya.ru
PING ya.ru (213.180.204.8) 56(84) bytes of data.
64 bytes from ya.ru (213.180.204.8): icmp_seq=1 ttl=51 time=52.8 ms
64 bytes from ya.ru (213.180.204.8): icmp_seq=2 ttl=51 time=52.2 ms
--- ya.ru ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 52.207/52.504/52.802/0.375 ms
прошло 107 минут
21:02:30
#exot
bash: exot: command not found

Статистика

Время первой команды журнала19:12:06 2009- 4- 3
Время последней команды журнала21:02:30 2009- 4- 3
Количество командных строк в журнале9
Процент команд с ненулевым кодом завершения, %11.11
Процент синтаксически неверно набранных команд, %11.11
Суммарное время работы с терминалом *, час 0.04
Количество командных строк в единицу времени, команда/мин 3.38
Частота использования команд
ls3|==============================| 30.00%
dmidecode2|====================| 20.00%
tree2|====================| 20.00%
ping1|==========| 10.00%
less1|==========| 10.00%
exot1|==========| 10.00%
____
*) Интервалы неактивности длительностью 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$