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

Содержание

Журнал

Понедельник (03/07/11)

/dev/hvc0
15:17:47
$l3 pwd
/users/Vilen/NT-Ladm//user
15:17:47
$l3 pwd
/users/Vilen/NT-Ladm//user
15:17:47
$l3 pwd
/users/Vilen/NT-Ladm//user
15:17:47
$l3 pwd
/users/Vilen/NT-Ladm//user
15:17:47
$l3 pwd
/users/Vilen/NT-Ladm//user
15:17:47
$l3 pwd
/users/Vilen/NT-Ladm//user
15:17:47
$l3 pwd
/users/Vilen/NT-Ladm//user
15:17:47
$l3 pwd
/users/Vilen/NT-Ladm//user
15:17:47
$l3 pwd
/users/Vilen/NT-Ladm//user

Среда (03/09/11)

/dev/pts/3
19:06:18
$cd

19:06:19
$ls
passwd
19:06:19
$vim passwd
19:06:45
$ex passwd
"passwd" 16L, 700C
Переход в режим Ex. Для перехода в Обычный режим наберите "visual"
:q

Четверг (03/10/11)

/dev/pts/9
10:35:04
$pwd
/root
10:35:09
$cd

10:35:12
$ls
passwd
10:35:16
$ls
passwd
10:35:21
$ls
passwd
10:35:52
$pwd
/home/user
10:35:59
$ls
passwd
10:36:19
$ls
passwd
10:37:00
$pwd
/home/user
10:37:05
$pwd
/home/user
10:37:10
$ls
passwd
10:37:12
$pwd
/home/user
10:37:24
$ls
passwd
10:37:28
$ls
passwd
10:37:34
$pwd
/home/user
10:37:37
$ls
passwd
10:37:39
$ls
passwd
10:37:47
$ls -la
итого 44
drwxr-xr-x 3 user user 4096 Мар  9 20:11 .
drwxr-xr-x 3 root root 4096 Мар  7 15:18 ..
-rw------- 1 user user   59 Мар  9 20:11 .bash_history
-rw-r--r-- 1 user user  220 Апр 10  2010 .bash_logout
-rw-r--r-- 1 user root   21 Мар  7 16:16 .bash_profile
-rw-r--r-- 1 user user 3227 Мар  7 16:15 .bashrc
-rw-r--r-- 1 user root   51 Мар  9 08:10 .l3rc
drwxr-xr-x 2 user root 4096 Мар 10 11:35 .lilalo
-rw-r--r-- 1 user user  700 Мар  9 20:06 passwd
-rw-r--r-- 1 user user  675 Апр 10  2010 .profile
-rw------- 1 user user 1523 Мар  9 20:11 .viminfo
10:37:58
$/sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 00:16:3e:00:00:04
          inet addr:192.168.16.4  Bcast:192.168.16.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:76058 errors:0 dropped:0 overruns:0 frame:0
          TX packets:64399 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:25277195 (24.1 MiB)  TX bytes:8844857 (8.4 MiB)
          Interrupt:246
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:13 errors:0 dropped:0 overruns:0 frame:0
          TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:920 (920.0 B)  TX bytes:920 (920.0 B)

Понедельник (04/11/11)

/dev/pts/2
17:38:52
$cd /

17:39:00
$ls
bin  boot  dev  etc  home  lib  log  lost+found  media  mnt  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var
17:39:12
$cd ~

17:39:30
$pwd
/home/user
17:39:36
$cd..
bash: cd..: команда не найдена
17:39:58
$cd ..

17:40:03
$pwd
/home
17:40:10
$ls
user
17:40:28
$cd

