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

Содержание

Журнал

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

/dev/pts/0
17:25:42
$ls
adduser                   libdb4.8                   libxfixes3
apt                       libedit2                   libxft2
aptitude                  libept1                    libxkbfile1
apt-utils                 libexpat1                  libxmu6
base-files                libextutils-cbuilder-perl  libxmuu1
base-passwd               libextutils-parsexs-perl   libxpm4
bash                      libfontconfig1             libxrender1
bash-completion           libfreetype6               libxt6
binutils                  libgcc1                    libyaml-perl
bsdmainutils              libgcrypt11                libyaml-syck-perl
...
libbz2-1.0                libwrap0                   vim-tiny
libc6                     libx11-6                   wget
libc6-dev                 libx11-data                whiptail
libc6-xen                 libxapian22                x11-apps
libc-bin                  libxau6                    x11-common
libc-dev-bin              libxaw7                    xauth
libcomerr2                libxcb1                    xkb-data
libcurl3                  libxcursor1                xz-utils
libcwidget3               libxdmcp6                  zlib1g
libdb4.7                  libxext6
17:25:42
$pwd
/usr/share/doc
/dev/pts/0
17:26:12
$cd /usr/share/doc

17:26:16
$ls
adduser                   libdb4.8                   libxfixes3
apt                       libedit2                   libxft2
aptitude                  libept1                    libxkbfile1
apt-utils                 libexpat1                  libxmu6
base-files                libextutils-cbuilder-perl  libxmuu1
base-passwd               libextutils-parsexs-perl   libxpm4
bash                      libfontconfig1             libxrender1
bash-completion           libfreetype6               libxt6
binutils                  libgcc1                    libyaml-perl
bsdmainutils              libgcrypt11                libyaml-syck-perl
...
libbz2-1.0                libwrap0                   vim-tiny
libc6                     libx11-6                   wget
libc6-dev                 libx11-data                whiptail
libc6-xen                 libxapian22                x11-apps
libc-bin                  libxau6                    x11-common
libc-dev-bin              libxaw7                    xauth
libcomerr2                libxcb1                    xkb-data
libcurl3                  libxcursor1                xz-utils
libcwidget3               libxdmcp6                  zlib1g
libdb4.7                  libxext6
17:26:16
$cd bash*

17:26:48
$ls
changelog.Debian.gz  inputrc.arrows    README.bash_completion.gz
CHANGES.gz           INTRO.gz          README.commands.gz
COMPAT.gz            NEWS.gz           README.Debian.gz
copyright            POSIX.gz
FAQ                  README.abs-guide
17:26:56
$su -
Пароль:
l3-agent is already running: pid=1418; pidfile=/root/.lilalo/l3-agent.pid
17:28:07
#apt-get install links lynx w3m
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Будут установлены следующие дополнительные пакеты:
  file libgc1c2 libmagic1 lynx-cur mime-support
Предлагаемые пакеты:
  lynx-cur-wrapper w3m-img menu w3m-el migemo
НОВЫЕ пакеты, которые будут установлены:
  file libgc1c2 libmagic1 links lynx lynx-cur mime-support w3m
обновлено 0, установлено 8 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
...
Обрабатываются триггеры для man-db ...
Настраивается пакет libmagic1 (5.04-5) ...
Настраивается пакет file (5.04-5) ...
Настраивается пакет libgc1c2 (1:6.8-1.2) ...
Настраивается пакет mime-support (3.48-1) ...
Настраивается пакет w3m (0.5.2-9) ...
Настраивается пакет links (2.3~pre1-1) ...
Настраивается пакет lynx-cur (2.8.8dev.5-1) ...
update-alternatives: используется `/usr/bin/lynx.cur' для предоставления `/usr/bin/lynx' (lynx) в автоматический режим.
Настраивается пакет lynx (2.8.8dev.5-1) ...
17:29:23
#exit
exit
17:29:48
$w3m bash.org.ru
наступила сорок лет назад.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
412769 [ 1419 ] смешно / [:||||:] / не смешно / утверждена 2011-08-15 в 11:11
Wadem:âЕсли яâтебя застукаю с мужиком, когда вернусь с вахты, я (грозит
AsTi:
пальцем)...½Ñ!..Ñприсоединюсь!
суровые бу¼Ð½Ð¸ организаторамешно / утверждена 2011-08-15 в]13:11
ххх: Отдам 40 кг кабачков в сильные руки.
просятся выступать везде и у которых нет денег на репетиции"
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
...
МЅÐТы пойми, парням иногда!нравится когда у девушки животик. Животик - это
xxx…Ñ…: Поесть бы тока..
таÐНу с этим я неТолько.вот у тебя не животик, Маш. У ТЕБЯ ПУЗО
БÐО КОÐнам щас батюшка приходил, офис освящ
ЖРАТЬ ГАМБУРГЕРЫ БЕГОМВСПОРТЗАÐ
ZyfƒÑобожаю своего папочку!
”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”â”
Zyf: ну что делает настоящий мужик в такой ситуации?
412745 [ 2104 ] смешно / [:||||:] / не смешно / утверждена 2011-08-13Ðв½08:11¸Ñ‚ "больше ее не
≪ ↑ ↓ Viewing <bash.org.ru - Цитатник Рунета>
17:30:30
$xxx
bash: linx: команда не найдена
17:30:46
$links vkontakte.ru
17:31:21
$cd

