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

Содержание

Журнал

Суббота (02/11/06)

/dev/tty1
12:36:54
#grep chkco /etc/init.d/sshd
# chkconfig: 2345 55 25
12:37:31
#cd /root/
You have new mail in /var/spool/mail/root
12:46:50
#ls
16:58:20  f                       mymotd        test1
2006      ffff                    mynologin     text1
21        final_settings.err      mytgz         Суб
a         g                       nohup.out     Суб Янв 21 16:57:57 EET 2006
abcdef    hello                   proba_bloc_S  Янв
Desktop   hushlogin               soft
e-        linux-2.6.15.1.tar.bz2  sort
EET       ls                      temp
You have new mail in /var/spool/mail/root
12:49:02
#du
16      ./.mozilla/firefox/glkohz6u.default/US
12      ./.mozilla/firefox/glkohz6u.default/chrome
8       ./.mozilla/firefox/glkohz6u.default/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}
20      ./.mozilla/firefox/glkohz6u.default/extensions
416     ./.mozilla/firefox/glkohz6u.default/Cache
4       ./.mozilla/firefox/glkohz6u.default/Cache.Trash
1424    ./.mozilla/firefox/glkohz6u.default
1436    ./.mozilla/firefox
1444    ./.mozilla
4       ./.gnome/mime-info
...
4       ./ls
32      ./soft
4       ./test1
4       ./ffff
12      ./.metacity/sessions
16      ./.metacity
8       ./.nautilus/metafiles
12      ./.nautilus
4       ./Desktop
44968   .
12:49:13
#df
Файловая система     1K-блоков      Исп  Доступно  Исп% смонтирована на
/dev/hdb1              1007960    259140    697616  28% /
/dev/hdb6              1007960     16660    940096   2% /tmp
/dev/hdb7              2015984    110436   1803140   6% /var
/dev/hdb9             10079324   3771452   5795860  40% /usr
/dev/hdb8              2015984    772404   1141172  41% /home
/dev/hdb10             9612100     32876   9090952   1% /usr/src
/dev/hdb2               304620    156216    148404  52% /win
12:49:16
#ls
16:58:20  f                       mymotd        test1
2006      ffff                    mynologin     text1
21        final_settings.err      mytgz         Суб
a         g                       nohup.out     Суб Янв 21 16:57:57 EET 2006
abcdef    hello                   proba_bloc_S  Янв
Desktop   hushlogin               soft
e-        linux-2.6.15.1.tar.bz2  sort
EET       ls                      temp
12:49:29
#du l
linux-2.6.15.1.tar.bz2  ls/
12:49:29
#du linux-2.6.15.1.tar.bz2
38956   linux-2.6.15.1.tar.bz2
12:49:41
#tar xvfjC /root/linux-2.6.15.1.tar.bz2 /usr/src/
linux-2.6.15.1/arch/alpha/boot/
linux-2.6.15.1/arch/alpha/boot/Makefile
linux-2.6.15.1/arch/alpha/boot/bootloader.lds
linux-2.6.15.1/arch/alpha/boot/bootp.c
linux-2.6.15.1/arch/alpha/boot/bootpz.c
linux-2.6.15.1/arch/alpha/boot/head.S
linux-2.6.15.1/arch/alpha/boot/main.c
linux-2.6.15.1/arch/alpha/boot/misc.c
linux-2.6.15.1/arch/alpha/boot/tools/
linux-2.6.15.1/arch/alpha/boot/tools/mkbb.c
...
linux-2.6.15.1/arch/alpha/lib/strrchr.S
linux-2.6.15.1/arch/alpha/lib/stxcpy.S
linux-2.6.15.1/arch/alpha/lib/stxncpy.S
linux-2.6.15.1/arch/alpha/lib/udelay.c
linux-2.6.15.1/arch/alpha/math-emu/
linux-2.6.15.1/arch/alpha/math-emu/Makefile
linux-2.6.15.1/arch/alpha/math-emu/math.c
linux-2.6.15.1/arch/alpha/math-emu/qrnnd.S
linux-2.6.15.1/arch/alpha/math-emu/sfp-util.h
linux-2.6.15.1/arch/alpha/mm/
12:55:40
#cd /usr/src/
You have new mail in /var/spool/mail/root
12:57:17
#ls
asplinux  linux-2.6.15.1  lost+found  pax_global_header
12:57:19
#cd ./linux-2.6.15.1/

