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

Содержание

Журнал

Вторник (03/14/06)

/dev/pts/7
12:33:57
$su
Password:
12:34:05
#vi /etc/bash.bashrc
12:37:32
#exit
exit
12:37:36
$passd
bash: passd: command not found
12:37:41
$passwd
.bash_history                  .gconf                         .mcop
.bash_profile                  .gconfd                        .mcoprc
.bashrc                        .gnome                         .mozilla
.DCOPserver_linux3.unix.nt__0  .gnome2                        my
.DCOPserver_linux3.unix.nt_:0  .gnome2_private                .qt
Desktop                        .ICEauthority                  .swp
.dia                           .kde                           .viminfo
.dmrc                          .kderc                         .Xauthority
.fonts                         .lilalo                        .xsession-errors
.fonts.conf                    Mail                           Диаграмма1.dia
/dev/pts/0
12:38:01
$passw
exit
bash: passw: command not found
12:38:05
$passwd
backup        gnats         lp            petya         sys
bin           hal           mail          proxy         user
daemon        identd        man           root          uucp
Debian-exim   igor          messagebus    saned         vasya
dictd         irc           news          sshd          www-data
games         lena          nobody        super-admin2
gdm           list          oleg          sync
12:38:05
$su
Password:
12:39:37
#vi /etc/bash.bashrc
/dev/tty1
12:41:17
$alias -?
bash: alias: -?: invalid option
alias: usage: alias [-p] [name[=value] ... ]
/dev/pts/0
12:44:46
#exit
exit
12:44:48
$cd /??
bash: cd: /??: No such file or directory
12:44:56
$cd /

12:44:58
$dir
bin   cdrom  etc   initrd      lib         media  opt   root  srv  tmp  var
boot  dev    home  initrd.img  lost+found  mnt    proc  sbin  sys  usr  vmlinuz
12:45:03
$cd home

12:45:07
$dir
igor  lena  lost+found  oleg  petya  super-admin2  user  vasya
/dev/pts/0
12:45:29
$su
exit
bash: /etc/bash.bashrc: line 18: syntax error near unexpected token `newline'
bash: /etc/bash.bashrc: line 18: `    alias ndir=>'
Password:
su: Authentication failure
Извините.
/dev/tty1
12:45:51
$vi
/dev/pts/0
12:46:50
$su
Password:
bash: /etc/bash.bashrc: line 18: syntax error near unexpected token `newline'
bash: /etc/bash.bashrc: line 18: `    alias ndir=>'
bash: /etc/bash.bashrc: line 18: syntax error near unexpected token `newline'
bash: /etc/bash.bashrc: line 18: `    alias ndir=>'
12:47:02
#vi /etc/bash.bashrc
12:47:52
#exit
exit
/dev/pts/0
12:48:28
$su
> do
> echo "Введите имя каталога"
                                               Password:
12:48:40
#vi /etc/bash.bashrc
12:49:17
#exit
exit
/dev/pts/0
12:49:34
$cd ?
bash: cd: ?: No such file or directory
12:50:31
$cd /

12:50:34
$cd /home /usr/

12:50:43
$cd ..

12:50:48
$dir
bin   cdrom  etc   initrd      lib         media  opt   root  srv  tmp  var
boot  dev    home  initrd.img  lost+found  mnt    proc  sbin  sys  usr  vmlinuz
12:50:50
$cd usr

12:51:08
$dir
bin  doc  games  include  info  lib  local  lost+found  sbin  share  src  X11R6
12:51:15
$cd ..

12:51:25
$cd ...
bash: cd: ...: No such file or directory
/dev/pts/0
12:52:21
$dir
exit
Desktop  Mail  my  Диаграмма1.dia
12:52:47
$cd /

12:52:53
$cd dir
bash: cd: dir: No such file or directory
12:52:57
$ailas
bash: ailas: command not found
12:53:04
$alias

12:53:09
$dir
bin   cdrom  etc   initrd      lib         media  opt   root  srv  tmp  var
boot  dev    home  initrd.img  lost+found  mnt    proc  sbin  sys  usr  vmlinuz
12:53:16
$cd usr

12:53:29
$dir
bin  doc  games  include  info  lib  local  lost+found  sbin  share  src  X11R6
12:53:32
$cd /

