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

Содержание

Журнал

Вторник (08/14/12)

/dev/pts/0
08:39:53
#useradd triumf -d /var/www/t
templates/ ttimage/
08:39:53
#useradd triumf -d /var/www/t
templates/ ttimage/
08:39:53
#useradd triumf -d /var/www/
111.tgz         cache/          .htaccess       templates/
admin/          codegen/        index.php       ttimage/
application/    code.gif        info.php        uc.jpg
.bash_logout    favicon.ico     log/            upload_log.txt
.bash_profile   files/          navigation/     uploads/
.bashrc         framework/      rpc/            webstat/
08:39:53
#cd /var/www/

08:40:59
#ls
111.tgz      codegen      framework  navigation  uc.jpg
admin        code.gif     index.php  rpc         upload_log.txt
application  favicon.ico  info.php   templates   uploads
cache        files        log        ttimage     webstat
08:41:00
#cd ../triumf
l3script: cd: ../triumf: Нет такого файла или каталога
08:41:13
#mkdir ../triumf

08:41:35
#mf * ../triumf/
l3script: mf: команда не найдена
08:41:40
#mv * ../triumf/

08:41:45
#mv ../triumf/ .

08:41:57
#ls
triumf
08:41:58
#cd ..

08:42:00
#ls
backups  cache  lib  local  lock  log  mail  opt  run  spool  tmp  www
08:42:01
#cd

08:42:04
#useradd triumf -d /var/www/triumf/ -s /sbin/nologin

08:42:33
#ls /home/
ftp  user
08:42:37
#vipw
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
Debian-exim:x:101:103::/var/spool/exim4:/bin/false
statd:x:102:65534::/var/lib/nfs:/bin/false
user:x:1000:1000:user,,,:/home/user:/bin/bash
telnetd:x:104:106::/nonexistent:/bin/false
proftpd:x:105:65534::/var/run/proftpd:/bin/false
ftp:x:106:65534::/home/ftp:/bin/false
mysql:x:107:107:MySQL Server,,,:/var/lib/mysql:/bin/false
triumf:x:1001:1001::/var/www/triumf/:/sbin/nologin
vipw: /etc/passwd не был изменён
08:42:53
#chown triumf:triumf /var/www/triumf/

08:43:09
#passwd triumf
Введите новый пароль UNIX:
Повторите ввод нового пароля UNIX:
passwd: пароль успешно обновлён
прошло 13 минут
08:56:47
#vim /etc/pro
08:56:47
#vim /etc/pro
08:56:47
#vim /etc/proftpd/
08:56:47
#vim /etc/proftpd/proftpd.conf
прошло 18 минут
09:15:07
#ls
apache2.conf  envvars     magic           mods-enabled  sites-available
conf.d        httpd.conf  mods-available  ports.conf    sites-enabled
09:15:28
#cd conf.d/

09:15:30
#ls
charset                 localized-error-pages    phpmyadmin.conf
javascript-common.conf  other-vhosts-access-log  security
09:15:31
#cd ..

09:15:35
#ls
apache2.conf  envvars     magic           mods-enabled  sites-available
conf.d        httpd.conf  mods-available  ports.conf    sites-enabled
09:15:36
#vim apache2.conf
09:16:52
#see README.Debian for details.

09:16:58
#ls
apache2.conf  envvars     magic           mods-enabled  sites-available
conf.d        httpd.conf  mods-available  ports.conf    sites-enabled
09:16:58
#cd sites-enabled/

09:17:03
#ls
000-default
09:17:03
#vim 000-default
09:17:22
#ls
000-default  triumf
09:17:33
#vim triumf
--- /tmp/l3-saved-1224.8771.32458	2012-08-14 10:17:36.000000000 +0300
+++ triumf	2012-08-14 10:18:44.000000000 +0300
@@ -1,12 +1,12 @@
 <VirtualHost *:80>
 	ServerAdmin webmaster@localhost
 
-	DocumentRoot /var/www
+	DocumentRoot /var/www/triumf
 	<Directory />
 		Options FollowSymLinks
 		AllowOverride None
 	</Directory>
-	<Directory /var/www/>
+	<Directory /var/www/triumf>
 		Options Indexes FollowSymLinks MultiViews
 		AllowOverride None
 		Order allow,deny
