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

Содержание

Журнал

Среда (03/14/07)

/dev/pts/0
17:12:07
#netstat -lnp | grep 53
;; Query time: 78 msec
;; SERVER: 192.168.16.15#53(192.168.16.15)
;; WHEN: Wed Mar 14 16:52:32 2007
;; MSG SIZE  rcvd: 139
tcp        0      0 192.168.16.3:53         0.0.0.0:*               LISTEN     17075/named
tcp        0      0 127.0.0.1:53            0.0.0.0:*               LISTEN     17075/named
tcp        0      0 127.0.0.1:953           0.0.0.0:*               LISTEN     17075/named
tcp6       0      0 :::53                   :::*                    LISTEN     17075/named
tcp6       0      0 ::1:953                 :::*                    LISTEN     17075/named
udp        0      0 192.168.16.3:53         0.0.0.0:*                          17075/named
udp        0      0 127.0.0.1:53            0.0.0.0:*                          17075/named
udp        0      0 0.0.0.0:5353            0.0.0.0:*                          2594/avahi-daemon:
udp6       0      0 :::53                   :::*                               17075/named
unix  2      [ ACC ]     STREAM     LISTENING     6521     2532/hald           @/var/run/hald/dbus-eWeWjp4dXb
unix  2      [ ACC ]     STREAM     LISTENING     6522     2532/hald           @/var/run/hald/dbus-FiR4a4wUuk
unix  2      [ ACC ]     STREAM     LISTENING     8499     2899/gnome-settings /tmp/orbit-user/linc-b53-0-5d85280adbea4
;; Query time: 1 msec
;; SERVER: 192.168.16.15#53(192.168.16.15)
;; WHEN: Wed Mar 14 16:49:53 2007
:
-------------------------------------------------------------------------------------------------------------------------------
17:12:27
#pwd
/etc/xinetd.d
прошло 28 минут
17:41:18
#cd ..

17:41:22
#ls
acpi                  esound                libpaper.d      rc4.d
adduser.conf          exim4                 locale.gen      rc5.d
adjtime               fonts                 localtime       rc6.d
aliases               foomatic              login.defs      rc.local
alsa                  fstab                 logrotate.conf  rcS.d
alternatives          gaim                  logrotate.d     reportbug.conf
anacrontab            gconf                 lsb-base        resolvconf
apm                   gdm                   magic           resolv.conf
apt                   gimp                  mailcap         rmt
at.deny               gnome                 mailcap.order   rpc
...
dictionaries-common   java                  pmount.allow    wodim.conf
discover.conf         kde3                  ppp             wpa_supplicant
discover.conf-2.6     kernel-img.conf       profile         X11
discover.conf.d       ldap                  protocols       xdg
discover.d            ld.so.cache           python          xinetd.conf
dm                    ld.so.conf            python2.4       xinetd.d
dpkg                  ld.so.conf.d          rc0.d           xml
emacs                 ld.so.hwcappkgs       rc1.d
email-addresses       libao.conf            rc2.d
environment           libgda                rc3.d
17:41:25
#vim /etc/named.conf
17:42:08
#ps
  PID TTY          TIME CMD
 8643 pts/2    00:00:00 bash
