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

Содержание

Журнал

Вторник (04/09/13)

/dev/pts/4
15:48:31
#ln -s vm-
Display all 113 possibilities? (y or n)
vm-advopts.gsm            vm-from.gsm               vm-msginstruct.gsm        vm-rec-busy.gsm           vm-then-pound.gsm
vm-and.gsm                vm-from-phonenumber.gsm   vm-msgsaved.gsm           vm-received.gsm           vm-theperson.gsm
vm-calldiffnum.gsm        vm-goodbye.gsm            vm-newpassword.gsm        vm-rec-name.gsm           vm-tmpexists.gsm
vm-changeto.gsm           vm-helpexit.gsm           vm-newuser.gsm            vm-record-prepend.gsm     vm-tocallback.gsm
vm-Cust1.gsm              vm-INBOX.gsm              vm-next.gsm               vm-rec-temp.gsm           vm-tocallnum.gsm
vm-Cust2.gsm              vm-incorrect.gsm          vm-nobodyavail.gsm        vm-rec-unv.gsm            vm-tocancel.gsm
vm-Cust3.gsm              vm-incorrect-mailbox.gsm  vm-nobox.gsm              vm-reenterpassword.gsm    vm-tocancelmsg.gsm
vm-Cust4.gsm              vm-instructions.gsm       vm-no.gsm                 vm-repeat.gsm             vm-toenternumber.gsm
vm-Cust5.gsm              vm-intro.gsm              vm-nomore.gsm             vm-review.gsm             vm-toforward.gsm
...
vm-enter-num-to-call.gsm  vm-last.gsm               vm-onefor.gsm             vm-savefolder.gsm         vm-torerecord.gsm
vm-extension.gsm          vm-leavemsg.gsm           vm-options.gsm            vm-savemessage.gsm        vm-undeleted.gsm
vm-Family.gsm             vm-login.gsm              vm-opts-full.gsm          vm-saveoper.gsm           vm-undelete.gsm
vm-first.gsm              vm-mailboxfull.gsm        vm-opts.gsm               vm-sorry.gsm              vm-unknown-caller.gsm
vm-for.gsm                vm-marked-nonurgent.gsm   vm-passchanged.gsm        vm-star-cancel.gsm        vm-Urgent.gsm
vm-forward.gsm            vm-marked-urgent.gsm      vm-password.gsm           vm-starmain.gsm           vm-whichbox.gsm
vm-forward-multiple.gsm   vm-message.gsm            vm-pls-try-again.gsm      vm-tempgreetactive.gsm    vm-Work.gsm
vm-forwardoptions.gsm     vm-messages.gsm           vm-press.gsm              vm-tempgreeting2.gsm      vm-youhave.gsm
vm-Friends.gsm            vm-minutes.gsm            vm-prev.gsm               vm-tempgreeting.gsm
vm-from-extension.gsm     vm-mismatch.gsm           vm-reachoper.gsm          vm-tempremoved.gsm
15:48:31
#ln -s beep.gsm vm-newx.gsm

15:49:29
#ln -s beep.gsm vm-message
vm-message.gsm   vm-messages.gsm
15:49:59
#grep -r vm-messagex2 /usr/share/asterisk/sounds/
grep: /usr/share/asterisk/sounds/ru/custom: No such file or directory
15:54:28
#mv ru ru-x

15:54:31
#cd /root/

15:54:35
#wget https://github.com/pbxware/asterisk-sounds/archive/master.zip
--2013-04-09 16:54:39--  https://github.com/pbxware/asterisk-sounds/archive/master.zip
Resolving github.com... 204.232.175.90
Connecting to github.com|204.232.175.90|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://nodeload.github.com/pbxware/asterisk-sounds/zip/master [following]
--2013-04-09 16:54:39--  https://nodeload.github.com/pbxware/asterisk-sounds/zip/master
Resolving nodeload.github.com... 207.97.227.252
Connecting to nodeload.github.com|207.97.227.252|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 16728768 (16M) [application/zip]
Saving to: “master.zip”
15:59:14
#ls -l
.aptitude/         .bash_history      .bashrc            .l3rc              master.zip         .nano_history      .rnd
.asterisk_history  .bash_profile      install            .lilalo/           .mc/               .profile           .ssh/
15:59:14
#mkdir ru

15:59:25
#cd ru