17:40:43
$ls -lF
итого 0
17:41:01
$ls -alF
итого 36
drwxr-xr-x 3 user user 4096 Мар  7 14:18 ./
drwxr-xr-x 3 root root 4096 Мар  7 13:18 ../
-rw------- 1 user user   12 Мар  7 14:18 .bash_history
-rw-r--r-- 1 user user  220 Апр 10  2010 .bash_logout
-rw-r--r-- 1 user root   21 Мар  7 14:16 .bash_profile
-rw-r--r-- 1 user user 3227 Мар  7 14:15 .bashrc
-rw-r--r-- 1 user root   51 Апр 11 06:14 .l3rc
drwxr-xr-x 2 user root 4096 Апр 11 15:38 .lilalo/
-rw-r--r-- 1 user user  675 Апр 10  2010 .profile
17:41:29
$cd /usr/share/doc

17:42:34
$ls
adduser                 ifupdown                   libgpg-error0           libtext-iconv-perl     net-tools
apt                     info                       libgpm2                 libtext-wrapi18n-perl  openssh-blacklist
aptitude                initscripts                libgssapi-krb5-2        libudev0               openssh-blacklist-extra
apt-utils               insserv                    libice6                 libusb-0.1-4           openssh-client
base-files              install-info               libidn11                libuuid1               openssh-server
base-passwd             iproute                    libk5crypto3            libwrap0               openssl
bash                    iptables                   libkeyutils1            libx11-6               passwd
bash-completion         iputils-ping               libkrb5-3               libx11-data            perl
binutils                isc-dhcp-client            libkrb5support0         libxapian22            perl-base
bsdmainutils            isc-dhcp-common            libldap-2.4-2           libxau6                perl-modules
...
fontconfig-config       libextutils-cbuilder-perl  libsigc++-2.0-0c2a      manpages               vim-tiny
gcc                     libextutils-parsexs-perl   libslang2               manpages-dev           wget
gcc-4.4                 libfontconfig1             libsm6                  mawk                   whiptail
gcc-4.4-base            libfreetype6               libsqlite3-0            module-init-tools      x11-apps
gnupg                   libgcc1                    libss2                  mount                  x11-common
gpgv                    libgcrypt11                libssh2-1               nano                   xauth
grep                    libgdbm3                   libssl0.9.8             ncurses-base           xkb-data
groff-base              libgmp3c2                  libstdc++6              ncurses-bin            xz-utils
gzip                    libgnutls26                libtasn1-3              netbase                zlib1g
hostname                libgomp1                   libtext-charwidth-perl  netcat-traditional
17:42:40
$cd bash

17:44:52
$ls
changelog.Debian.gz  COMPAT.gz  FAQ             INTRO.gz  POSIX.gz          README.bash_completion.gz  README.Debian.gz
CHANGES.gz           copyright  inputrc.arrows  NEWS.gz   README.abs-guide  README.commands.gz
17:44:58
$cd bash-completion
bash: cd: bash-completion: Нет такого файла или каталога
17:45:54
$ls bash
ls: невозможно получить доступ к bash: Нет такого файла или каталога
17:49:08
$cd bash
bash: cd: bash: Нет такого файла или каталога
17:49:17
$cd

17:49:25
$ls bash
ls: невозможно получить доступ к bash: Нет такого файла или каталога
17:49:38
$ls

17:49:48
$ls

17:50:00
$cd /user
bash: cd: /user: Нет такого файла или каталога
17:50:15
$cd ~

17:50:23
$ls

17:50:25
$cd /

17:50:34
$ls
bin  boot  dev  etc  home  lib  log  lost+found  media  mnt  opt  proc  root  sbin  selinux  srv  sys  tmp  usr  var
17:50:37
$cd ~

17:51:09
$ls

17:51:11
$pwd
/home/user
17:51:24
$mkdir source doc pics

17:52:25
$ls
doc  pics  source
17:52:34
$mkdir -p doc/scripting/perl

17:54:19
$mkdir -p doc/scripting/python doc/c pics/forweb/info/2002/summer

17:55:31
$pwd
/home/user
17:55:47
$ls
doc  pics  source
17:55:55
$cd doc/scripting/python

17:57:39
$ls