17895 pts/2    00:00:00 ps
17:42:38
#man ps
/dev/pts/3
17:44:07
$ps -aux
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   1944   652 ?        Ss   09:29   0:01 init [2]
root         2  0.0  0.0      0     0 ?        S    09:29   0:00 [migration/0]
root         3  0.0  0.0      0     0 ?        SN   09:29   0:00 [ksoftirqd/0]
root         4  0.0  0.0      0     0 ?        S<   09:29   0:00 [events/0]
root         5  0.0  0.0      0     0 ?        S<   09:29   0:00 [khelper]
root         6  0.0  0.0      0     0 ?        S<   09:29   0:00 [kthread]
root         9  0.0  0.0      0     0 ?        S<   09:29   0:00 [kblockd/0]
root        10  0.0  0.0      0     0 ?        S<   09:29   0:00 [kacpid]
...
user     12998  0.0  1.8  33940 18552 ?        S    15:10   0:03 /usr/bin/gaim
root     13404  0.0  0.2   8640  2664 ?        Ss   15:27   0:00 sshd: root
bind     17075  0.0  0.2  30264  2792 ?        Ssl  17:11   0:00 /usr/sbin/named
root     17903  0.0  0.1   3940  1148 pts/2    S+   17:42   0:00 man ps
root     17911  0.0  0.0   3996   824 pts/2    S+   17:42   0:00 pager -s
user     17948  1.7  0.3   9276  3220 ?        S    17:44   0:00 xterm -class UX
user     17954  2.3  0.0   3628   524 pts/3    Ss+  17:44   0:00 script -f -q /h
user     18001  0.2  0.0   3632   416 pts/3    S+   17:44   0:00 script -f -q /h
user     18002  2.3  0.2   6276  2920 pts/4    Ss   17:44   0:00 bash -i
user     18041  0.0  0.0   4296  1008 pts/4    R+   17:44   0:00 ps -aux
17:44:16
$ps -aux | grep named
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
bind     17075  0.0  0.2  30264  2792 ?        Ssl  17:11   0:00 /usr/sbin/named -u bind
user     18056  0.0  0.0   3744   764 pts/4    R+   17:44   0:00 grep named
17:44:38
$ps -aux | grep telnet
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
user     18079  0.0  0.0   3740   768 pts/4    R+   17:45   0:00 grep telnet
17:45:17
$ps -aux | grep named
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
bind     17075  0.0  0.2  30264  2792 ?        Ssl  17:11   0:00 /usr/sbin/named -u bind
user     18092  0.0  0.0   3744   764 pts/4    R+   17:45   0:00 grep named
17:45:33
$ps -aux | grep bind
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
bind     17075  0.0  0.2  30264  2792 ?        Ssl  17:11   0:00 /usr/sbin/named -u bind
user     18103  0.0  0.0   3740   764 pts/4    R+   17:45   0:00 grep bind
17:45:43
$vim /etc/named.conf
/dev/pts/0
17:47:58
#ps -aux | grep named
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
bind     17075  0.0  0.2  30264  2792 ?        Ssl  17:11   0:00 /usr/sbin/named -u bind
root     18435  0.0  0.0   3740   760 pts/2    R+   17:52   0:00 grep named
/dev/pts/3
17:48:25
$pwd
/home/user
17:48:37
$su -
Password:
l3-agent is already running: pid=3711; pidfile=/root/.lilalo/l3-agent.pid
17:48:57
#pwd
/root
17:49:00
#cd ~

17:49:07
#pwd
/root
17:49:10
#cd ..

17:49:14
#pwd
/
17:49:16
#cd etc

17:49:21
#pwd
/etc
17:49:23
#ls
acpi                  debconf.conf          gshadow-          libpaper.d      pam.conf           services
adduser.conf          debian_version        gssapi_mech.conf  locale.gen      pam.d              sestatus.conf
adjtime               default               gtk-2.0           localtime       pango              sgml
aliases               defoma                hal               login.defs      papersize          shadow
alsa                  deluser.conf          host.conf         logrotate.conf  passwd             shadow-
alternatives          dhcp3                 hostname          logrotate.d     passwd-            shells
anacrontab            dictd                 hosts             lsb-base        perl               skel
apm                   dictionaries-common   hosts.allow       magic           pmount.allow       sound
apt                   discover.conf         hosts.deny        mailcap         ppp                ssh
at.deny               discover.conf-2.6     hotplug           mailcap.order   profile            ssl
...
cron.hourly           gdm                   java              Muttrc          resolv.conf        wodim.conf
cron.monthly          gimp                  kde3              nanorc          rmt                wpa_supplicant
crontab               gnome                 kernel-img.conf   Net             rpc                X11
cron.weekly           gnome-vfs-2.0         ldap              netscsid.conf   sane.d             xdg
csh                   gnome-vfs-mime-magic  ld.so.cache       network         screenrc           xinetd.conf
csh.cshrc             gre.d                 ld.so.conf        NetworkManager  scrollkeeper.conf  xinetd.d
csh.login             groff                 ld.so.conf.d      networks        scsi_id.config     xml
csh.logout            group                 ld.so.hwcappkgs   nsswitch.conf   securetty
cups                  group-                libao.conf        openoffice      security
dbus-1                gshadow               libgda            opt             selinux
17:49:26
#vim /etc/named.conf
17:50:12
#cd ~