12:54:26
$cd home

12:54:29
$[user@linux3:home]$ ls -l
итого 76
drwxr-xr-x   2 igor         users  4096 2006-03-13 18:52 igor
drwxr-xr-x   2 lena         users  4096 2006-03-13 18:52 lena
drwxr-xr-x   2 root         root  49152 2006-03-11 21:38 lost+found
drwxr-xr-x   2 oleg         users  4096 2006-03-13 18:52 oleg
drwxr-xr-x   2 petya        users  4096 2006-03-13 18:52 petya
drwxr-xr-x   2 super-admin2 users  4096 2006-03-13 18:52 super-admin2
drwxr-xr-x  17 user         user   4096 2006-03-14 12:46 user
drwxr-xr-x   2 vasya        users  4096 2006-03-13 18:52 vasya
12:54:40
$cd user

12:54:49
$[user@linux3:user]$ ls -l
итого 16
drwx------  3 user user 4096 2006-03-13 19:25 Desktop
drwx------  7 user user 4096 2006-03-13 16:02 Mail
drwxr-xr-x  2 user user 4096 2006-03-13 19:15 my
-rw-r--r--  1 user user  618 2006-03-13 17:56 Диаграмма1.dia
12:54:55
$ls -
ls: -: No such file or directory
12:55:30
$ls -1
Desktop
Mail
my
Диаграмма1.dia
12:55:34
$vi .bashrc
18a19
>   alias view=less
/dev/pts/0
12:58:04
$ls -l
exit
итого 16
drwx------  3 user user 4096 2006-03-13 19:25 Desktop
drwx------  7 user user 4096 2006-03-13 16:02 Mail
drwxr-xr-x  2 user user 4096 2006-03-13 19:15 my
-rw-r--r--  1 user user  618 2006-03-13 17:56 Диаграмма1.dia
12:58:10
$view .bashrc
# ~/.bashrc: executed by bash(1) for non-login shells.
export PS1='\h:\w\$ '
umask 022
. ~/.lilalo/l3bashrc && _l3_start
# You may uncomment the following lines if you want `ls' to be colorized:
# export LS_OPTIONS='--color=auto'
# eval "`dircolors`"
# alias ls='ls $LS_OPTIONS'
# alias ll='ls $LS_OPTIONS -l'
# alias l='ls $LS_OPTIONS -lA'
#
# Some more alias to avoid making mistakes:
# alias rm='rm -i'
# alias cp='cp -i'
# alias mv='mv -i'
  alias view=less
