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

Содержание

Журнал

Пятница (04/01/16)

/dev/pts/5
13:19:40
#apt-cashe search libpcap
bash: apt-cashe: command not found
13:20:12
#apt-cache search libpcap
bittwist - libpcap based Ethernet packet generator
dns-flood-detector - detect abusive usage levels on high traffic nameservers
fprobe - export captured traffic to remote NetFlow Collector
fprobe-ng - export captured traffic to remote NetFlow Collector (meta)
fwknop-apparmor-profile - FireWall KNock OPerator - Apparmor profile
fwknop-client - FireWall KNock OPerator client side - C version
fwknop-server - FireWall KNock OPerator server side - C version
libfko-doc - FireWall KNock OPerator - documentation
libfko-perl - FireWall KNock OPerator - Perl module
libfko-python - FireWall KNock OPerator - Python module
...
python-pcs - Packet Construction Set for Python
python-pypcap - object-oriented Python interface for libpcap
ruby-packetfu - PacketFu is a mid-level packet manipulation library for Ruby
ruby-pcaprub - Ruby bindings for LBL Packet Capture library (libpcap)
tcpick - TCP stream sniffer and connection tracker
tcpspy - Incoming and Outgoing TCP/IP connections logger
tcptrace - Tool for analyzing tcpdump output
tcpxtract - extracts files from network traffic based on file signatures
libwiretap-dev - network packet capture library -- development files
libwiretap4 - network packet capture library -- shared library
13:20:22
#apt-get install ncaptool
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  libncap44
The following NEW packages will be installed:
  libncap44 ncaptool
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 45.3 kB of archives.
After this operation, 110 kB of additional disk space will be used.
...
(Reading database ... 68561 files and directories currently installed.)
Preparing to unpack .../libncap44_1.9.2-2_amd64.deb ...
Unpacking libncap44 (1.9.2-2) ...
Selecting previously unselected package ncaptool.
Preparing to unpack .../ncaptool_1.9.2-2_amd64.deb ...
Unpacking ncaptool (1.9.2-2) ...
Processing triggers for man-db (2.7.0.2-5) ...
Setting up libncap44 (1.9.2-2) ...
Setting up ncaptool (1.9.2-2) ...
Processing triggers for libc-bin (2.19-18+deb8u3) ...
13:21:14
#./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking for style of include used by make... GNU
checking for gcc... gcc
...
checking dependency style of gcc... (cached) gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking whether ln -s works... yes
checking for egrep... (cached) /bin/grep -E
checking for pthread_create in -lpthread... yes
checking for pcap_open_offline in -lpcap... no
configure: error:  You need to have libpcap installed to compile sngrep.
13:21:29
#apt-cache search libpcap
bittwist - libpcap based Ethernet packet generator
dns-flood-detector - detect abusive usage levels on high traffic nameservers
fprobe - export captured traffic to remote NetFlow Collector
fprobe-ng - export captured traffic to remote NetFlow Collector (meta)
fwknop-apparmor-profile - FireWall KNock OPerator - Apparmor profile
fwknop-client - FireWall KNock OPerator client side - C version
fwknop-server - FireWall KNock OPerator server side - C version
libfko-doc - FireWall KNock OPerator - documentation
libfko-perl - FireWall KNock OPerator - Perl module
libfko-python - FireWall KNock OPerator - Python module
...
python-pcs - Packet Construction Set for Python
python-pypcap - object-oriented Python interface for libpcap
ruby-packetfu - PacketFu is a mid-level packet manipulation library for Ruby
ruby-pcaprub - Ruby bindings for LBL Packet Capture library (libpcap)
tcpick - TCP stream sniffer and connection tracker
tcpspy - Incoming and Outgoing TCP/IP connections logger
tcptrace - Tool for analyzing tcpdump output
tcpxtract - extracts files from network traffic based on file signatures
libwiretap-dev - network packet capture library -- development files
libwiretap4 - network packet capture library -- shared library
13:22:23
#apt-cache search libpcap0.8
libpcap0.8 - system interface for user-level packet capture
libpcap0.8-dbg - debugging symbols for libpcap0.8
libpcap0.8-dev - development library and header files for libpcap0.8
13:23:06
#apt-get search libpcap0.8
E: Invalid operation search
13:23:21
#apt-get install libpcap0.8
Reading package lists... Done
Building dependency tree
Reading state information... Done
libpcap0.8 is already the newest version.
libpcap0.8 set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
13:23:36
#./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking for style of include used by make... GNU
checking for gcc... gcc
...
checking dependency style of gcc... (cached) gcc3
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc3
checking whether ln -s works... yes
checking for egrep... (cached) /bin/grep -E
checking for pthread_create in -lpthread... yes
checking for pcap_open_offline in -lpcap... no
configure: error:  You need to have libpcap installed to compile sngrep.
13:23:48
#apt-get install tftpd
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  openbsd-inetd
The following NEW packages will be installed:
  openbsd-inetd tftpd
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 52.3 kB of archives.
After this operation, 174 kB of additional disk space will be used.
...
Preparing to unpack .../openbsd-inetd_0.20140418-2_amd64.deb ...
Unpacking openbsd-inetd (0.20140418-2) ...
Selecting previously unselected package tftpd.
Preparing to unpack .../tftpd_0.17-18_amd64.deb ...
Unpacking tftpd (0.17-18) ...
Processing triggers for systemd (215-17+deb8u3) ...
Processing triggers for man-db (2.7.0.2-5) ...
Setting up openbsd-inetd (0.20140418-2) ...
Setting up tftpd (0.17-18) ...
Processing triggers for systemd (215-17+deb8u3) ...
13:29:49
#apt-cache search tftp client
argonaut-fuse - Argonaut (modular TFTP/Fuse supplicant)
argonaut-fuse-module-fai - Argonaut (LDAP FAI module for the TFTP/Fuse supplicant)
argonaut-fuse-module-opsi - Argonaut (OPSI module for the TFTP/Fuse supplicant)
atftp - advanced TFTP client
libcurl3 - easy-to-use client-side URL transfer library (OpenSSL flavour)
libcurl3-dbg - debugging symbols for libcurl (OpenSSL, GnuTLS and NSS flavours)
libcurl3-gnutls - easy-to-use client-side URL transfer library (GnuTLS flavour)
libcurl3-nss - easy-to-use client-side URL transfer library (NSS flavour)
libcurl4-doc - documentation for libcurl
libcurl4-gnutls-dev - development files and documentation for libcurl (GnuTLS flavour)
...
hobbit-plugins - plugins for the Xymon network monitor
libnet-tftp-perl - Perl module for accessing TFTP servers
tftp - Trivial file transfer protocol client
netwox - networking utilities
netwox-doc - documentation for netwox toolbox
r-cran-rcurl - GNU R General network (HTTP/FTP/...) client interface
tftp-hpa - HPA's tftp client
tftp-hpa-dbg - HPA's tftp (debug)
tftpd-hpa - HPA's tftp server
python-tftpy - pure Python library for TFTP
/dev/pts/7
13:32:17
#ping
Usage: ping [-aAbBdDfhLnOqrRUvV] [-c count] [-i interval] [-I interface]
            [-m mark] [-M pmtudisc_option] [-l preload] [-p pattern] [-Q tos]
            [-s packetsize] [-S sndbuf] [-t ttl] [-T timestamp_option]
            [-w deadline] [-W timeout] [hop1 ...] destination
