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

Содержание

Журнал

Вторник (03/11/08)

/dev/pts/3
16:15:48
$ls ~ -lRF
/home/user:
total 0
drwx------ 2 user users 256 Mar 13  2007 Desktop/
drwx------ 2 user users  80 Mar 13  2007 Documents/
drwxr-xr-x 3 user users  72 Mar 11 16:11 backup/
drwxr-xr-x 2 user users 120 Mar 11 16:04 bin/
drwxr-xr-x 3 user users  80 Mar 11 16:11 proj/
drwxr-xr-x 2 user users  80 Mar 13  2007 public_html/
drwxr-xr-x 2 user users  48 Mar 11 15:51 source/
/home/user/Desktop:
...
drwxr-xr-x 2 user users 120 Mar 11 16:03 x-project/
/home/user/proj/x-project:
total 0
-rw-r--r-- 1 user users 0 Mar 11 16:03 x
-rw-r--r-- 1 user users 0 Mar 11 16:03 y
-rw-r--r-- 1 user users 0 Mar 11 16:03 z
/home/user/public_html:
total 0
/home/user/source:
total 0
16:15:55
$ls ~ -l
total 0
drwx------ 2 user users 256 Mar 13  2007 Desktop/
drwx------ 2 user users  80 Mar 13  2007 Documents/
drwxr-xr-x 3 user users  72 Mar 11 16:11 backup/
drwxr-xr-x 2 user users 120 Mar 11 16:04 bin/
drwxr-xr-x 3 user users  80 Mar 11 16:11 proj/
drwxr-xr-x 2 user users  80 Mar 13  2007 public_html/
drwxr-xr-x 2 user users  48 Mar 11 15:51 source/
16:15:59
$ls ~ -lR
/home/user:
total 0
drwx------ 2 user users 256 Mar 13  2007 Desktop
drwx------ 2 user users  80 Mar 13  2007 Documents
drwxr-xr-x 3 user users  72 Mar 11 16:11 backup
drwxr-xr-x 2 user users 120 Mar 11 16:04 bin
drwxr-xr-x 3 user users  80 Mar 11 16:11 proj
drwxr-xr-x 2 user users  80 Mar 13  2007 public_html
drwxr-xr-x 2 user users  48 Mar 11 15:51 source
/home/user/Desktop:
...
drwxr-xr-x 2 user users 120 Mar 11 16:03 x-project
/home/user/proj/x-project:
total 0
-rw-r--r-- 1 user users 0 Mar 11 16:03 x
-rw-r--r-- 1 user users 0 Mar 11 16:03 y
-rw-r--r-- 1 user users 0 Mar 11 16:03 z
/home/user/public_html:
total 0
/home/user/source:
total 0
16:16:08
$cd

16:16:26
$ls
Desktop  Documents  backup  bin  proj  public_html  source
16:16:29
$cd proj/x-project

16:16:50
$ln -s x x-symlink

16:17:20
$ls
x  x-symlink  y  z
16:17:23
$ln x x-hard

16:17:41
$ls
x  x-hardlink  x-symlink  y  z
16:17:43
$ls -l
total 0
-rw-r--r-- 2 user users 0 Mar 11 16:03 x
-rw-r--r-- 2 user users 0 Mar 11 16:03 x-hardlink
lrwxrwxrwx 1 user users 1 Mar 11 16:17 x-symlink -> x
-rw-r--r-- 1 user users 0 Mar 11 16:03 y
-rw-r--r-- 1 user users 0 Mar 11 16:03 z
16:17:48
$ls -la
total 0
drwxr-xr-x 2 user users 184 Mar 11 16:17 .
drwxr-xr-x 3 user users  80 Mar 11 16:11 ..
-rw-r--r-- 2 user users   0 Mar 11 16:03 x
-rw-r--r-- 2 user users   0 Mar 11 16:03 x-hardlink
lrwxrwxrwx 1 user users   1 Mar 11 16:17 x-symlink -> x
-rw-r--r-- 1 user users   0 Mar 11 16:03 y
-rw-r--r-- 1 user users   0 Mar 11 16:03 z
16:17:55
$ls -li
total 0
131812 -rw-r--r-- 2 user users 0 Mar 11 16:03 x
131812 -rw-r--r-- 2 user users 0 Mar 11 16:03 x-hardlink
131824 lrwxrwxrwx 1 user users 1 Mar 11 16:17 x-symlink -> x
131813 -rw-r--r-- 1 user users 0 Mar 11 16:03 y
131814 -rw-r--r-- 1 user users 0 Mar 11 16:03 z
16:18:09
$rm x

