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

Содержание

Журнал

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

/dev/ttyp4
11:29:01
#pwd
/usr
11:29:04
#cd /port/
bash: cd: /port/: No such file or directory
11:29:12
#ls
.snap   bin     games   lib     libexec obj     sbin    src
X11R6   compat  include libdata local   ports   share
11:29:14
#cd src

11:29:20
#ls
COPYRIGHT       UPDATING        gnu             rescue          usr.bin
LOCKS           bin             include         sbin            usr.sbin
MAINTAINERS     contrib         kerberos5       secure
Makefile        crypto          lib             share
Makefile.inc1   etc             libexec         sys
README          games           release         tools
11:29:21
#cd /

11:29:32
#clear

11:29:35
#ls
.cshrc          bin             dist            libexec         sbin
.mozilla        boot            entropy         mnt             sys
.profile        cdrom           etc             proc            tmp
.snap           compat          home            rescue          usr
COPYRIGHT       dev             lib             root            var
11:29:36
#cd /usr

11:29:49
#ls
.snap   bin     games   lib     libexec obj     sbin    src
X11R6   compat  include libdata local   ports   share
11:29:50
#cd ports

11:29:56
#find -name mc
find: illegal option -- n
find: illegal option -- a
find: illegal option -- m
find: illegal option -- e
find: mc: No such file or directory
11:30:26
#find /?
find: /?: No such file or directory
11:30:36
#find
usage: find [-H | -L | -P] [-EXdsx] [-f file] [file ...] [expression]
11:30:39
#find -f mc
find: mc: No such file or directory
11:30:46
#find -f *mc*
find: *mc*: No such file or directory
11:30:53
#find -f mid
find: mid: No such file or directory
11:31:04
#find -f *mid*
find: *mid*: No such file or directory
11:31:08
#find -f "mid"
find: mid: No such file or directory
11:31:16
#find -f "*mid*"
find: *mid*: No such file or directory
11:31:20
#find -f "*mc*"
find: *mc*: No such file or directory
11:31:26
#find -f "*mc*
> find -f "*mc*
11:31:33
#ls
.cvsignore      audio           french          misc            ukrainian
CHANGES         benchmarks      ftp             multimedia      vietnamese
INDEX-6         biology         games           net             www
LEGAL           cad             german          net-mgmt        x11
MOVED           chinese         graphics        news            x11-clocks
Makefile        comms           hebrew          palm            x11-fm
Mk              converters      hungarian       polish          x11-fonts
README          databases       irc             portuguese      x11-servers
Templates       deskutils       japanese        print           x11-themes
Tools           devel           java            russian         x11-toolkits
UPDATING        distfiles       korean          science         x11-wm
accessibility   dns             lang            security
arabic          editors         mail            shells
archivers       emulators       math            sysutils
astro           finance         mbone           textproc
11:31:36
#cd sysutils

11:31:46
#ls
freebsd-sha256                  sjog
freecolor                       skill
freedt                          slay
freeipmi                        sleuthkit
freesbie                        slmon
fsbackup                        sloth
ftrace                          smartmontools
fvcool                          snowlog
gag                             socket
ganglia-monitor-core            socklog
...
metalog                         xsu
mgeupsd                         xsysinfo
minirsyslogd                    xsysstats
mixer                           xvidcap
mkfile                          xwipower
mksunbootcd                     xwlans
mktool                          yawho
mmore                           zidrav
modules                         zisofs-tools
monit
11:31:47
#ls|more
11:32:30
#cd ..