09:18:44
#/etc/init.d/apache2 restart
Restarting web server: apache2 ... waiting .
09:18:58
#/etc/init.d/mysql restart
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld.
Checking for corrupt, not cleanly closed and upgrade needing tables..
09:19:10
#ls /var/www/ -la
итого 44288
drwxrwsr-x 16 www-data www-data     4096 Авг 14 10:20 .
drwxr-xr-x 14 root     root         4096 Авг 14 09:41 ..
-rw-r--r--  1 www-data www-data 45013789 Авг 14 09:34 111.tgz
drwxr-sr-x  2 www-data www-data     4096 Авг 14 09:39 admin
drwxr-sr-x  9 www-data www-data     4096 Авг 14 09:34 application
-rwxr-xr-x  1 www-data www-data       33 Авг 14 09:34 .bash_logout
-rwxr-xr-x  1 www-data www-data      176 Авг 14 09:34 .bash_profile
-rwxr-xr-x  1 www-data www-data      124 Авг 14 09:34 .bashrc
drwxrwxrwx 38 www-data www-data     4096 Авг 14 09:36 cache
...
drwxrwxrwx  2 www-data www-data    36864 Авг 14 09:39 log
drwxr-sr-x  4 www-data www-data     4096 Авг 14 09:34 navigation
drwxr-sr-x  3 www-data www-data     4096 Авг 14 09:33 rpc
drwxr-sr-x  3 www-data www-data     4096 Авг 14 09:36 templates
drwxr-xr-x  2 www-data www-data     4096 Авг 14 10:20 triumf
drwxr-sr-x  2 www-data www-data     4096 Авг 14 09:34 ttimage
-rw-r--r--  1 www-data www-data   136649 Авг 14 09:34 uc.jpg
-rw-r--r--  1 www-data www-data     9027 Авг 14 09:39 upload_log.txt
drwxrwxrwx  6 www-data www-data     4096 Авг 14 09:34 uploads
drwxr-sr-x  2 www-data www-data     4096 Авг 14 09:39 webstat
09:23:42
#dpkg -l
Желаемый=неизвестно[u]/установить[i]/удалить[r]/вычистить[p]/зафиксировать[h]
| Состояние=не[n]/установлен[i]/настроен[c]/распакован[U]/частично настроен[F]/
            частично установлен[H]/trig-aWait/Trig-pend
|/ Ошибка?=(нет)/требуется переустановка[R] (верхний регистр
в полях состояния и ошибки указывает на ненормальную ситуацию)
||/ Имя         Версия   Описание
+++-==============-==============-============================================
ii  acpi           1.5-2          displays information on ACPI devices
ii  acpi-support-b 0.137-5        scripts for handling base ACPI events such a
ii  acpid          1:2.0.7-1squee Advanced Configuration and Power Interface e
...
ii  whois          5.0.10         an intelligent whois client
ii  wwwconfig-comm 0.2.1          Debian web auto configuration
ii  x11-apps       7.5+5          X applications
ii  x11-common     1:7.5+8+squeez X Window System (X.Org) infrastructure
ii  xauth          1:1.0.4-1      X authentication utility
ii  xkb-data       1.8-2          X Keyboard Extension (XKB) configuration dat
ii  xml-core       0.13           XML infrastructure and XML catalog file supp
ii  xz-utils       5.0.0-2        XZ-format compression utilities
ii  zlib1g         1:1.2.3.4.dfsg compression library - runtime
ii  zlib1g-dev     1:1.2.3.4.dfsg compression library - development
09:27:22
#dpkg -l|egrep 'apache|httpd|http|php'
ii  apache2                            2.2.16-6+squeeze7            Apache HTTP Server metapackage
ii  apache2-mpm-prefork                2.2.16-6+squeeze7            Apache HTTP Server - traditional non-threaded model
ii  apache2-utils                      2.2.16-6+squeeze7            utility programs for webservers
ii  apache2.2-bin                      2.2.16-6+squeeze7            Apache HTTP Server common binary files
ii  apache2.2-common                   2.2.16-6+squeeze7            Apache HTTP Server common files
ii  libapache2-mod-php5                5.3.3-7+squeeze14            server-side, HTML-embedded scripting language (Apache 2 module)
ii  php5                               5.3.3-7+squeeze14            server-side, HTML-embedded scripting language (metapackage)
ii  php5-cli                           5.3.3-7+squeeze14            command-line interpreter for the php5 scripting language
ii  php5-common                        5.3.3-7+squeeze14            Common files for packages built from the php5 source
ii  php5-gd                            5.3.3-7+squeeze14            GD module for php5
ii  php5-mcrypt                        5.3.3-7+squeeze14            MCrypt module for php5
ii  php5-mysql                         5.3.3-7+squeeze14            MySQL module for php5
ii  php5-suhosin                       0.9.32.1-1                   advanced protection module for php5
ii  phpmyadmin                         4:3.3.7-7                    MySQL web administration tool
09:27:44
#dpkg -l|egrep 'apache|httpd|http|php'
ii  apache2                            2.2.16-6+squeeze7            Apache HTTP Server metapackage
ii  apache2-mpm-prefork                2.2.16-6+squeeze7            Apache HTTP Server - traditional non-threaded model
ii  apache2-utils                      2.2.16-6+squeeze7            utility programs for webservers
ii  apache2.2-bin                      2.2.16-6+squeeze7            Apache HTTP Server common binary files
ii  apache2.2-common                   2.2.16-6+squeeze7            Apache HTTP Server common files
ii  libapache2-mod-php5                5.3.3-7+squeeze14            server-side, HTML-embedded scripting language (Apache 2 module)
ii  php5                               5.3.3-7+squeeze14            server-side, HTML-embedded scripting language (metapackage)
ii  php5-cli                           5.3.3-7+squeeze14            command-line interpreter for the php5 scripting language
ii  php5-common                        5.3.3-7+squeeze14            Common files for packages built from the php5 source
ii  php5-gd                            5.3.3-7+squeeze14            GD module for php5
ii  php5-mcrypt                        5.3.3-7+squeeze14            MCrypt module for php5
ii  php5-mysql                         5.3.3-7+squeeze14            MySQL module for php5
ii  php5-suhosin                       0.9.32.1-1                   advanced protection module for php5
ii  phpmyadmin                         4:3.3.7-7                    MySQL web administration tool
09:27:49
#. /etc/bash_completion