16:18:26
$ls -li
total 0
131812 -rw-r--r-- 1 user users 0 Mar 11 16:03 x-hardlink
131824 lrwxrwxrwx 1 user users 1 Mar 11 16:17 x-symlink -> x
131813 -rw-r--r-- 1 user users 0 Mar 11 16:03 y
131814 -rw-r--r-- 1 user users 0 Mar 11 16:03 z
16:18:28
$mv x-hardlink x

16:19:08
$ls -il
total 0
131812 -rw-r--r-- 1 user users 0 Mar 11 16:03 x
131824 lrwxrwxrwx 1 user users 1 Mar 11 16:17 x-symlink -> x
131813 -rw-r--r-- 1 user users 0 Mar 11 16:03 y
131814 -rw-r--r-- 1 user users 0 Mar 11 16:03 z
16:19:14
$rm x

16:19:38
#top
top - 11:00:56 up 1 day, 17:44,  5 users,  load average: 0.00, 0.00, 0.00
Tasks:  98 total,   1 running,  88 sleeping,   9 stopped,   0 zombie
Cpu(s):  1.0%us,  0.0%sy,  0.0%ni, 99.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    524436k total,   499212k used,    25224k free,    49724k buffers
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
Swap:        0k total,        0k used,        0k free,   271028k cached
 7976 root      15   0 10420 7100 1408 S  0.7  1.4   0:10.46 l3-agent
    1 root      15   0   724  288  248 S  0.0  0.1   0:00.06 init
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.01 ksoftirqd/0
...
    6 root      20  -5     0    0    0 S  0.0  0.0   0:00.00 kthread
    7 root      20  -5     0    0    0 S  0.0  0.0   0:00.00 xenwatch
    8 root      14  -5     0    0    0 S  0.0  0.0   0:00.00 xenbus
   14 root      10  -5     0    0    0 S  0.0  0.0   0:00.00 kblockd/0
   16 root      20  -5     0    0    0 S  0.0  0.0   0:00.00 kseriod
   53 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush
   54 root      20   0     0    0    0 S  0.0  0.0   0:00.00 pdflush
   55 root      10  -5     0    0    0 S  0.0  0.0   0:00.01 kswapd0
   56 root      20  -5     0    0    0 S  0.0  0.0   0:00.00 aio/0
  599 root      20  -5     0    0    0 S  0.0  0.0   0:00.00 kmirrord