17:50:53
#pwd
/root
17:50:55
#ls
install
17:50:58
#cd ..

17:51:02
#ls
bin   cdrom  etc   initrd      lib    lost+found  mnt  proc  sbin     srv  tmp  var
boot  dev    home  initrd.img  lib64  media       opt  root  selinux  sys  usr  vmlinuz
17:51:04
#cd usr

17:51:12
#ls
bin  games  include  lib  lib64  local  lost+found  sbin  share  src  X11R6
/dev/pts/0
17:52:09
#locate -A named.conf

/dev/pts/3
17:52:25
#cd sbin

17:52:33
#ls
accept                     eximstats                              lpdomatic                   su-to-root
accessdb                   exim_tidydb                            lpinfo                      synaptic
acpid                      exinext                                lpmove                      syslog2eximlog
addgroup                   exipick                                lsusb                       syslogd-listfiles
add-shell                  exiqgrep                               mkboot                      syslog-facility
adduser                    exiqsumm                               mkinitramfs                 tcpd
alsaconf                   exiwhat                                mkinitramfs-kpkg            tcpdchk
alsactl                    filefrag                               mklost+found                tcpdmatch
anacron                    foomatic-addpjloptions                 named                       thinkpad-keys
arp                        foomatic-cleanupdrivers                named-checkconf             traceroute
...
exicyclog                  invoke-rc.d                            select-default-ispell       vigr
exigrep                    ispell-autobuildhash                   select-default-wordlist     vipw
exim                       ispellconfig                           semanage                    visudo
exim4                      itox                                   semodule                    vpddecode
exim_checkaccess           laptop-detect                          sendmail                    writevt
exim_convert4r4            load_policy                            sestatus                    xconv.pl
exim_dbmbuild              locale-gen                             se_synaptic                 xinetd
exim_dumpdb                logrotate                              setsebool                   xresprobe
exim_fixdb                 lpadmin                                setvesablank                zic
exim_lock                  lpc                                    sshd
17:52:35
#ls | grep named
named
named-checkconf
named-checkzone
17:53:12
#cd named
bash: cd: named: Not a directory
17:53:40
#ls -l |grep named
-rwxr-xr-x 1 root root 336576 2007-01-29 15:35 named
-rwxr-xr-x 1 root root  12312 2007-01-29 15:35 named-checkconf
-rwxr-xr-x 1 root root  10544 2007-01-29 15:35 named-checkzone
17:54:02
#vim named-checkconf
17:54:33
#man find
17:59:24
#man locate
/dev/pts/0
18:00:59
#locate named* -A

18:03:38
#locate named*