09:28:36
#apt-get install php
Display all 144 possibilities? (y or n)
php5                    php5-mcrypt             php5-xsl                php-getid3              phpmyadmin              phpreports
php5-adodb              php5-memcache           php-apc                 php-gettext             php-net-checkip         php-services-json
php5-auth-pam           php5-memcached          php-auth                php-html-common         php-net-dime            php-services-weather
php5-cgi                php5-ming               php-auth-http           php-htmlpurifier        php-net-dnsbl           php-simpletest
php5-cli                php5-mysql              php-auth-sasl           php-html-safe           php-net-ftp             php-soap
php5-common             php5-odbc               phpbb3                  php-html-template-it    php-net-imap            phpsysinfo
php5-curl               php5-pgsql              phpbb3-l10n             php-http                php-net-ipv4            php-text-captcha
php5-dbg                php5-ps                 php-benchmark           php-http-request        php-net-ldap            php-text-figlet
php5-dev                php5-pspell             php-cache               php-http-upload         php-net-ldap2           php-textile
...
php5-gmp                php5-sqlite             php-crypt-gpg           phpldapadmin            php-net-smtp            phpwebcounter-extra
php5-idn                php5-suhosin            php-date                php-log                 php-net-socket          php-wikidiff2
php5-imagick            php5-svn                php-db                  php-mail                php-net-url             php-xajax
php5-imap               php5-sybase             php-doc                 php-mail-mime           php-net-whois           php-xml-htmlsax3
php5-interbase          php5-tidy               php-elisp               php-mail-mimedecode     php-numbers-words       php-xml-parser
php5-intl               php5-tokyo-tyrant       php-event-dispatcher    php-mdb2                php-openid              php-xml-rpc
php5-lasso              php5-uuid               php-file                php-mdb2-driver-mysql   php-pager               php-xml-rpc2
php5-ldap               php5-xcache             php-fpdf                php-mdb2-driver-pgsql   php-pear                php-xml-rss
php5-librdf             php5-xdebug             phpgacl                 php-mdb2-driver-sqlite  phppgadmin              php-xml-serializer
php5-mapscript          php5-xmlrpc             php-geshi               php-mime-type           php-radius-legacy       php-zeroc-ice
09:28:36
#tail -f /var/log/apache2/
access.log               error.log                other_vhosts_access.log
09:28:36
#tail -f /var/log/apache2/error.log
[Tue Aug 14 10:19:37 2012] [error] [client 10.0.64.160] PHP Fatal error:  Class 'Registry' not found in /var/www/triumf/index.php on line 29
[Tue Aug 14 10:20:52 2012] [notice] caught SIGTERM, shutting down
[Tue Aug 14 10:20:53 2012] [notice] Apache/2.2.16 (Debian) PHP/5.3.3-7+squeeze14 with Suhosin-Patch configured -- resuming normal operations
[Tue Aug 14 10:21:03 2012] [error] [client 10.0.64.160] File does not exist: /var/www/page, referer: http://192.168.13.1/
[Tue Aug 14 10:21:10 2012] [error] [client 10.0.64.160] File does not exist: /var/www/page, referer: http://192.168.13.1/
[Tue Aug 14 10:22:24 2012] [error] [client 10.0.64.160] File does not exist: /var/www/page, referer: http://192.168.13.1/
[Tue Aug 14 10:22:29 2012] [error] [client 10.0.64.160] File does not exist: /var/www/press, referer: http://192.168.13.1/
[Tue Aug 14 10:24:19 2012] [error] [client 10.0.64.160] File does not exist: /var/www/page, referer: http://192.168.13.1/
[Tue Aug 14 10:29:40 2012] [error] [client 10.0.64.160] File does not exist: /var/www/page, referer: http://192.168.13.1/
[Tue Aug 14 10:30:03 2012] [error] [client 10.0.64.160] File does not exist: /var/www/bids, referer: http://192.168.13.1/
^C
09:32:06
#du -sh /var/www/
812M    /var/www/
09:34:01
#ls /var/www/
111.tgz         .bash_logout    cache/          favicon.ico     .htaccess       log/            templates/      uc.jpg          webstat/
admin/          .bash_profile   codegen/        files/          index.php       navigation/     triumf/         upload_log.txt
application/    .bashrc         code.gif        framework/      info.php        rpc/            ttimage/        uploads/
09:34:01
#ls /var/www/
111.tgz         .bash_logout    cache/          favicon.ico     .htaccess       log/            templates/      uc.jpg          webstat/
admin/          .bash_profile   codegen/        files/          index.php       navigation/     triumf/         upload_log.txt
application/    .bashrc         code.gif        framework/      info.php        rpc/            ttimage/        uploads/
09:34:01
#ls /var/www/
111.tgz  application  codegen   favicon.ico  framework  info.php  navigation  templates  ttimage  upload_log.txt  webstat
admin    cache        code.gif  files        index.php  log       rpc         triumf     uc.jpg   uploads
09:34:37
#cd /var/www