/dev/pts/3
16:19:44
$rm x
rm: cannot remove `x': No such file or directory
16:19:53
$rm x-symlink
[user@sles2:x-project]$ ls -il
total 0
131824 lrwxrwxrwx 1 user users 1 Mar 11 16:17 x-symlink -> x
131813 -rw-r--r-- 1 user users 0 Mar 11 16:03 y
131814 -rw-r--r-- 1 user users 0 Mar 11 16:03 z
16:20:08
$ls -il
total 0
131813 -rw-r--r-- 1 user users 0 Mar 11 16:03 y
131814 -rw-r--r-- 1 user users 0 Mar 11 16:03 z
16:20:10
$touch x

16:20:23
$cd /etc
[user@sles2:x-project]$ ls -il
total 0
131812 -rw-r--r-- 1 user users 0 Mar 11 16:20 x
131813 -rw-r--r-- 1 user users 0 Mar 11 16:03 y
131814 -rw-r--r-- 1 user users 0 Mar 11 16:03 z
прошло 80 минут
17:41:07
$ls
DIR_COLORS                 ghostscript       mime.types            rmt
HOSTNAME                   gpm               modprobe.conf         rpasswd.conf
Muttrc                     gre.d             modprobe.conf.local   rpc
NetworkManager             group             modprobe.d            rsyncd.conf
SuSE-release               group.YaST2save   mono                  rsyncd.secrets
SuSEconfig                 group.old         motd                  scpm.users
X11                        grub.conf         mtab                  screenrc
YaST2                      gssapi_mech.conf  my.cnf                scsi_id.config
acpi                       hal               mysqlaccess.conf      securetty
adjtime                    host.conf         named.d               security
...
evms.conf                  logrotate.conf    pythonstart           xml
exports                    logrotate.d       raw                   xpdfrc
fam.conf                   lsb-release       rc.d                  xpdfrc-cjk
fb.modes                   lsb-release.d     rc.d.README           xpdfrc-cjk-auto
fdprm                      lvm               rc.splash             xpdfrc-cjk.sjis
filesystems                magic             rc.status             xscreensaver
fonts                      mail.rc           reader.conf.d         zmd
fstab                      mailcap           resmgr.conf           zshenv
ftpusers                   manpath.config    resmgr.conf.d         zshrc
generateCRL.conf           microcode.dat     resolv.conf
17:41:09
$ls -lF
drwxr-xr-x  2 root  root       112 Mar 13  2007 ifplugd/
drwxr-xr-x 11 root  root      3384 Apr 24  2007 init.d/
-rw-r--r--  1 root  root      2981 Mar 13  2007 inittab
-rw-r--r--  1 root  root      5162 Sep  1  2003 inputrc
-r--r--r--  1 root  root       814 Jun 16  2006 insserv.conf
drwxr-xr-x  2 root  root       240 Mar 13  2007 iproute2/
-rw-r--r--  1 root  root        71 Jun 16  2006 issue
-rw-r--r--  1 root  root        68 Jun 16  2006 issue.net
drwxr-xr-x  2 root  root       208 Mar 13  2007 ivman/
drwxr-xr-x  2 root  root        72 Mar 13  2007 java/
...
drwxr-xr-x  2 root  root       424 Mar  7 19:17 xinetd.d/
drwxr-xr-x  2 root  root       192 Mar 13  2007 xml/
-rw-r--r--  1 root  root      6407 Jun 16  2006 xpdfrc
-rw-r--r--  1 root  root      5960 Jun 16  2006 xpdfrc-cjk
-rw-r--r--  1 root  root         0 Jun 16  2006 xpdfrc-cjk-auto
-rw-r--r--  1 root  root      3517 Jun 16  2006 xpdfrc-cjk.sjis
drwxr-xr-x  2 root  root      6320 Mar 13  2007 xscreensaver/
drwxr-xr-x  3 root  root       152 Mar 13  2007 zmd/
-rw-r--r--  1 root  root       157 Jun 16  2006 zshenv
-rw-r--r--  1 root  root      6825 Jun 16  2006 zshrc
17:41:16
$ls skel
Documents  bin  public_html
17:41:25
$cd skel

17:41:37
$ls
Documents  bin  public_html
17:41:40
$cd

Среда (03/12/08)

11:00:57
#shutdown -h now

прошло >2 часов
/dev/pts/3
13:29:22
$ls
Desktop  Documents  backup  bin  proj  public_html  source
13:29:28
$find names
find: names: No such file or directory
13:30:27
$find /
find: /names: No such file or directory
13:30:47
#find names
[user@sles2:~]$ su root
Password:
find: names: No such file or directory
13:31:39
#ls
.DCOPserver_sles_:0                 .inputrc   .xemacs
.DCOPserver_sles__0                 .kde       .xim.template
.DCOPserver_sles_sles.chubba.net:2  .kermrc    .xinitrc.template
.DCOPserver_sles_sles.chubba.net_2  .l3rc      .xsession-errors
.ICEauthority                       .lilalo    .xsession-errors-192.168.16.2:1
.Xauthority                         .local     .xsession-errors-sles.chubba.net:1
.bash_history                       .mozilla   .xsession-errors-sles.chubba.net:2
.bash_profile                       .muttrc    .xtalkrc
.bashrc                             .profile   Desktop
.dmrc                               .qt        Documents
.dvipsrc                            .skel      backup
.emacs                              .urlview   bin
.exrc                               .viminfo   proj
.fonts                              .wapi      public_html
.fonts.cache-2                      .xcoralrc  source
13:34:28
#su user

13:34:46
$cd

13:34:50
$ls
Desktop  Documents  backup  bin  proj  public_html  source
13:34:54
$su root
Password:

Статистика

Время первой команды журнала16:15:48 2008- 3-11
Время последней команды журнала13:34:54 2008- 3-12
Количество командных строк в журнале40
Процент команд с ненулевым кодом завершения, %12.50
Процент синтаксически неверно набранных команд, % 0.00
Суммарное время работы с терминалом *, час 0.18
Количество командных строк в единицу времени, команда/мин 3.75
Частота использования команд
ls19|===============================================| 47.50%
cd6|===============| 15.00%
rm4|==========| 10.00%
find3|=======| 7.50%
ln2|=====| 5.00%
su2|=====| 5.00%
touch1|==| 2.50%
shutdown1|==| 2.50%
top1|==| 2.50%
mv1|==| 2.50%
____
*) Интервалы неактивности длительностью 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$