15:59:27
#unzip ../master.zip
bash: unzip: command not found
15:59:34
#apt-get install unzip
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
  zip
The following NEW packages will be installed:
  unzip
0 upgraded, 1 newly installed, 0 to remove and 29 not upgraded.
Need to get 179 kB of archives.
After this operation, 406 kB of additional disk space will be used.
Get:1 http://192.168.15.253/debian/ squeeze/main unzip i386 6.0-4 [179 kB]
Fetched 179 kB in 0s (7,546 kB/s)
Selecting previously deselected package unzip.
(Reading database ... 110164 files and directories currently installed.)
Unpacking unzip (from .../archives/unzip_6.0-4_i386.deb) ...
Processing triggers for man-db ...
Setting up unzip (6.0-4) ...
15:59:47
#ls asterisk-sounds-master/vm-new
vm-newn.wav         vm-newpassword.wav  vm-newuser.wav      vm-newx.wav
16:00:08
#asterisk -rvvv
Asterisk 1.6.2.9-2+squeeze10, Copyright (C) 1999 - 2010 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
  == Parsing '/etc/asterisk/asterisk.conf':   == Found
  == Parsing '/etc/asterisk/extconfig.conf':   == Found
Connected to Asterisk 1.6.2.9-2+squeeze10 currently running on linux4 (pid = 1311)
...
[Apr  9 17:00:55] WARNING[8536]: app_voicemail.c:7226 play_message: Playback of message /var/spool/asterisk/voicemail/default/1402/INBOX/msg0000 failed
    -- <SIP/1401-000000c4> Playing 'vm-advopts.slin' (language 'ru')
    -- <SIP/1401-000000c4> Playing 'vm-repeat.slin' (language 'ru')
    -- <SIP/1401-000000c4> Playing 'vm-next.slin' (language 'ru')
    -- <SIP/1401-000000c4> Playing 'vm-delete.slin' (language 'ru')
    -- <SIP/1401-000000c4> Playing 'vm-toforward.slin' (language 'ru')
    -- <SIP/1401-000000c4> Playing 'vm-savemessage.slin' (language 'ru')
    -- <SIP/1401-000000c4> Playing 'vm-helpexit.slin' (language 'ru')
linux4*CLI> quit
Executing last minute cleanups
16:01:30
#ls /root/
.aptitude/         .bash_profile      .l3rc              .mc/               .rnd
.asterisk_history  .bashrc            .lilalo/           .nano_history      ru/
.bash_history      install            master.zip         .profile           .ssh/
16:01:30
#ls /root/master.zip
/root/master.zip
16:01:37
#scp 192.168.40.1:/root/master.zip /root/init 0
0: No such file or directory
/dev/pts/1
16:11:25
#cd /home/user/Do
Documents/ Downloads/
/dev/pts/0
16:11:25
#cd /home/user/Do
Documents/ Downloads/
16:11:25
#cd /home/user/Downloads/

/dev/pts/1
16:11:25
#cd /home/user/Downloads/

16:12:09
#ls
asterisk-core-sounds-ru-gsm-1.4.23.tar.gz   sounds
asterisk-core-sounds-ru-gsm-current.tar.gz
/dev/pts/0
16:12:09
#ls
asterisk-core-sounds-ru-gsm-1.4.23.tar.gz   sounds
asterisk-core-sounds-ru-gsm-current.tar.gz
/dev/pts/1
16:12:10
#cd sounds/

/dev/pts/0
16:12:10
#cd sounds/

/dev/pts/1
16:12:17
#;s
bash: syntax error near unexpected token `;'
/dev/pts/0
16:12:17
#;s
bash: syntax error near unexpected token `;'
/dev/pts/1
16:12:18
#ls
ru_core_danil  ru_core_romik  ru_vm_Lance
/dev/pts/0
16:12:18
#ls
ru_core_danil  ru_core_romik  ru_vm_Lance
/dev/pts/1
16:12:19
#cd ru_core_danil/

/dev/pts/0
16:12:19
#cd ru_core_danil/

/dev/pts/1
16:13:13
#;s
bash: syntax error near unexpected token `;'
/dev/pts/0
16:13:13
#;s
bash: syntax error near unexpected token `;'
/dev/pts/1
16:13:14
#ls
ru
/dev/pts/0
16:13:14
#ls
ru
/dev/pts/1
16:13:15
#rm -rf /usr/share/asterisk/sounds/ru