09:35:35
#rm -rf *

09:35:41
#scp -r itk@itk.org.ua:/var/www/triumf /var/www/
itk@itk.org.ua's password:
09:35:49
#scp -rp root@itk.org.ua:/var/www/triumf /var/www/
root@itk.org.ua's password:
Permission denied, please try again.
root@itk.org.ua's password:
Permission denied, please try again.
root@itk.org.ua's password:
09:36:36
#scp -rp root@itk.org.ua:/var/www/triumf /var/www/
root@itk.org.ua's password:
Permission denied, please try again.
root@itk.org.ua's password:
09:38:31
#ping itk.org.ua
PING itk.org.ua (89.184.65.171) 56(84) bytes of data.
^C
--- itk.org.ua ping statistics ---
5 packets transmitted, 0 received, 100% packet loss, time 3999ms

Статистика

Время первой команды журнала08:39:53 2012- 8-14
Время последней команды журнала09:38:31 2012- 8-14
Количество командных строк в журнале56
Процент команд с ненулевым кодом завершения, %14.29
Процент синтаксически неверно набранных команд, % 1.79
Суммарное время работы с терминалом *, час 0.98
Количество командных строк в единицу времени, команда/мин 0.96
Частота использования команд
ls14|=====================| 21.88%
cd8|============| 12.50%
vim7|==========| 10.94%
useradd4|======| 6.25%
dpkg3|====| 4.69%
scp3|====| 4.69%
egrep2|===| 3.12%
httpd2|===| 3.12%
php'2|===| 3.12%
tail2|===| 3.12%
http2|===| 3.12%
mv2|===| 3.12%
/etc/init.d/apache21|=| 1.56%
mkdir1|=| 1.56%
ping1|=| 1.56%
mf1|=| 1.56%
passwd1|=| 1.56%
chown1|=| 1.56%
rm1|=| 1.56%
/etc/init.d/mysql1|=| 1.56%
.1|=| 1.56%
apt-get1|=| 1.56%
see1|=| 1.56%
du1|=| 1.56%
vipw1|=| 1.56%
____
*) Интервалы неактивности длительностью 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$