18:03:42
#locate -d ./ -c -w -p
locate: ./: Is a directory
0
18:08:44
#locate -d / -c -w -p
locate: /: Is a directory
0
18:09:00
#locate -d / -c -w -p *named*
locate: /: Is a directory
0
18:09:17
#locate -d /etc -c -w -p *named*
locate: /etc: Is a directory
0
18:09:29
#find -name named.conf -print
./bind/named.conf
18:15:40
#pwd
/etc
18:16:00
#ls
acpi                  debconf.conf          gshadow-          libpaper.d      pam.conf           services
adduser.conf          debian_version        gssapi_mech.conf  locale.gen      pam.d              sestatus.conf
adjtime               default               gtk-2.0           localtime       pango              sgml
aliases               defoma                hal               login.defs      papersize          shadow
alsa                  deluser.conf          host.conf         logrotate.conf  passwd             shadow-
alternatives          dhcp3                 hostname          logrotate.d     passwd-            shells
anacrontab            dictd                 hosts             lsb-base        perl               skel
apm                   dictionaries-common   hosts.allow       magic           pmount.allow       sound
apt                   discover.conf         hosts.deny        mailcap         ppp                ssh
at.deny               discover.conf-2.6     hotplug           mailcap.order   profile            ssl
...
cron.hourly           gdm                   java              Muttrc          resolv.conf        wodim.conf
cron.monthly          gimp                  kde3              nanorc          rmt                wpa_supplicant
crontab               gnome                 kernel-img.conf   Net             rpc                X11
cron.weekly           gnome-vfs-2.0         ldap              netscsid.conf   sane.d             xdg
csh                   gnome-vfs-mime-magic  ld.so.cache       network         screenrc           xinetd.conf
csh.cshrc             gre.d                 ld.so.conf        NetworkManager  scrollkeeper.conf  xinetd.d
csh.login             groff                 ld.so.conf.d      networks        scsi_id.config     xml
csh.logout            group                 ld.so.hwcappkgs   nsswitch.conf   securetty
cups                  group-                libao.conf        openoffice      security
dbus-1                gshadow               libgda            opt             selinux
18:16:07
#cd bind

18:16:15
#ls
db.0  db.127  db.255  db.empty  db.local  db.root  named.conf  named.conf.local  named.conf.options  rndc.key  zones.rfc1918
18:16:17
#vim named.conf
18:20:54
#vim named.conf
18:21:26
#vim db.local
18:22:02
#vim db.root
18:22:42
#vim db.127
18:23:10
#vim named.conf.local
18:23:36
#vim named.conf.options
18:24:22
#vim named.conf
18:28:07
#vim named.conf.local
18:28:14
#vim db.127
18:28:35
#vim db.0
18:29:13
#vim db.127
18:29:22
#vim db.255
18:29:30
#vim db.empty
18:29:59
#vim db.local
прошло 10 минут
18:40:47
#named status
usage: named [-4|-6] [-c conffile] [-d debuglevel] [-f|-g] [-n number_of_cpus]
             [-p port] [-s] [-t chrootdir] [-u username]
             [-m {usage|trace|record}]
named: extra command line arguments
18:43:39
#rndc status
number of zones: 4
debug level: 0
xfers running: 0
xfers deferred: 0
soa queries in progress: 0
query logging is OFF
recursive clients: 0/1000
tcp clients: 0/100
server is up and running
18:44:13
#exit
exit
/dev/pts/3
18:50:52
#exit
exit

Статистика

Время первой команды журнала17:12:07 2007- 3-14
Время последней команды журнала18:50:52 2007- 3-14
Количество командных строк в журнале71
Процент команд с ненулевым кодом завершения, %16.90
Процент синтаксически неверно набранных команд, % 0.00
Суммарное время работы с терминалом *, час 1.65
Количество командных строк в единицу времени, команда/мин 0.72
Частота использования команд
vim19|========================| 24.05%
ls10|============| 12.66%
cd10|============| 12.66%
pwd8|==========| 10.13%
grep8|==========| 10.13%
locate7|========| 8.86%
ps7|========| 8.86%
man3|===| 3.80%
exit2|==| 2.53%
rndc1|=| 1.27%
netstat1|=| 1.27%
named1|=| 1.27%
find1|=| 1.27%
su1|=| 1.27%
____
*) Интервалы неактивности длительностью 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$