13:33:48
#ping bk2.by
PING bk2.by (192.168.100.10) 56(84) bytes of data.
^C
--- bk2.by ping statistics ---
10 packets transmitted, 0 received, 100% packet loss, time 9072ms
/dev/pts/5
13:38:24
#apt-cache search nginx
collectd-core - statistics collection and monitoring daemon (core system)
coquelicot - "one-click" file sharing web application with a focus on users' privacy
fcgiwrap - simple server to run CGI applications over FastCGI
gitweb - fast, scalable, distributed revision control system (web interface)
gunicorn - Event-based HTTP/WSGI server
libghc-graceful-dev - Library to write graceful shutdown / upgrade service.
libghc-graceful-doc - Library to write graceful shutdown / upgrade service - doc
libghc-graceful-prof - Library to write graceful shutdown / upgrade service - prof
libplack-middleware-file-sass-perl - Sass and SCSS support for all Plack-based PSGI frameworks
lua-nginx-memcached - Pure Lua memcached client driver for the nginx embedded Lua language
...
nginx-doc - small, powerful, scalable web/proxy server - documentation
nginx-extras - nginx web/proxy server (extended version)
nginx-extras-dbg - nginx web/proxy server (extended version) - debugging symbols
nginx-full - nginx web/proxy server (standard version)
nginx-full-dbg - nginx web/proxy server (standard version) - debugging symbols
nginx-light - nginx web/proxy server (basic version)
nginx-light-dbg - nginx web/proxy server (basic version) - debugging symbols
python-reconfigure - simple config file management library
rt4-fcgi - External FastCGI support for request-tracker4
viewvc - web interface for CVS and/or Subversion repositories
прошла 21 минута
13:59:52
#apt-cache search sipx
librecon-1.9 - reSIProcate conversation manager - shared libraries
libsipxtapi - SIP stack, RTP media framework and codecs
libsipxtapi-dev - SIP stack, RTP media framework and codecs (headers)
libsipxtapi-doc - SIP stack, RTP media framework and codecs (API documentation)
14:00:46
#apt-cache search nginx
collectd-core - statistics collection and monitoring daemon (core system)
coquelicot - "one-click" file sharing web application with a focus on users' privacy
fcgiwrap - simple server to run CGI applications over FastCGI
gitweb - fast, scalable, distributed revision control system (web interface)
gunicorn - Event-based HTTP/WSGI server
libghc-graceful-dev - Library to write graceful shutdown / upgrade service.
libghc-graceful-doc - Library to write graceful shutdown / upgrade service - doc
libghc-graceful-prof - Library to write graceful shutdown / upgrade service - prof
libplack-middleware-file-sass-perl - Sass and SCSS support for all Plack-based PSGI frameworks
lua-nginx-memcached - Pure Lua memcached client driver for the nginx embedded Lua language
...
nginx-doc - small, powerful, scalable web/proxy server - documentation
nginx-extras - nginx web/proxy server (extended version)
nginx-extras-dbg - nginx web/proxy server (extended version) - debugging symbols
nginx-full - nginx web/proxy server (standard version)
nginx-full-dbg - nginx web/proxy server (standard version) - debugging symbols
nginx-light - nginx web/proxy server (basic version)
nginx-light-dbg - nginx web/proxy server (basic version) - debugging symbols
python-reconfigure - simple config file management library
rt4-fcgi - External FastCGI support for request-tracker4
viewvc - web interface for CVS and/or Subversion repositories

Статистика

Время первой команды журнала13:19:40 2016- 4- 1
Время последней команды журнала14:00:46 2016- 4- 1
Количество командных строк в журнале16
Процент команд с ненулевым кодом завершения, %31.25
Процент синтаксически неверно набранных команд, % 6.25
Суммарное время работы с терминалом *, час 0.69
Количество командных строк в единицу времени, команда/мин 0.39
Частота использования команд
apt-cache7|===========================================| 43.75%
apt-get4|=========================| 25.00%
configure2|============| 12.50%
ping2|============| 12.50%
apt-cashe1|======| 6.25%
____
*) Интервалы неактивности длительностью 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$