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

Содержание

Журнал

Пятница (01/12/07)

/dev/pts/3
10:56:06
$for i in *
> do
> mv "$i" "`echo $i | tr '[:lower:]' '[:upper:]'`"
> done
10:59:02
$ls
BACKUP  BIN   C        ERRLOG  FILE1  FILE3  NAMES    PICS  PROJECTX  SORTED         SOURCE  TEXT       UNSORTED
BASE    BODY  DESKTOP  FILE    FILE2  FILES  NEWFILE  PROJ  SH        SORTED_PASSWD  TEST    TOUCHLIST  VERY_LONG_FILE_NAME
10:59:11
$ps -aux | awk '{print $2; }'
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
PID
1
2
3
4
5
6
9
10
...
5090
5121
5122
5287
5288
5292
5323
5324
5593
5594
11:01:45
$cat /etc/passwd | awk -F: '{ if ($3>999) print; }'
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
user:x:1000:1000:user,,,:/home/user:/bin/bash
11:03:24
$echo $PATH | awk -F: '{for (n=1; n<=NF; n++) print $n; }'
/usr/local/bin
/usr/bin
/bin
/usr/games
11:05:37
$ls
BACKUP  BIN   C        ERRLOG  FILE1  FILE3  NAMES    PICS  PROJECTX  SORTED         SOURCE  TEXT       UNSORTED
BASE    BODY  DESKTOP  FILE    FILE2  FILES  NEWFILE  PROJ  SH        SORTED_PASSWD  TEST    TOUCHLIST  VERY_LONG_FILE_NAME
11:05:50
$echo $PATH | awk -F: '{for (n=1; n<=NF; n++) print $n; }' | xargs ls
expiry                                   mcd                                  uudecode
expr                                     mcheck                               uuencode
factor                                   mclasserase                          uuidgen
faillog                                  mcomp                                uxterm
fc-cache                                 mcookie                              uz
fc-cat                                   mcopy                                vi
fc-list                                  md5sum                               view
fc-match                                 md5sum.textutils                     viewres
fdformat                                 mdel                                 vim
file                                     mdeltree                             vimdiff
...
gnome-screensaver                        pinky                                zipinfo
gnome-screensaver-command                pitchplay                            zipnote
gnome-screensaver-preferences            pkill                                zipsplit
gnome-screenshot                         pl2pm                                zsoelim
gnome-search-tool                        pmap
/usr/games:
banner     gataxx  gnect     gnobots2   gnomine    gnotski  iagno     same-gnome
blackjack  glines  gnibbles  gnometris  gnotravex  gtali    mahjongg  sol
/usr/local/bin:
l3-agent  l3config.pm
11:06:19
$find / -name find\*
find: /proc/2863/task/2863/fd: Permission denied
find: /proc/2863/fd: Permission denied
find: /proc/2864/task/2864/fd: Permission denied
find: /proc/2864/fd: Permission denied
find: /proc/2865/task/2865/fd: Permission denied
find: /proc/2865/fd: Permission denied
find: /proc/2866/task/2866/fd: Permission denied
find: /proc/2866/fd: Permission denied
find: /proc/2867/task/2867/fd: Permission denied
find: /proc/2867/fd: Permission denied
...
/usr/share/man/man1/findaffix.1.gz
/usr/share/man/man8/findfs.8.gz
/usr/lib/xulrunner/components/find.xpt
/usr/lib/firefox/components/find.xpt
/usr/lib/python2.4/lib-old/find.pyc
/usr/lib/python2.4/lib-old/find.py
/usr/bin/findaffix
/usr/bin/find
/usr/bin/find2perl
find: /usr/lost+found: Permission denied
прошло 47 минут
11:54:16
$find / -regex ".*\.jpe?g"
/usr/share/doc/xsane-common/html/xsane-save.jpg
/usr/share/doc/xsane-common/html/xsane-setup-display.jpg
/usr/share/doc/xsane-common/html/xsane-batch-scan-delete.jpg
/usr/share/doc/xsane-common/html/xsane-mirror-x.jpg
/usr/share/doc/xsane-common/html/xsane-paper-portrait-center.jpg
/usr/share/doc/xsane-common/html/xsane-pipette-black.jpg
/usr/share/doc/xsane-common/html/xsane-batch-scan-add.jpg
/usr/share/doc/xsane-common/html/xsane-histogram.jpg
/usr/share/doc/xsane-common/html/xsane-setup-email.jpg
/usr/share/doc/xsane-common/html/xsane-rotate-180.jpg
...
/usr/lib/openoffice/share/gallery/www-back/wet-turquoise.jpg
/usr/lib/openoffice/share/gallery/www-back/linen-fine.jpg
/usr/lib/openoffice/share/gallery/www-back/stone.jpg
/usr/lib/openoffice/share/gallery/www-back/wood.jpg
/usr/lib/openoffice/share/gallery/www-back/blocks.jpg
/usr/lib/openoffice/share/gallery/www-back/confetti.jpg
/usr/lib/openoffice/share/gallery/www-back/fuzzy-grey.jpg
/usr/lib/openoffice/share/gallery/www-back/interstices.jpg
/usr/lib/openoffice/share/gallery/www-back/space.jpg
find: /usr/lost+found: Permission denied
11:55:52
$find / -size +10240 -ls
find: /proc/2570/fd: Permission denied
find: /proc/2574/task/2574/fd: Permission denied
find: /proc/2574/fd: Permission denied
find: /proc/2587/task/2587/fd: Permission denied
find: /proc/2587/fd: Permission denied
find: /proc/2603/task/2603/fd: Permission denied
find: /proc/2603/fd: Permission denied
find: /proc/2610/task/2610/fd: Permission denied
find: /proc/2610/task/2618/fd: Permission denied
find: /proc/2610/fd: Permission denied
...
1784390 5524 -rw-r--r--   1 root     root      5642186 Дек 16 16:55 /usr/lib/openoffice/share/config/images_crystal.zip
1784485 12168 -rw-r--r--   1 root     root     12440988 Дек 16 16:44 /usr/lib/openoffice/program/libsvx680li.so
1784421 6508 -rw-r--r--   1 root     root      6651904 Дек 16 16:42 /usr/lib/openoffice/program/types.rdb
1784641 10228 -rw-r--r--   1 root     root     10456884 Дек 16 16:44 /usr/lib/openoffice/program/libsc680li.so
1784637 10836 -rw-r--r--   1 root     root     11079668 Дек 16 16:44 /usr/lib/openoffice/program/libsw680li.so
1766482 10984 -rwxr-xr-x   1 root     root     11231188 Окт 10 00:45 /usr/lib/firefox/firefox-bin
1735597 7724 -rw-r--r--   1 root     root      7894064 Июл  4  2006 /usr/lib/python2.4/site-packages/qt.so
1735571 8032 -rw-r--r--   1 root     root      8210032 Дек 29 14:44 /usr/lib/libqt-mt.so.3.3.7
1735749 5240 -rw-r--r--   1 root     root      5352240 Мар 23  2005 /usr/lib/liblapack.so.3.0
find: /usr/lost+found: Permission denied
11:57:15
$find ~ -atime +2