11:32:32
#find -f m
find: m: No such file or directory
11:32:41
#find -f *m*
emulators/hfsutils/files/patch-ab
emulators/ia64sim
emulators/ia64sim/Makefile
emulators/ia64sim/distinfo
emulators/ia64sim/pkg-descr
emulators/ia64sim/files
emulators/ia64sim/files/patch-ia64.h
emulators/ia64sim/files/patch-ia64sim.c
emulators/ia64sim/files/patch-makefile.unx
emulators/ines
...
emulators/linux_base-gentoo-stage1/Makefile
emulators/linux_base-gentoo-stage1/distinfo.alpha
emulators/linux_base-gentoo-stage1/distinfo.i386
emulators/linux_base-gentoo-stage1/pkg-descr
emulators/linux_base-gentoo-stage1/pkg-install
emulators/linux_base-gentoo-stage1/pkg-message
emulators/linux_base-rh-9
emulators/linux_base-rh-9/Makefile
emulators/linux_base-rh-9/distinfo
emulators/linux_base-rh-9/pkg-descr
11:32:51
#find -f *mi*
misc/lr/files
misc/lr/files/lesspipe.sh
misc/lv
misc/lv/Makefile
misc/lv/distinfo
misc/lv/pkg-descr
misc/lv/pkg-plist
misc/magicpoint
misc/magicpoint/Makefile
misc/magicpoint/distinfo
...
misc/mmv/pkg-plist
misc/mmv/files
misc/mmv/files/patch-aa
misc/moviedb
misc/moviedb/Makefile
misc/moviedb/distinfo
misc/moviedb/pkg-descr
misc/moviedb/pkg-plist
misc/moviedb/files
misc/moviedb/files/patch-aa
11:32:55
#find -f *mid*
find: *mid*: No such file or directory
11:32:58
#find -f *com*\
comms/tits/pkg-plist
comms/tits/files
comms/tits/files/patch-Makefile
comms/tits/files/patch-dispatcher.c
comms/tits/files/patch-tty.c
comms/tkhylafax
comms/tkhylafax/Makefile
comms/tkhylafax/distinfo
comms/tkhylafax/pkg-descr
comms/tkhylafax/pkg-plist
...
comms/zmtx-zmrx/pkg-message
comms/zmtx-zmrx/files
comms/zmtx-zmrx/files/patch-01
comms/zmtx-zmrx/files/patch-02
comms/zssh
comms/zssh/Makefile
comms/zssh/distinfo
comms/zssh/pkg-descr
comms/zssh/files
comms/zssh/files/patch-aa
11:33:07
#find -f *com*|more
11:33:36
#find -f *mc*|more
11:33:44
#ls
.cvsignore      audio           french          misc            ukrainian
CHANGES         benchmarks      ftp             multimedia      vietnamese
INDEX-6         biology         games           net             www
LEGAL           cad             german          net-mgmt        x11
MOVED           chinese         graphics        news            x11-clocks
Makefile        comms           hebrew          palm            x11-fm
Mk              converters      hungarian       polish          x11-fonts
README          databases       irc             portuguese      x11-servers
Templates       deskutils       japanese        print           x11-themes
Tools           devel           java            russian         x11-toolkits
UPDATING        distfiles       korean          science         x11-wm
accessibility   dns             lang            security
arabic          editors         mail            shells
archivers       emulators       math            sysutils
astro           finance         mbone           textproc
11:33:56
#man mc
11:34:12
#cd misc

11:34:44
#ls
fortune-mod-futurama            p5-Business-ISIN
fortuneit                       p5-Business-ISSN
freedialog                      p5-Business-UPS
freshmeat-submit                p5-Chatbot-Eliza
ftdi-eeprom                     p5-Data-Buffer
ftree                           p5-File-CounterFile
gaim-bangexec                   p5-File-Sort
gaim-guifications               p5-Geo-Weather
gaim-ignorance                  p5-Geography-Countries
gctpc                           p5-I18N-Charset
...
kenny                           xless
kfile-plugins                   xosd
kicker-applets                  xpns
knewsticker-scripts             xrmap
koffice-i18n                    xtail
koffice-i18n-af                 xtar
koffice-i18n-bg                 xtypo
koffice-i18n-br                 yaunc
koffice-i18n-bs                 ytree
koffice-i18n-ca                 zaptel
11:34:46
#ls|more
11:35:41
#cd mc