12:59:18
$su
Password:
13:00:41
#exit
exit
13:00:58
$vi .bashrc
13:02:02
$vi .bashrc_profile
/dev/tty1
13:04:40
$apt-get install cowsay
exit
E: Could not open lock file /var/lib/dpkg/lock - open (13 Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
13:05:27
$su
Password:
13:06:05
#apt-get install cowsay
Reading Package Lists... Done
Building Dependency Tree... Done
cowsay is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 798 not upgraded.
13:06:28
#exit
exit
13:06:40
$cowsay
^[[B^[[A
13:06:51
$[user@linux3:user]$ dpkg -l cowsay
Желаемый=неизвестно[u]/установить[i]/удалить[r]/вычистить[p]/зафиксировать[h]
| Состояние=нет[n]/установлен[i]/настроен[c]/распакован[U]/ошибка настройки[F]/
            частично установлен[H]
|/ Ошибка?=<нет>/зафиксирован[H]/требуется переустановка[R]/X=и то, и другое
(верхний регистр в полях статуса и ошибки указывает на ненормальную ситуацию)
||/ Имя         Версия   Описание
+++-==============-==============-============================================
ii  cowsay         3.03-8         A configurable talking cow
13:07:05
$[user@linux3:user]$ su
Password:
13:07:33
#cowsay -f tux "privet. Seichas takoe vremya: `date`"
 ______________________________________
/ privet. Seichas takoe vremya: Втр \
\ Мар 14 13:07:43 EET 2006          /
 --------------------------------------
   \
    \
        .--.
       |o_o |
       |:_/ |
      //   \ \
     (|     | )
    /'\_   _/`\
    \___)=(___/
13:07:43
#LANG=C cowsay -f tux "privet. Seichas takoe vremya: `date`"
 ______________________________________
/ privet. Seichas takoe vremya: Втр \
\ Мар 14 13:07:54 EET 2006          /
 --------------------------------------
   \
    \
        .--.
       |o_o |
       |:_/ |
      //   \ \
     (|     | )
    /'\_   _/`\
    \___)=(___/
13:07:55
#cowsay -f tux "privet. Seichas takoe vremya: `LANG=C date`"
 _______________________________________
/ privet. Seichas takoe vremya: Tue Mar \
\ 14 13:08:11 EET 2006                  /
 ---------------------------------------
   \
    \
        .--.
       |o_o |
       |:_/ |
      //   \ \
     (|     | )
    /'\_   _/`\
    \___)=(___/
13:08:11
#exit
exit
13:08:18
$su
Password:
13:08:33
#dpkg -L cowsay
/.
/usr
/usr/share
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/cowsay.1.gz
/usr/share/doc
/usr/share/doc/cowsay
/usr/share/doc/cowsay/README
/usr/share/doc/cowsay/changelog.Debian.gz
...
/usr/share/cowsay/cows/mech-and-cow.cow
/usr/share/cowsay/cows/supermilker.cow
/usr/share/cowsay/cows/mutilated.cow
/usr/share/cowsay/cows/milk.cow
/usr/share/cowsay/cows/moose.cow
/usr/share/cowsay/cows/apt.cow
/usr/bin
/usr/bin/cowsay
/usr/share/man/man1/cowthink.1.gz
/usr/bin/cowthink
13:08:47
#exit
exit
13:08:59
$vi .bashrc_profile
1c1
< apt-get install cowsay
---
> cowsay -f
/dev/pts/0
13:11:05
$vi .bashrc_profile
13:11:43
$vi .bash_profile
2c2
< 
---
> cowsay -f linux
/dev/tty1
13:12:44
$cowsay -g
exit
^[[A
13:13:00
$cowsay -f
^[[A^[[B^[[B^[[B^[[A^[[A^[[A^[[B^[[B^[
13:13:10
$[user@linux3:user]$ su
Password:
su: Authentication failure
Извините.
13:13:30
$su
Password:
13:13:39
#exit
exit
/dev/pts/0
13:14:00
$dir4
bash: dir4: command not found
13:14:13
$dir
Desktop  Mail  my  Диаграмма1.dia
13:14:17
$ls -l
итого 16
drwx------  3 user user 4096 2006-03-13 19:25 Desktop
drwx------  7 user user 4096 2006-03-13 16:02 Mail
drwxr-xr-x  2 user user 4096 2006-03-13 19:15 my
-rw-r--r--  1 user user  618 2006-03-13 17:56 Диаграмма1.dia
13:14:21
$ls
Desktop  Mail  my  Диаграмма1.dia
13:14:26
$ls
ls         lshal      lskatproc  lspci      lsusb
lsattr     lskat      lsof       lspgpot
13:14:26
$ls -1
Desktop
Mail
my
Диаграмма1.dia
13:14:41
$ls -a
.                              .dia             .ICEauthority  .qt
..                             .dmrc            .kde           .swp
.bash_history                  .fonts           .kderc         .viminfo
.bash_profile                  .fonts.conf      .lilalo        .Xauthority
.bashrc                        .gconf           Mail           .xsession-errors
.bashrc_profile                .gconfd          .mcop          Диаграмма1.dia
.DCOPserver_linux3.unix.nt__0  .gnome           .mcoprc
.DCOPserver_linux3.unix.nt_:0  .gnome2          .mozilla
Desktop                        .gnome2_private  my
13:14:45
$rm .bashrc_profile

13:15:18
$ls -a
.                              .dia         .gnome2_private  .mozilla
..                             .dmrc        .ICEauthority    my
.bash_history                  .fonts       .kde             .qt
.bash_profile                  .fonts.conf  .kderc           .swp
.bashrc                        .gconf       .lilalo          .viminfo
.DCOPserver_linux3.unix.nt__0  .gconfd      Mail             .Xauthority
.DCOPserver_linux3.unix.nt_:0  .gnome       .mcop            .xsession-errors
Desktop                        .gnome2      .mcoprc          Диаграмма1.dia
13:15:21
$vi basrc
13:16:15
$ls -a
.              .bashrc                        .dia         .gconf   .gnome2_private  .lilalo  .mozilla  .viminfo
..             .DCOPserver_linux3.unix.nt__0  .dmrc        .gconfd  .ICEauthority    Mail     my        .Xauthority
.bash_history  .DCOPserver_linux3.unix.nt_:0  .fonts       .gnome   .kde             .mcop    .qt       .xsession-errors
.bash_profile  Desktop                        .fonts.conf  .gnome2  .kderc           .mcoprc  .swp      Диаграмма1.dia
13:16:19
$vi bashrc
13:17:02
$vi .bashrc
15,18c15,17
< # Some more alias to avoid making mistakes:
< # alias rm='rm -i'
< # alias cp='cp -i'
< # alias mv='mv -i'
---
> # Some more alias to avoid making mistakes
>   alias del=rm
>   alias admin=su
/dev/pts/0
13:20:14
$view
exit
Missing filename ("less --help" for help)
13:20:21
$alias
alias admin='su'
alias del='rm'
alias view='less'
13:20:25
$admin
Password:
su: Authentication failure
Извините.
13:20:45
$vi .bashrc
18a19
>   alias shutdown='shut.down -h now'
13:22:33
$admin
Password:
su: Authentication failure
Извините.
/dev/pts/0
13:22:47
$alias
+q436f+q6b75+q6b64+q6b72+q6b6c+q2332+q2334+q2569+q2a37+q6b31
alias admin='su'
#deb cdrom:[Debian GNU/Linux testing _Sarge_ - Official Snapshot i386 Binary-2 (20050211)]/ unstable contrib main
alias del='rm'
#deb cdrom:[Debian GNU/Linux testing _Sarge_ - Official Snapshot i386 Binary-1 (20050211)]/ unstable contrib main
alias shutdown='shut.down -h now'
alias view='less'
~
~
~
...
~
~
~
~
~
~
~
~
~
"/etc/apt/sources.list" 9L, 405C                                                                           3,1          Весь
13:22:53
$shutdawn
bash: shutdawn: command not found
13:23:03
$shutdown
bash: shut.down: command not found
13:23:11
$vi .bashrc
13:23:39
$admin
Password:
13:23:46
#shutdown
Usage:    shutdown [-akrhHPfnc] [-t secs] time [warning message]
                  -a:      use /etc/shutdown.allow
                  -k:      don't really shutdown, only warn.
                  -r:      reboot after shutdown.
                  -h:      halt after shutdown.
                  -P:      halt action is to turn off power.
                  -H:      halt action is to just halt.
                  -f:      do a 'fast' reboot (skip fsck).
                  -F:      Force fsck on reboot.
                  -n:      do not go through "init" but go down real fast.
                  -c:      cancel a running shutdown.
                  -t secs: delay between warning and kill signal.
                  ** the "time" argument is mandatory! (try "now") **

Статистика

Время первой команды журнала12:33:57 2006- 3-14
Время последней команды журнала13:23:46 2006- 3-14
Количество командных строк в журнале101
Процент команд с ненулевым кодом завершения, %15.84
Процент синтаксически неверно набранных команд, % 7.92
Суммарное время работы с терминалом *, час 0.83
Количество командных строк в единицу времени, команда/мин 2.03
Частота использования команд
cd16|===============| 15.84%
vi16|===============| 15.84%
ls10|=========| 9.90%
exit9|========| 8.91%
su9|========| 8.91%
dir8|=======| 7.92%
cowsay5|====| 4.95%
alias4|===| 3.96%
[user@linux3:user]$4|===| 3.96%
admin3|==| 2.97%
passwd2|=| 1.98%
view2|=| 1.98%
shutdown2|=| 1.98%
apt-get2|=| 1.98%
dpkg1|| 0.99%
passw1|| 0.99%
shutdawn1|| 0.99%
passd1|| 0.99%
rm1|| 0.99%
dir41|| 0.99%
ailas1|| 0.99%
[user@linux3:home]$1|| 0.99%
LANG=C1|| 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$