/dev/pts/0
16:13:15
#rm -rf /usr/share/asterisk/sounds/ru

/dev/pts/1
16:14:27
#cp -r /ru /usr/share/asterisk/sounds/ru
cp: cannot stat `/ru': No such file or directory
/dev/pts/0
16:14:27
#cp -r /ru /usr/share/asterisk/sounds/ru
cp: cannot stat `/ru': No such file or directory
/dev/pts/1
16:15:57
#cp -r ru /usr/share/asterisk/sounds/ru

/dev/pts/0
16:15:57
#cp -r ru /usr/share/asterisk/sounds/ru

/dev/pts/1
16:16:02
#ls /usr/share/asterisk/sounds/ru
agent-newlocation.gsm  vm-newpassword.gsm
/dev/pts/0
16:16:02
#ls /usr/share/asterisk/sounds/ru
agent-newlocation.gsm  vm-newpassword.gsm
/dev/pts/1
16:17:01
#ls ru
agent-newlocation.gsm  vm-newpassword.gsm
/dev/pts/0
16:17:01
#ls ru
agent-newlocation.gsm  vm-newpassword.gsm
/dev/pts/1
16:17:13
#cd /home/user/Downloads/

/dev/pts/0
16:17:13
#cd /home/user/Downloads/

/dev/pts/1
16:17:31
#cd /home/user/Downloads/sounds/

/dev/pts/0
16:17:31
#cd /home/user/Downloads/sounds/

/dev/pts/1
16:17:36
#ls
ru_core_danil  ru_core_romik  ru_vm_Lance
/dev/pts/0
16:17:36
#ls
ru_core_danil  ru_core_romik  ru_vm_Lance
/dev/pts/1
16:17:37
#cd ru_core_danil/

/dev/pts/0
16:17:37
#cd ru_core_danil/

/dev/pts/1
16:17:44
#ls
ru
/dev/pts/0
16:17:44
#ls
ru
/dev/pts/1
16:17:44
#cd ru

/dev/pts/0
16:17:44
#cd ru

/dev/pts/1
16:17:47
#ls
agent-newlocation.gsm  vm-newpassword.gsm
/dev/pts/0
16:17:47
#ls
agent-newlocation.gsm  vm-newpassword.gsm
/dev/pts/1
16:17:48
#cd..
bash: cd..: command not found
/dev/pts/0
16:17:48
#cd..
bash: cd..: command not found
/dev/pts/1
16:17:54
#cd ..

/dev/pts/0
16:17:54
#cd ..

/dev/pts/1
16:17:56
#cd ..

/dev/pts/0
16:17:56
#cd ..

/dev/pts/1
16:20:52
#ls
ru_core_danil  ru_core_romik  ru_vm_Lance
/dev/pts/0
16:20:52
#ls
ru_core_danil  ru_core_romik  ru_vm_Lance
/dev/pts/1
16:20:53
#cd ru_core_romik/

/dev/pts/0
16:20:53
#cd ru_core_romik/

/dev/pts/1
16:21:00
#ls
ru
/dev/pts/0
16:21:00
#ls
ru
/dev/pts/1
16:21:01
#cd ru

/dev/pts/0
16:21:01
#cd ru

/dev/pts/1
16:21:03
#ls
agent-newlocation.gsm  vm-newpassword.gsm  vm-newuser.gsm
/dev/pts/0
16:21:03
#ls
agent-newlocation.gsm  vm-newpassword.gsm  vm-newuser.gsm
/dev/pts/1
16:21:05
#cd ..

/dev/pts/0
16:21:05
#cd ..

/dev/pts/1
16:21:12
#cd ..

/dev/pts/0
16:21:12
#cd ..

/dev/pts/1
16:21:14
#ls
ru_core_danil  ru_core_romik  ru_vm_Lance
/dev/pts/0
16:21:14
#ls
ru_core_danil  ru_core_romik  ru_vm_Lance
/dev/pts/1
16:21:15
#cd ru_vm_Lance/

/dev/pts/0
16:21:15
#cd ru_vm_Lance/

/dev/pts/1
16:21:23
#ls
ru
16:21:23
#cd ru

/dev/pts/0
16:21:23
#ls
ru
16:21:23
#cd ru