12:57:51
#cp /boot/config-2.6.9-1.667asp .config
You have new mail in /var/spool/mail/root
12:58:18
#ls
arch     crypto         include  kernel       mm              scripts
block    Documentation  init     lib          net             security
COPYING  drivers        ipc      MAINTAINERS  README          sound
CREDITS  fs             Kbuild   Makefile     REPORTING-BUGS  usr
12:58:20
#ls -a
.      .config  Documentation  include  kernel       mm              scripts
..     COPYING  drivers        init     lib          net             security
arch   CREDITS  fs             ipc      MAINTAINERS  README          sound
block  crypto   .gitignore     Kbuild   Makefile     REPORTING-BUGS  usr
12:58:45
#yes '' | make oldconfig
  * Protocols
  *
  ISA Plug and Play support (ISAPNP) [Y/?] y
  Plug and Play BIOS support (EXPERIMENTAL) (PNPBIOS) [N/y/?] n
  Plug and Play ACPI support (EXPERIMENTAL) (PNPACPI) [Y/n/?] (NEW) *
* Block devices
*
Normal floppy disk support (BLK_DEV_FD) [M/n/y/?] m
XT hard disk support (BLK_DEV_XD) [N/m/y/?] n
Parallel port IDE device support (PARIDE) [N/m/?] n
...
    AHCI SATA support (SCSI_SATA_AHCI) [M/n/?] m
    ServerWorks Frodo / Apple K2 SATA support (SCSI_SATA_SVW) [M/n/?] m
    Intel PIIX/ICH SATA support (SCSI_ATA_PIIX) [M/n/?] m
    Marvell SATA support (HIGHLY EXPERIMENTAL) (SCSI_SATA_MV) [N/m/?] (NEW)     NVIDIA SATA support (SCSI_SATA_NV) [M/n/?] m
    Pacific Digital ADMA support (SCSI_PDC_ADMA) [N/m/?] (NEW)     Pacific Digital SATA QStor support (SCSI_SATA_QSTOR) [N/m/?] (NEW)     Promise SATA TX2/TX4 support (SCSI_SATA_PROMISE) [M/n/?] m
    Promise SATA SX4 support (SCSI_SATA_SX4) [M/n/?] m
    Silicon Image SATA support (SCSI_SATA_SIL) [M/n/?] m
    Silicon Image 3124/3132 SATA support (SCSI_SATA_SIL24) [N/m/?] (NEW)     SiS 964/180 SATA support (SCSI_SATA_SIS) [M/n/?] m
    ULi Electronics SATA support (SCSI_SATA_ULI) [N/m/?] (NEW)     VIA SATA support (SCSI_SATA_VIA) [M/n/?] m
    VITESSE VSC-7174 SATA support (SCSI_SATA_VITESSE) [M/n/?] m
13:00:32
#make menuconfig
     [*] BSD Process Accounting
     [ ]   BSD Process Accounting version 3 file format
     [*] Sysctl support
     [*] Auditing support
     [*]   Enable system-call auditing support
     --- Support for hot-pluggable devices
     [*] Kernel .config support
13:06:10
#make && make modules
  CC [M]  drivers/char/nvram.o
  CC [M]  drivers/char/toshiba.o
  CC [M]  drivers/char/i8k.o
  CC [M]  drivers/char/hw_random.o
  CC [M]  drivers/char/ppdev.o
  CC [M]  drivers/char/hangcheck-timer.o
  CC      drivers/cpufreq/cpufreq.o
  CC      drivers/cpufreq/cpufreq_stats.o
  CC      drivers/cpufreq/cpufreq_performance.o
  CC      drivers/cpufreq/cpufreq_userspace.o
...
  CC [M]  drivers/input/joystick/adi.o
  CC [M]  drivers/input/joystick/analog.o
  CC [M]  drivers/input/joystick/cobra.o
  CC [M]  drivers/input/joystick/db9.o
  CC [M]  drivers/input/joystick/gamecon.o
  CC [M]  drivers/input/joystick/gf2k.o
  CC [M]  drivers/input/joystick/grip.o
  CC [M]  drivers/input/joystick/grip_mp.o
  CC [M]  drivers/input/joystick/guillemot.o
  CC [M]  drivers/input/joystick/interact.o
прошло 104 минуты
14:50:59
#make modules install
  CHK     include/linux/version.h
  CHK     include/linux/compile.h
  CHK     usr/initramfs_list
  Building modules, stage 2.
  MODPOST