17:57:41
$pwd
/home/user/doc/scripting/python
17:57:45
$cd~
bash: cd~: команда не найдена
17:58:13
$cd ~

17:58:17
$ls
doc  pics  source
17:58:19
$pwd
/home/user
17:58:23
$touch a b c

17:58:46
$rm a b c

17:59:35
$rm -r doc

18:01:33
$pwd
/home/user
18:01:40
$ls -l
итого 8
-rw-r--r-- 1 user user    0 Апр 11 16:01 a1
-rw-r--r-- 1 user user    0 Апр 11 16:01 b1
-rw-r--r-- 1 user user    0 Апр 11 16:01 c1
drwxr-xr-x 3 user user 4096 Апр 11 16:01 my
drwxr-xr-x 2 user user 4096 Апр 11 15:52 source
18:02:32
$rmdir -i pics/forweb/info/2002/summer
rmdir: неверный ключ -- i
Попробуйте `rmdir --help' для получения более подробного описания.
18:03:07
$rmdir -p -i my/forweb/info/2002/summer
rmdir: неверный ключ -- i
Попробуйте `rmdir --help' для получения более подробного описания.
18:03:24
$rmdir -pi my/forweb/info/2002/summer
rmdir: неверный ключ -- i
Попробуйте `rmdir --help' для получения более подробного описания.
18:03:32
$rmdir -i my/forweb/info/2002/summer
rmdir: неверный ключ -- i
Попробуйте `rmdir --help' для получения более подробного описания.
18:03:38
$cd my

18:03:48
$ls
forweb
18:03:51
$cd `
> cd ~
> ls
> pwd
> #ls
> q
> cd `
cd ~
ls
  ls
pwd
...
#ls
q
:user
bash: q: команда не найдена
bash: :user: команда не найдена
bash: cd: a1: Нет такого файла или каталога
a1  b1  c1  my  source
/home/user
bash: q: команда не найдена
bash: :user: команда не найдена
18:05:27
$ls
a1  b1  c1  my  source
18:06:23
$pwd
/home/user
18:06:32
$cd `
cd ~
ls
pwd
#ls
q
:user
18:06:32
$~
                  pwd
/home/user
18:06:58
$rm -i a1 b1 c1
rm: удалить пустой обычный файл «a1»? y
rm: удалить пустой обычный файл «b1»? y
rm: удалить пустой обычный файл «c1»? y
18:09:33
$rmdir -v my/foeweb/info/2002/summer
rmdir: удаление каталога, «my/foeweb/info/2002/summer»
rmdir: не удалось удалить «my/foeweb/info/2002/summer»: Нет такого файла или каталога
18:11:39
$rmdir -v my/forweb/info/2002/summer
rmdir: удаление каталога, «my/forweb/info/2002/summer»
18:11:59
$pwd
/home/user
18:12:13
$ls
my  source
18:12:16
$cd my/forweb/info/2002/summer
bash: cd: my/forweb/info/2002/summer: Нет такого файла или каталога
18:12:43
$cd my

18:12:49
$pwd
/home/user/my
18:12:53
$ls
forweb

Статистика

Время первой команды журнала15:17:47 2011- 3- 7
Время последней команды журнала18:12:53 2011- 4-11
Количество командных строк в журнале100
Процент команд с ненулевым кодом завершения, %11.00
Процент синтаксически неверно набранных команд, % 3.00
Суммарное время работы с терминалом *, час 0.62
Количество командных строк в единицу времени, команда/мин 2.68
Частота использования команд
ls34|==================================| 34.00%
cd22|======================| 22.00%
pwd16|================| 16.00%
l39|=========| 9.00%
rmdir6|======| 6.00%
mkdir3|===| 3.00%
rm3|===| 3.00%
cd~1|=| 1.00%
ifconfig1|=| 1.00%
touch1|=| 1.00%
cd..1|=| 1.00%
~1|=| 1.00%
ex1|=| 1.00%
vim1|=| 1.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$