/dev/pts/1
16:21:26
#ls
vm-newpassword.gsm
/dev/pts/0
16:21:26
#ls
vm-newpassword.gsm
/dev/pts/1
16:21:26
#ssh 192.168.30.1
The authenticity of host '192.168.30.1 (192.168.30.1)' can't be established.
RSA key fingerprint is 0f:23:bb:84:43:fd:89:66:1f:9b:48:a7:21:a9:1e:f8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.30.1' (RSA) to the list of known hosts.
root@192.168.30.1's password:
Linux linux3 2.6.39-bpo.2-686-pae #1 SMP Thu Aug 4 11:02:22 UTC 2011 i686
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon Apr  8 16:33:50 2013
l3-agent is already running: pid=1886; pidfile=/root/.lilalo/l3-agent.pid
/dev/pts/0
16:21:26
#ssh 192.168.30.1
The authenticity of host '192.168.30.1 (192.168.30.1)' can't be established.
RSA key fingerprint is 0f:23:bb:84:43:fd:89:66:1f:9b:48:a7:21:a9:1e:f8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.30.1' (RSA) to the list of known hosts.
root@192.168.30.1's password:
Linux linux3 2.6.39-bpo.2-686-pae #1 SMP Thu Aug 4 11:02:22 UTC 2011 i686
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon Apr  8 16:33:50 2013
l3-agent is already running: pid=1886; pidfile=/root/.lilalo/l3-agent.pid
/dev/pts/1
16:21:51
#exit
exit
Connection to 192.168.30.1 closed.
/dev/pts/0
16:21:51
#exit
exit
Connection to 192.168.30.1 closed.
/dev/pts/1
16:22:58
#nano /etc/asterisk/sip.conf
--- /tmp/l3-saved-1821.21173.7172	2013-04-09 17:23:14.000000000 +0300
+++ /etc/asterisk/sip.conf	2013-04-09 17:23:45.000000000 +0300
@@ -20,6 +20,14 @@
 callerid="harare laptop"
 context=gr_all
 
+[1403]
+type=friend
+secret=1234
+host=dynamic
+callerid="harare laptop"
+context=gr_all
+
+
 [gweru]
 type=friend
 secret=1234
/dev/pts/0
16:22:58
#nano /etc/asterisk/sip.conf
прошло 20 минут
/dev/pts/4
16:43:15
#init 0

Среда (04/10/13)

/dev/pts/1
08:19:07
#nano /etc/asterisk/extensions.conf
--- /tmp/l3-saved-1876.7181.10723	2013-04-10 09:21:49.000000000 +0300
+++ /etc/asterisk/extensions.conf	2013-04-10 09:31:44.000000000 +0300
@@ -28,7 +28,7 @@
 ;exten=>_16XX,1,Dial(SIP/minsk/${EXTEN})
 ;exten=>_2XXX,1,Dial(SIP/minsk/${EXTEN})
 
-[local]
+;[local]
 ;exten =>_14XX,1,Dial(SIP/${EXTEN})
 
 [national]
/dev/pts/0
08:19:07
#nano /etc/asterisk/extensions.conf
прошло 20 минут
/dev/pts/1
08:39:22
#[default]00,1,Voicemailmain()
^C
/dev/pts/0
08:39:22
#[default]00,1,Voicemailmain()
^C
/dev/pts/1
08:39:40
#ssh root@192.168.30.1
^C

Статистика

Время первой команды журнала15:48:31 2013- 4- 9
Время последней команды журнала08:39:40 2013- 4-10
Количество командных строк в журнале101
Процент команд с ненулевым кодом завершения, % 9.90
Процент синтаксически неверно набранных команд, % 2.97
Суммарное время работы с терминалом *, час 1.25
Количество командных строк в единицу времени, команда/мин 1.34
Частота использования команд
cd34|=================================| 33.66%
ls32|===============================| 31.68%
s4|===| 3.96%
cp4|===| 3.96%
nano4|===| 3.96%
ln3|==| 2.97%
ssh3|==| 2.97%
cd..2|=| 1.98%
rm2|=| 1.98%
exit2|=| 1.98%
[default]00,1,Voicemailmain()2|=| 1.98%
asterisk1|| 0.99%
mkdir1|| 0.99%
wget1|| 0.99%
scp1|| 0.99%
apt-get1|| 0.99%
grep1|| 0.99%
init1|| 0.99%
mv1|| 0.99%
unzip1|| 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$