17:37:19
$mkdir source doc pies

17:37:41
$ls
doc  laba  pies  source  tmp
17:37:44
$mkdir scripting/perl
mkdir: невозможно создать каталог «scripting/perl»: Нет такого файла или каталога
17:38:38
$mkdir -p scripting/perl

17:39:29
$ls /scripting
ls: невозможно получить доступ к /scripting: Нет такого файла или каталога
17:39:39
$ls
doc  laba  pies  scripting  source  tmp
17:39:48
$ls /scripting/
ls: невозможно получить доступ к /scripting/: Нет такого файла или каталога
17:40:26
$ls scripting/
perl
17:40:33
$mkdir -p scripting/python

17:41:37
$mkdir -p doc/pics/forweb/info/2002/summer

17:43:49
$ls doc/
pics
17:43:58
$ls doc/pics/
forweb
17:44:13
$mkdir doc/scripting/perl
mkdir: невозможно создать каталог «doc/scripting/perl»: Нет такого файла или каталога
17:45:02
$mkdir -p doc/scripting/perl

17:45:40
$mkdir -p doc/scripting/python

17:47:37
$cd doc

17:47:45
$ls
c  pics  scripting
17:47:47
$cd pics

17:48:16
$ls
forweb
17:48:18
$cd

17:48:26
$cd

17:48:27
$ls
doc  laba  pics  pies  scripting  source  tmp
17:48:32
$pwd
/home/user
17:48:43
$cd doc

17:48:51
$pwd
/home/user/doc
17:48:54
$cd

17:48:57
$pwd
/home/user
17:49:01
$touch a b c

17:49:14
$ls
a  b  c  doc  laba  pics  pies  scripting  source  tmp
17:49:29
$rm a b c

17:49:35
$ls
doc  laba  pics  pies  scripting  source  tmp
17:49:38
$rm pics
rm: невозможно удалить «pics»: Это каталог
17:49:53
$mkdir
.bash_history  doc/           .links2/       scripting/     .w3m/
.bash_logout   .l3rc          pics/          source/
.bash_profile  laba/          pies/          tmp/
.bashrc        .lilalo/       .profile       .viminfo
17:49:53
$ls
doc  laba  pics  pies  scripting  source  tmp
17:50:28
$ls pi
pics/ pies/
17:50:28
$ls
doc  laba  pics  pies  scripting  source  tmp
17:50:55
$rmdir -p pics/forweb/info/2002/summer

17:51:16
$ls
doc  laba  pies  scripting  source  tmp
17:51:19
$rmdir -p pies/

17:51:46
$ls
doc  laba  scripting  source  tmp
17:51:53
$rm -r doc

17:52:27
$ls
laba  scripting  source  tmp
17:52:28
$ls -l
итого 16
drwxr-xr-x 9 root root 4096 Авг 15 09:07 laba
drwxr-xr-x 4 user user 4096 Авг 15 15:41 scripting
drwxr-xr-x 2 user user 4096 Авг 15 15:37 source
drwxr-xr-x 2 user user 4096 Авг 15 12:54 tmp
17:53:25
$touch a x c

17:54:39
$ls -l
итого 16
-rw-r--r-- 1 user user    0 Авг 15 15:54 a
-rw-r--r-- 1 user user    0 Авг 15 15:54 c
drwxr-xr-x 9 root root 4096 Авг 15 09:07 laba
drwxr-xr-x 4 user user 4096 Авг 15 15:41 scripting
drwxr-xr-x 2 user user 4096 Авг 15 15:37 source
drwxr-xr-x 2 user user 4096 Авг 15 12:54 tmp
-rw-r--r-- 1 user user    0 Авг 15 15:54 x
17:54:43
$mkdir - p docs/ger/789/ytr
mkdir: невозможно создать каталог «docs/ger/789/ytr»: Нет такого файла или каталога
17:55:29
$mkdir -p docs/ger/789/ytr

17:55:53
$ls
-  a  c  docs  laba  p  scripting  source  tmp  x
17:55:56
$rm -v docs/ger/789/ytr
rm: невозможно удалить «docs/ger/789/ytr»: Это каталог
17:56:23
$rm -rv docs/ger/789/ytr
удален каталог: «docs/ger/789/ytr»
17:56:55
$ls
-  a  c  docs  laba  p  scripting  source  tmp  x
17:56:57
$rm -ri docs/ger/789/ytrls
rm: удалить каталог «docs/ger/789/ytrls»? y
17:58:30
$ls
-  a  c  docs  laba  p  scripting  source  tmp  x
17:58:33
$rm -ri docs/ger/789/ytrls
rm: невозможно удалить «docs/ger/789/ytrls»: Нет такого файла или каталога
17:58:56
$cd docs