Kernel: arch/i386/boot/bzImage is ready  (#1)
sh /usr/src/linux-2.6.15.1/arch/i386/boot/install.sh 2.6.15.1 arch/i386/boot/bzImage System.map "/boot"
WARNING: Couldn't open directory /lib/modules/2.6.15.1: No such file or directory
FATAL: Could not open /lib/modules/2.6.15.1/modules.dep.temp for writing: No such file or directory
/lib/modules/2.6.15.1 is not a directory.
mkinitrd failed
make[1]: *** [install] Ошибка 1
make: *** [install] Ошибка 2
You have new mail in /var/spool/mail/root
14:53:38
#make modules_install
  INSTALL net/sched/cls_route.ko
  INSTALL net/sched/cls_rsvp.ko
  INSTALL net/sched/cls_rsvp6.ko
  INSTALL net/sched/cls_tcindex.ko
  INSTALL net/sched/cls_u32.ko
  INSTALL net/sched/sch_atm.ko
  INSTALL net/sched/sch_cbq.ko
  INSTALL net/sched/sch_dsmark.ko
  INSTALL net/sched/sch_gred.ko
  INSTALL net/sched/sch_hfsc.ko
...
  INSTALL sound/pci/vx222/snd-vx222.ko
  INSTALL sound/pci/ymfpci/snd-ymfpci.ko
  INSTALL sound/soundcore.ko
  INSTALL sound/synth/emux/snd-emux-synth.ko
  INSTALL sound/synth/snd-util-mem.ko
  INSTALL sound/usb/snd-usb-audio.ko
  INSTALL sound/usb/snd-usb-lib.ko
  INSTALL sound/usb/usx2y/snd-usb-usx2y.ko
if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map  2.6.15.1; fi
You have new mail in /var/spool/mail/root
14:58:05
#make install
  CHK     include/linux/version.h
  CHK     include/linux/compile.h
  CHK     usr/initramfs_list
Kernel: arch/i386/boot/bzImage is ready  (#1)
sh /usr/src/linux-2.6.15.1/arch/i386/boot/install.sh 2.6.15.1 arch/i386/boot/bzImage System.map "/boot"
grubby: unable to open /boot/boot.b: No such file or directory
You have new mail in /var/spool/mail/root
15:07:53
#cd /boot/

15:08:33
#ls
aspldr                 initrd-2.6.9-1.667asp.img  vmlinuz
config-2.6.9-1.667asp  module-info                vmlinuz-2.6.15.1
diag1.img              System.map                 vmlinuz-2.6.15.1.old
diag2.img              System.map-2.6.15.1        vmlinuz-2.6.9-1.667asp
grub                   System.map-2.6.15.1.old
initrd-2.6.15.1.img    System.map-2.6.9-1.667asp
15:08:35
#cd /usr/src/linux-2.6.15.1/
You have new mail in /var/spool/mail/root
15:09:11
#ls
arch     Documentation  ipc          Makefile        REPORTING-BUGS  usr
block    drivers        Kbuild       mm              scripts         vmlinux
COPYING  fs             kernel       Module.symvers  security
CREDITS  include        lib          net             sound
crypto   init           MAINTAINERS  README          System.map
15:09:13
#ls -a
.              .gitignore      REPORTING-BUGS         .tmp_kallsyms3.S
..             include         scripts                .tmp_System.map
arch           init            security               .tmp_versions
block          ipc             sound                  .tmp_vmlinux1
.config        Kbuild          System.map             ..tmp_vmlinux1.cmd
.config.cmd    kernel          .tmp_kallsyms1.o       .tmp_vmlinux2
.config.old    lib             ..tmp_kallsyms1.o.cmd  ..tmp_vmlinux2.cmd
COPYING        MAINTAINERS     .tmp_kallsyms1.S       .tmp_vmlinux3
CREDITS        Makefile        .tmp_kallsyms2.o       ..tmp_vmlinux3.cmd
crypto         mm              ..tmp_kallsyms2.o.cmd  usr
Documentation  Module.symvers  .tmp_kallsyms2.S       .version
drivers        net             .tmp_kallsyms3.o       vmlinux
fs             README          ..tmp_kallsyms3.o.cmd  .vmlinux.cmd
15:09:18
#cp ./.config /boot/config-2.6.15.1
You have new mail in /var/spool/mail/root
15:11:15
#ls /boot/
aspldr                 initrd-2.6.15.1.img        System.map-2.6.9-1.667asp
config-2.6.15.1        initrd-2.6.9-1.667asp.img  vmlinuz
config-2.6.9-1.667asp  module-info                vmlinuz-2.6.15.1
diag1.img              System.map                 vmlinuz-2.6.15.1.old
diag2.img              System.map-2.6.15.1        vmlinuz-2.6.9-1.667asp
grub                   System.map-2.6.15.1.old
15:11:32
#less /boot/config-2.6.15.1
15:12:20
#vi /boot/grub/grub.conf
15:16:23
#reboot

Статистика

Время первой команды журнала12:36:54 2006- 2-11
Время последней команды журнала15:16:23 2006- 2-11
Количество командных строк в журнале31
Процент команд с ненулевым кодом завершения, % 3.23
Процент синтаксически неверно набранных команд, % 0.00
Суммарное время работы с терминалом *, час 0.91
Количество командных строк в единицу времени, команда/мин 0.57
Частота использования команд
ls9|===========================| 27.27%
make6|==================| 18.18%
cd5|===============| 15.15%
du3|=========| 9.09%
cp2|======| 6.06%
vi1|===| 3.03%
less1|===| 3.03%
&1|===| 3.03%
df1|===| 3.03%
grep1|===| 3.03%
reboot1|===| 3.03%
yes1|===| 3.03%
tar1|===| 3.03%
____
*) Интервалы неактивности длительностью 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$