11:35:43
#ls
Makefile        distinfo        files           pkg-descr       pkg-plist
11:35:44
#cat distinfo
MD5 (mc-4.6.0.tar.gz) = 70804dc9e2049e24f294ff7090a82a12
SIZE (mc-4.6.0.tar.gz) = 3727676
11:35:54
#cat pkg-descr
GNU Midnight Commander is a user-friendly yet powerful file manager
and visual shell, useful to novice and guru alike. It provides a
clear, user-friendly, and somewhat protected interface to a Unix
system while making many frequent file operations more efficient and
preserving the full power of the command prompt. You will wonder how
you could ever live without it.
WWW: http://www.ibiblio.org/mc/
11:36:05
#make install
fetch: ftp://ftp.chg.ru/pub/Linux/sunsite/utils/file/managers/mc//mc-4.6.0.tar.gz: No address record
=> Attempting to fetch from ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/.
fetch: ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/mc-4.6.0.tar.gz: No address record
=> Couldn't fetch it - please try to retrieve this
=> port manually into /usr/ports/distfiles/ and try again.
*** Error code 1
Stop in /usr/ports/misc/mc.
*** Error code 1
Stop in /usr/ports/misc/mc.
11:36:31
#make install
    Installation Lib Dir: ${exec_prefix}/lib
Installation Include Dir: ${prefix}/include
See also src/sl-feat.h for various features.
Type 'make' to build normal library.
On ELF systems, type 'make elf' to create ELF shared library.
===>  Building for libslang-1.4.9
cd src; make all
mkdir /usr/ports/devel/libslang/work/slang-1.4.9/src/i386objs
cp sysconf.h config.h
cd /usr/ports/devel/libslang/work/slang-1.4.9/src/i386objs; cc -c -O2 -fno-strict-aliasing -pipe   -fno-strength-reduce -Dunix -DSLANG -DMISC_TERMINFO_DIRS='""' /usr/ports/devel/libslang/work/slang-1.4.9/src/sltermin.c
...
installing /usr/ports/devel/libslang/work/slang-1.4.9/src/i386objs/libslang.a in /usr/local/lib
install  -o root -g wheel -m 444 /usr/ports/devel/libslang/work/slang-1.4.9/src/i386objs/libslang.a /usr/local/lib
ranlib /usr/local/lib/libslang.a
installing slang.h and slcurses.h in /usr/local/include
install  -o root -g wheel -m 444 /usr/ports/devel/libslang/work/slang-1.4.9/src/slang.h /usr/local/include
install  -o root -g wheel -m 444 /usr/ports/devel/libslang/work/slang-1.4.9/src/slcurses.h /usr/local/include
cd src; make install-elf
installing /usr/ports/devel/libslang/work/slang-1.4.9/src/i386objs/libslang.a in /usr/local/lib
install  -o root -g wheel -m 444 /usr/ports/devel/libslang/work/slang-1.4.9/src/i386objs/libslang.a /usr/local/lib
ranlib /usr/local/lib/libslang.a

Файлы

  • distinfo
  • pkg-descr
  • distinfo
    >
    MD5 (mc-4.6.0.tar.gz) = 70804dc9e2049e24f294ff7090a82a12
    SIZE (mc-4.6.0.tar.gz) = 3727676
    
    pkg-descr
    >
    GNU Midnight Commander is a user-friendly yet powerful file manager
    and visual shell, useful to novice and guru alike. It provides a
    clear, user-friendly, and somewhat protected interface to a Unix
    system while making many frequent file operations more efficient and
    preserving the full power of the command prompt. You will wonder how
    you could ever live without it.
    WWW: http://www.ibiblio.org/mc/
    

    Статистика

    Время первой команды журнала11:29:01 2006-11-27
    Время последней команды журнала11:36:31 2006-11-27
    Количество командных строк в журнале45
    Процент команд с ненулевым кодом завершения, %35.56
    Процент синтаксически неверно набранных команд, % 0.00
    Суммарное время работы с терминалом *, час 0.12
    Количество командных строк в единицу времени, команда/мин 6.00
    Частота использования команд
    find18|====================================| 36.73%
    ls11|======================| 22.45%
    cd9|==================| 18.37%
    more4|========| 8.16%
    cat2|====| 4.08%
    make2|====| 4.08%
    man1|==| 2.04%
    pwd1|==| 2.04%
    clear1|==| 2.04%
    ____
    *) Интервалы неактивности длительностью 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$