17:59:02
$ls
ger
17:59:04
$cd

17:59:22
$rm -r docs

17:59:32
$ls
-  a  c  laba  p  scripting  source  tmp  x
17:59:35
$rm a z x
rm: невозможно удалить «z»: Нет такого файла или каталога
17:59:46
$rm a x c
rm: невозможно удалить «a»: Нет такого файла или каталога
rm: невозможно удалить «x»: Нет такого файла или каталога
18:00:10
$ls
-  laba  p  scripting  source  tmp
18:00:15
$rm p
rm: невозможно удалить «p»: Это каталог
18:00:30
$rm -r p

18:00:37
$ls
-  laba  scripting  source  tmp
18:03:32
$cd laba

18:04:02
$cd

18:04:08
$cd bin
bash: cd: bin: Нет такого файла или каталога
18:06:15
$su -c "chmod -R 777 laba"
Пароль:
18:06:57
$cd ~/laba/proj/x-project

18:08:48
$cp x y z ~/laba/bin

18:09:03
$cp -R ~/laba/proj/x-project ~/laba/proj/x-backup

18:10:51
$ls
x  y  z
18:10:55
$cp -fi ~/laba/proj/x-project ~/laba/proj/x-backup
cp: пропускается каталог «/home/user/laba/proj/x-project»
18:13:54
$cp ~/laba/proj/x-project ~/laba/proj/x-backup
cp: пропускается каталог «/home/user/laba/proj/x-project»
18:15:39
$cd

18:16:00
$ls
-  laba  scripting  source  tmp
18:16:02
$mkdir ~/backup

18:16:16
$ls
-  backup  laba  scripting  source  tmp
18:16:18
$cd

18:17:02
$mv ~/laba/proj/x-backup backup

18:17:44
$ls
-  backup  laba  scripting  source  tmp
18:17:46
$ls /backup
ls: невозможно получить доступ к /backup: Нет такого файла или каталога
18:18:07
$ls /backup/
ls: невозможно получить доступ к /backup/: Нет такого файла или каталога
18:18:13
$ls -l backup/
итого 4
drwxr-xr-x 3 user user 4096 Авг 15 16:15 x-backup
18:18:24
$ls backup/
x-backup
18:18:33
$ls backup/x-backup/
x  x-project  y  z
18:19:21
$ls -l /etc
итого 616
-rw-r--r-- 1 root root    2981 Фев 18 07:38 adduser.conf
drwxr-xr-x 2 root root    4096 Авг 15 15:29 alternatives
drwxr-xr-x 6 root root    4096 Авг 15 09:06 apt
-rw-r--r-- 1 root root    1657 Апр 10  2010 bash.bashrc
-rw-r--r-- 1 root root   57063 Ноя 16  2010 bash_completion
drwxr-xr-x 2 root root    4096 Мар  5 14:46 bash_completion.d
-rw-r--r-- 1 root root     344 Янв 23  2011 bindresvport.blacklist
drwxr-xr-x 3 root root    4096 Мар  7 13:02 ca-certificates
-rw-r--r-- 1 root root    6332 Мар  7 13:03 ca-certificates.conf
...
drwxr-xr-x 2 root root    4096 Фев 18 07:38 sysctl.d
drwxr-xr-x 2 root root    4096 Фев 18 07:36 terminfo
-rw-r--r-- 1 root root       8 Авг 15 09:07 timezone
-rw-r--r-- 1 root root    1260 Май 30  2008 ucf.conf
drwxr-xr-x 4 root root    4096 Фев 18 07:38 udev
drwxr-xr-x 3 root root    4096 Фев 18 07:44 ufw
drwxr-xr-x 2 root root    4096 Фев 18 07:38 vim
drwxr-xr-x 2 root root    4096 Авг 15 15:29 w3m
-rw-r--r-- 1 root root    4496 Сен  5  2010 wgetrc
drwxr-xr-x 7 root root    4096 Мар  7 13:05 X11

Статистика

Время первой команды журнала17:25:42 2011- 8-15
Время последней команды журнала18:19:21 2011- 8-15
Количество командных строк в журнале101
Процент команд с ненулевым кодом завершения, %16.83
Процент синтаксически неверно набранных команд, % 0.99
Суммарное время работы с терминалом *, час 0.89
Количество командных строк в единицу времени, команда/мин 1.88
Частота использования команд
ls40|=======================================| 39.60%
cd17|================| 16.83%
mkdir12|===========| 11.88%
rm12|===========| 11.88%
pwd4|===| 3.96%
cp4|===| 3.96%
touch2|=| 1.98%
rmdir2|=| 1.98%
su2|=| 1.98%
links1|| 0.99%
apt-get1|| 0.99%
w3m1|| 0.99%
mv1|| 0.99%
xxx1|| 0.99%
exit1|| 0.99%
____
*) Интервалы неактивности длительностью 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$