11:58:03
$find ~ -atime +2с

12:00:04
$ыг -
bash: ыг: command not found
12:00:06
$su -
Password:
12:00:12
#find / -atime +2
/dev/.static/dev/rd/c4d22p1
/dev/.static/dev/rd/c0d22p4
/dev/.static/dev/rd/c2d30p4
/dev/.static/dev/rd/c6d20
/dev/.static/dev/rd/c2d13
/dev/.static/dev/rd/c3d14p5
/dev/.static/dev/rd/c1d25p7
/dev/.static/dev/rd/c2d10p1
/dev/.static/dev/rd/c4d22p5
/dev/.static/dev/rd/c3d18p5
...
/dev/.static/dev/rd/c5d25p6
/dev/.static/dev/rd/c5d8
/dev/.static/dev/rd/c4d31p1
/dev/.static/dev/rd/c4d5p3
/dev/.static/dev/rd/c6d10p2
/dev/.static/dev/rd/c2d3
/dev/.static/dev/rd/c6d2p2
/dev/.static/dev/rd/c0d28p6
/dev/.static/dev/rd/c4d6p7
/dev/.static/dev/rd/c3d6p1
12:00:30
#find /usr -atime +2

12:00:39
#find /usr -amin -5
/usr/share/locale/et/LC_MESSAGES
/usr/share/locale/az
/usr/share/locale/az/LC_MESSAGES
/usr/share/locale/rm
/usr/share/locale/rm/LC_MESSAGES
/usr/share/locale/de_DE
/usr/share/locale/de_DE/LC_MESSAGES
/usr/share/locale/lg
/usr/share/locale/lg/LC_TIME
/usr/share/locale/lg/LC_MESSAGES
...
/usr/share/fonts/X11/util
/usr/share/fonts/X11/Type1
/usr/share/fonts/truetype
/usr/share/fonts/truetype/arhangai
/usr/share/fonts/truetype/ttf-thryomanes
/usr/share/fonts/truetype/openoffice
/usr/share/fonts/truetype/ttf-dejavu
/usr/share/fonts/type1
/usr/share/fonts/type1/teams
/usr/share/fonts/type1/cyrillic
12:00:57
#find / -atime +2
/dev/.static/dev/rd/c2d30p4
/dev/.static/dev/rd/c6d20
/dev/.static/dev/rd/c2d13
/dev/.static/dev/rd/c3d14p5
/dev/.static/dev/rd/c1d25p7
/dev/.static/dev/rd/c2d10p1
/dev/.static/dev/rd/c4d22p5
/dev/.static/dev/rd/c3d18p5
/dev/.static/dev/rd/c5d23p3
/dev/.static/dev/rd/c7d30
...
/dev/.static/dev/rd/c4d31p1
/dev/.static/dev/rd/c4d5p3
/dev/.static/dev/rd/c6d10p2
/dev/.static/dev/rd/c2d3
/dev/.static/dev/rd/c6d2p2
/dev/.static/dev/rd/c0d28p6
/dev/.static/dev/rd/c4d6p7
/dev/.static/dev/rd/c3d6p1
/dev/.static/dev/rd/c7d10p5
/dev/.static/dev/rd/c3d30p2
12:01:24
#su -
l3-agent is already running: pid=5131; pidfile=/root/.lilalo/l3-agent.pid
12:01:30
#ssh root@192.168.15.1
root@192.168.15.1's password:
Last login: Thu Jan 11 16:26:23 2007 from linux6.unix.nt
Linux linux1 2.6.18-3-686 #1 SMP Mon Dec 4 16:41:14 UTC 2006 i686
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
l3-agent is already running: pid=5131; pidfile=/root/.lilalo/l3-agent.pid
12:01:38
#su - user
l3-agent is already running: pid=5946; pidfile=/home/user/.lilalo/l3-agent.pid
12:01:42
$find / -type l
/proc/2898/task/2898/fd/32
/proc/2898/task/2898/fd/33
/proc/2898/task/2898/fd/34
/proc/2898/task/2898/fd/35
/proc/2898/task/2898/fd/36
/proc/2898/task/2898/fd/39
/proc/2898/task/2898/fd/40
/proc/2898/task/2898/fd/41
/proc/2898/task/2898/fd/42
/proc/2898/task/2898/fd/43
...
/proc/2900/task/2911/fd/33
/proc/2900/task/2911/fd/34
/proc/2900/task/2911/fd/35
/proc/2900/task/2911/fd/36
/proc/2900/task/2911/fd/37
/proc/2900/task/2911/fd/38
/proc/2900/task/2911/fd/39
/proc/2900/task/2911/fd/40
/proc/2900/task/2911/fd/41
/proc/2900/task/2911/fd/42
12:02:05
$find / -user user
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/679862DAd01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/D824F6E4d01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/B44A9654d01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/F502E69Fd01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/A3408D2Ad01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/72E71B80d01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/42BBAFA3d01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/7A66AFA3d01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/5204E86Dd01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/679262DAd01
...
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/3FD806B3d01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/580D5FEBd01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/B9A0911Ed01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/70EF6FCCd01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/F0FDCF0Ed01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/595D322Dd01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/678260FAd01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/3309DBFAd01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/F0F6CF0Ed01
/home/user/.mozilla/firefox/oz2lfhvt.default/Cache/8E676AA0d01

Статистика

Время первой команды журнала10:56:06 2007- 1-12
Время последней команды журнала12:02:05 2007- 1-12
Количество командных строк в журнале23
Процент команд с ненулевым кодом завершения, %26.09
Процент синтаксически неверно набранных команд, % 4.35
Суммарное время работы с терминалом *, час 0.30
Количество командных строк в единицу времени, команда/мин 1.28
Частота использования команд
find11|============================| 28.21%
awk4|==========| 10.26%
}'4|==========| 10.26%
su3|=======| 7.69%
n<2|=====| 5.13%
n++)2|=====| 5.13%
echo2|=====| 5.13%
=NF2|=====| 5.13%
ls2|=====| 5.13%
ps1|==| 2.56%
for1|==| 2.56%
xargs1|==| 2.56%
ыг1|==| 2.56%
cat1|==| 2.56%
ssh1|==| 2.56%
999)1|==| 2.56%
____
*) Интервалы неактивности длительностью 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$