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

Содержание

Журнал

Пятница (10/21/11)

/dev/pts/8
13:33:26
#nano /var/www/fop2/
13:34:48
# </di<div class="box" style='width:100%;' id='conferencebox'>
root      6591  0.0  0.1  20888  6308 ?        Ss   14:28   0:00 /usr/sbin/apache2 -k start
www-data  6601  0.0  0.1  20888  3596 ?        S    14:28   0:00 /usr/sbin/apache2 -k start
www-data  6602  0.0  0.1  20888  3592 ?        S    14:28   0:00 /usr/sbin/apache2 -k start
www-data  6603  0.0  0.1  20888  3592 ?        S    14:28   0:00 /usr/sbin/apache2 -k start
www-data  6604  0.0  0.1  20888  3592 ?        S    14:28   0:00 /usr/sbin/apache2 -k start
www-data  6605  0.0  0.1  20888  3592 ?        S    14:28   0:00 /usr/sbin/apache2 -k start
root      6898  0.0  0.0   3856   752 pts/9    S+   14:35   0:00 grep apach*
13:35:03
#ps aux | grep fop2
root      6865  0.0  2.0 119712 68820 ?        Ss   14:33   0:00 /usr/local/fop2/fop2_serve  -d -p /var/run/fop2.pid
root      6907  0.0  0.0   3856   752 pts/9    S+   14:35   0:00 grep fop2
13:35:12
#nano /usr/local/fop2/
--- /tmp/l3-saved-5401.5937.11239	2011-10-21 14:35:37.000000000 +0300
+++ /usr/local/fop2/fop2.cfg	2011-10-21 14:35:50.000000000 +0300
@@ -2,8 +2,8 @@
 ; AMI definitions
 manager_host=localhost
 manager_port=5038
-manager_user=1234
-manager_secret=1234
+manager_user=myuser
+manager_secret=mysecret
 ;event_mask=agent,call,command,system,user,dialplan
 
 ; Daemon definitios
13:36:05
#[general]

13:37:07
#mc
13:38:14
#LANG=C mc
Terminated
/dev/pts/1
13:39:58
#ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   2032   716 ?        Ss   08:29   0:01 init [2]
root         2  0.0  0.0      0     0 ?        S    08:29   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    08:29   0:00 [migration/0]
root         4  0.0  0.0      0     0 ?        S    08:29   0:00 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S    08:29   0:00 [watchdog/0]
root         6  0.0  0.0      0     0 ?        S    08:29   0:00 [migration/1]
root         7  0.0  0.0      0     0 ?        S    08:29   0:00 [ksoftirqd/1]
root         8  0.0  0.0      0     0 ?        S    08:29   0:00 [watchdog/1]
root         9  0.0  0.0      0     0 ?        S    08:29   0:00 [migration/2]
...
root      7211  0.0  0.0   8800  3208 ?        Ss   14:39   0:00 sshd: root@pts/12
root      7216  0.2  0.0   3948   752 pts/12   Ss+  14:39   0:00 script -f -c bash -q /root/.lilalo//1171150621555925756-1319197163.script
root      7265  0.0  0.0   3952   476 pts/12   S+   14:39   0:00 script -f -c bash -q /root/.lilalo//1171150621555925756-1319197163.script
root      7266  0.0  0.0   5176  1868 pts/13   Ss   14:39   0:00 bash
root      7289  0.0  0.0   7632  2360 pts/13   S+   14:39   0:00 mc
root      7291  0.0  0.0   3948   752 pts/14   Ss+  14:39   0:00 script -f -c bash -q /root/.lilalo//126388782598824278-1319197180.script
root      7322  0.0  0.0   3952   480 pts/14   S+   14:39   0:00 script -f -c bash -q /root/.lilalo//126388782598824278-1319197180.script
root      7323  0.0  0.0   5180  1876 pts/15   Ts+  14:39   0:00 bash
root      7352  0.0  0.0  10384  2432 ?        S    14:39   0:00 sendmail: MTA: ./p9K6qjbv003033 mail.farmak.ua.: user open
root      7371  0.0  0.0   4428  1056 pts/2    R+   14:40   0:00 ps aux
13:40:05
#ps aux | grep mc
root      7149  0.0  0.0   5656  2312 pts/9    S+   14:38   0:00 mc
root      7289  0.0  0.0   7632  2360 pts/13   S+   14:39   0:00 mc
root      7380  0.0  0.0   3856   752 pts/2    S+   14:40   0:00 grep mc
13:40:16
#ps kill 7149
ERROR: Unknown sort specifier.
********* simple selection *********  ********* selection by list *********
-A all processes                      -C by command name
-N negate selection                   -G by real group ID (supports names)
-a all w/ tty except session leaders  -U by real user ID (supports names)
-d all except session leaders         -g by session OR by effective group name
-e all processes                      -p by process ID
T  all processes on this terminal     -s processes in the sessions given
a  all w/ tty, including other users  -t by tty
g  OBSOLETE -- DO NOT USE             -u by effective user ID (supports names)
...
-o,o user-defined  -f full            --Group --User --pid --cols --ppid
-j,j job control   s  signal          --group --user --sid --rows --info
-O,O preloaded -o  v  virtual memory  --cumulative --format --deselect
-l,l long          u  user-oriented   --sort --tty --forest --version
-F   extra full    X  registers       --heading --no-heading --context
                    ********* misc options *********
-V,V  show version      L  list format codes  f  ASCII art forest
-m,m,-L,-T,H  threads   S  children in sum    -y change -l format
-M,Z  security data     c  true command name  -c scheduling class
-w,w  wide output       n  numeric WCHAN,UID  -H process hierarchy
13:40:54
#kill
kill: usage: kill [-s sigspec | -n signum | -sigspec] pid | jobspec ... or kill -l [sigspec]
13:41:06
#kill pid 7149
bash: kill: pid: arguments must be process or job IDs
13:41:23
#kill -s pid 7149
bash: kill: pid: invalid signal specification
/dev/pts/12
13:49:04
#cd /var/www/

13:49:14
#ls
fop2  index.html  panel
13:49:16
#rm -r fop2

13:49:29
#cd /

13:49:31
#ls
bin   dev  fop2  initrd.img      lib         media  opt   root  selinux  sys  usr  vmlinuz
boot  etc  home  initrd.img.old  lost+found  mnt    proc  sbin  srv      tmp  var  vmlinuz.old
13:49:33
#cd fop2/

13:49:37
#make install
New configuration file /usr/local/fop2/fop2.cfg.new installed. Original fop2.cfg preserved.
update-rc.d: using dependency based boot sequencing
Done!
13:49:44
#cd /var/www/

13:49:58
#ls
fop2  index.html  panel
13:49:59
#cd /

13:50:37
#ls
bin   dev  fop2  initrd.img      lib         media  opt   root  selinux  sys  usr  vmlinuz
boot  etc  home  initrd.img.old  lost+found  mnt    proc  sbin  srv      tmp  var  vmlinuz.old
13:51:35
#cd /v
var/         vmlinuz      vmlinuz.old
13:51:35
#cd /var/www/fop2/

13:51:47
#cd /

13:51:55
#cd /usr/local/fop2/

13:52:00
#cat extensions_override_freepbx.conf >> /etc/asterisk/extensions_override_freepbx.conf

13:52:26
#nano etc/asterisk/manager.conf
13:53:10
#nano etc/asterisk/
13:53:10
#nano etc/asterisk/
--- /tmp/l3-saved-7630.16458.29400	2011-10-21 14:53:42.000000000 +0300
+++ etc/asterisk/manager.d/fop.conf	2011-10-21 14:53:54.000000000 +0300
@@ -1,4 +1,3 @@
-
 [myuser]
 secret = mysecret
 deny=0.0.0.0/0.0.0.0
13:53:10
#nano etc/asterisk/manager.
13:53:10
#nano etc/asterisk/manager.
13:53:10
#nano etc/asterisk/manager.
13:53:10
#nano etc/asterisk/manager.
13:53:10
#nano etc/asterisk/manager.conf
13:53:32
#;
manager.conf  manager.d/
13:53:32
#nano etc/asterisk/manager.
13:53:32
#nano etc/asterisk/manager.
13:53:32
#nano etc/asterisk/manager.d/
13:53:32
#nano etc/asterisk/manager.d/
13:53:32
#nano etc/asterisk/manager.d/fop.conf
13:53:57
#/usr/local/fop2/fop2_server --test
Flash Operator Panel 2 - No valid license found. Demo Mode
Connection to manager OK!
13:54:40
#cd /home/user/

13:56:16
#ls
11        9999.wav    dictate.txt  Downloads        fop2                       Music            Pictures  Templates
123.gsm   convert.py  digits.txt   festival-agi.pl  fop2-2.23-debian-i386.tgz  pbdirectory.txt  Public    Videos
9900.wav  Desktop     Documents    followme.txt     letters.txt                phonetic.txt     ru.txt
13:56:17
#ls fop
ls: cannot access fop: No such file or directory
13:56:23
#ls -f fop
ls: cannot access fop: No such file or directory
14:00:04
#ls
autobuttons.cfg                    autoconfig-users-freepbx.sh.~1~    FOP2Callbacks.pm         fop2settings.db
autobuttons.cfg.~1~                buttons.cfg.sample                 FOP2Callbacks.pm.sample  generate_override_contexts.pl
autoconfig-buttons-freepbx.sh      buttons.cfg.sample.~1~             fop2.cfg                 recording_fop2.pl
autoconfig-buttons-freepbx.sh.~1~  extensions_override_freepbx.conf   fop2.cfg.new             tovoicemail.pl
autoconfig-users-freepbx.sh        extensions_override_freepbx.conf~  fop2_server
14:00:06
#nano fop2.cfg
--- /tmp/l3-saved-7630.19020.27512	2011-10-21 15:00:18.000000000 +0300
+++ fop2.cfg	2011-10-21 15:02:12.000000000 +0300
@@ -1,6 +1,6 @@
 [general]
 ; AMI definitions
-manager_host=localhost
+manager_host=192.168.40.1
 manager_port=5038
 manager_user=myuser
 manager_secret=mysecret
14:02:13
#[general]
Restarting Flash Operator Panel 2: fop2.
14:04:30
#[general]
audio         download.php  index_only_extensions.html  mysql.db          phonebook.php     secbox.html     wavplayer.swf
checkdir.php  fop2.swf      js                          mysql-upgrade.db  phonetabs.php     setvar.php
config.php    images        lang                        niftyplayer.swf   recordings.php    uploads
css           index.html    lib                         phonebook.html    registerbox.html  vphonebook.php
14:04:41
#ls /var/www/
fop2  index.html  panel
14:04:49
#ls /var/
backups  cache  games  lib  local  lock  log  mail  opt  run  spool  tmp  www
14:04:54
#ls /usr/local/
bin  etc  fop2  games  include  lib  man  sbin  share  src
14:05:07
#ls /usr/local/fop2/
autobuttons.cfg                    autoconfig-users-freepbx.sh.~1~    FOP2Callbacks.pm         fop2settings.db
autobuttons.cfg.~1~                buttons.cfg.sample                 FOP2Callbacks.pm.sample  generate_override_contexts.pl
autoconfig-buttons-freepbx.sh      buttons.cfg.sample.~1~             fop2.cfg                 recording_fop2.pl
autoconfig-buttons-freepbx.sh.~1~  extensions_override_freepbx.conf   fop2.cfg.new             tovoicemail.pl
autoconfig-users-freepbx.sh        extensions_override_freepbx.conf~  fop2_server
14:05:10
#ls /fop2/
html  init  LICENSE  Makefile  README  server
14:05:20
#ls /fop2/html/
audio         download.php  index_only_extensions.html  mysql.db          phonebook.php     secbox.html     wavplayer.swf
checkdir.php  fop2.swf      js                          mysql-upgrade.db  phonetabs.php     setvar.php
config.php    images        lang                        niftyplayer.swf   recordings.php    uploads
css           index.html    lib                         phonebook.html    registerbox.html  vphonebook.php
14:05:25
#ls /var/www/fop2/
audio         download.php  index_only_extensions.html  mysql.db          phonebook.php     secbox.html     wavplayer.swf
checkdir.php  fop2.swf      js                          mysql-upgrade.db  phonetabs.php     setvar.php
config.php    images        lang                        niftyplayer.swf   recordings.php    uploads
css           index.html    lib                         phonebook.html    registerbox.html  vphonebook.php
14:05:38
#cd /

14:06:16
#nano /
14:06:16
#nano /usr/local/fop2/fop2.cfg
--- /tmp/l3-saved-7630.19931.1061	2011-10-21 15:06:37.000000000 +0300
+++ /usr/local/fop2/fop2.cfg	2011-10-21 15:06:49.000000000 +0300
@@ -9,7 +9,7 @@
 ; Daemon definitios
 ;listen_port      = 4445
 ;restrict_host    = www.asternic.org
-web_dir          = /var/www/fop2
+;web_dir          = /var/www/fop2
 
 ; Global Config
 poll_interval      = 86400
14:07:09
#cat --help
Usage: cat [OPTION]... [FILE]...
Concatenate FILE(s), or standard input, to standard output.
  -A, --show-all           equivalent to -vET
  -b, --number-nonblank    number nonempty output lines
  -e                       equivalent to -vE
  -E, --show-ends          display $ at end of each line
  -n, --number             number all output lines
  -s, --squeeze-blank      suppress repeated empty output lines
  -t                       equivalent to -vT
  -T, --show-tabs          display TAB characters as ^I
...
      --help     display this help and exit
      --version  output version information and exit
With no FILE, or when FILE is -, read standard input.
Examples:
  cat f - g  Output f's contents, then standard input, then g's contents.
  cat        Copy standard input to standard output.
Report cat bugs to bug-coreutils@gnu.org
GNU coreutils home page: <http://www.gnu.org/software/coreutils/>
General help using GNU software: <http://www.gnu.org/gethelp/>
For complete documentation, run: info coreutils 'cat invocation'
14:07:15
#man cat
14:08:14
#nano /usr/local/fop2/fop2.cfg 10
14:08:52
#cat /usr/local/fop2/fop2.cfg
[general]
; AMI definitions
manager_host=localhost
manager_port=5038
manager_user=myuser
manager_secret=mysecret
;event_mask=agent,call,command,system,user,dialplan
; Daemon definitios
;listen_port      = 4445
;restrict_host    = www.asternic.org
...
;
; user=620:1234:all:queues
; user=621:1234:dial,transfer,pickup:deptA
; user=622:1234:all
; user=623:1234:meetme,pickup
; buttonfile=buttons.cfg
; ------ END SAMPLE ------
; This line is NOT commented, it executes
; the autoconfig configuration for FreePBX
#exec autoconfig-users-freepbx.sh
14:18:26
#nano /etc/asterisk/extensions.conf
прошло 13 минут
14:32:10
#cp /
bin/            fop2/           lib/            opt/            selinux/        usr/
boot/           home/           lost+found/     proc/           srv/            var/
dev/            initrd.img      media/          root/           sys/            vmlinuz
etc/            initrd.img.old  mnt/            sbin/           tmp/            vmlinuz.old
14:32:10
#cp /etc/asterisk /home/user/
cp: omitting directory `/etc/asterisk'
14:38:58
#cp /etc/asterisk /home/user/D
Desktop/   Documents/ Downloads/
14:38:58
#cp /etc/asterisk/*.* /home/user/Downloads/
cp: omitting directory `/etc/asterisk/manager.d'
14:39:21
#cp /etc/asterisk /home/user/Downloads/
cp: omitting directory `/etc/asterisk'
14:39:40
#cp /etc/asterisk /home/user
cp: omitting directory `/etc/asterisk'
14:39:45
#cp /etc/asterisk/*.conf /home/user

14:46:30
#chown user /home/user/*.conf

прошло 13 минут
/dev/pts/1
14:59:59
#LANG=ru_RU date
Fri Oct 21 16:00:14 EEST 2011
15:00:14
#LANG=ru_RU
Display all 123 possibilities? (y or n)
11                                .gvfs/
adsi.conf                         h323.conf
adtranvofr.conf                   http.conf
agents.conf                       iax.conf
ais.conf                          iaxprov.conf
alarmreceiver.conf                .ICEauthority
alsa.conf                         indications.conf
amd.conf                          jabber.conf
asterisk.conf                     jingle.conf
...
Downloads/                        res_ldap.conf
dsp.conf                          res_odbc.conf
dundi.conf                        res_pgsql.conf
enum.conf                         res_snmp.conf
extconfig.conf                    rpt.conf
extensions.conf                   rtp.conf
extensions_minivm.conf            ru.txt
extensions_override_freepbx.conf  say.conf
features.conf                     sip.conf
--More--                               ^C

Файлы

  • --help
  • /etc/asterisk/extensions_override_freepbx.conf
  • /usr/local/fop2/fop2.cfg
  • --help
    >
    Usage: cat [OPTION]... [FILE]...
    Concatenate FILE(s), or standard input, to standard output.
      -A, --show-all           equivalent to -vET
      -b, --number-nonblank    number nonempty output lines
      -e                       equivalent to -vE
      -E, --show-ends          display $ at end of each line
      -n, --number             number all output lines
      -s, --squeeze-blank      suppress repeated empty output lines
      -t                       equivalent to -vT
      -T, --show-tabs          display TAB characters as ^I
      -u                       (ignored)
      -v, --show-nonprinting   use ^ and M- notation, except for LFD and TAB
          --help     display this help and exit
          --version  output version information and exit
    With no FILE, or when FILE is -, read standard input.
    Examples:
      cat f - g  Output f's contents, then standard input, then g's contents.
      cat        Copy standard input to standard output.
    Report cat bugs to bug-coreutils@gnu.org
    GNU coreutils home page: <http://www.gnu.org/software/coreutils/>
    General help using GNU software: <http://www.gnu.org/gethelp/>
    For complete documentation, run: info coreutils 'cat invocation'
    
    /etc/asterisk/extensions_override_freepbx.conf
    >
    /usr/local/fop2/fop2.cfg
    >
    [general]
    ; AMI definitions
    manager_host=localhost
    manager_port=5038
    manager_user=myuser
    manager_secret=mysecret
    ;event_mask=agent,call,command,system,user,dialplan
    ; Daemon definitios
    ;listen_port      = 4445
    ;restrict_host    = www.asternic.org
    ;web_dir          = /var/www/fop2
    ; Global Config
    poll_interval      = 86400
    poll_voicemail     = 1
    monitor_ipaddress  = 0
    ; Force blind transfer on asterisk 1.6
    blind_transfer     = 1
    ; Force supervised transfer on asterisk 1.4
    ; requires the atxfer manager backport patch
    ; supervised_transfer = 1
    ; Force delimiter for asterisk applications
    ; force_parameter_delimiter = ","
    ; When adding or removing members to a queue, fop2 will default to
    ; AddQueueMember/RemoveQueueMember commands. If you set use_agentlogin
    ; to 1, together with the QueueChannel in a button definition set to
    ; an Agent number it will use AgentCallbackLogin and Agentlogoff instead.
    ;
    ; use_agentlogin = 0
    ; Master Password that overrides any individual one
    ;master_key = 5678
    ; Options to send to chan_spy when doing a Listen action
    ; This global setting is overriden by the individual button
    ; spyoptions directive if set (in the button config).
    ; Asterisk 1.6.1 or higher has the option "d" that lets you
    ; switch spying modes using the keypad:
    ;4 = spy mode
    ;5 = whisper mode
    ;6 = barge mode
    spy_options="bq"
    ; Options to send to chan_spy when doing a Whisper action
    ; In Asterisk 1.6.1 or higher you can use B to enable barge (speak
    ; to both channels on a call).
    whisper_options = "w"
    ; When you spy to an ongoing call, your spy session will end as
    ; soon as the conversation you are listening to finishes. If you
    ; rather keep the chan spy session open after the call end, uncomment
    ; the following line.
    ;persistent_spy=1
    ; Filename to use when start monitoring, you can use ${UNIQUEID},
    ; ${ORIG_EXTENSION}, ${DEST_EXTENSION}
    ; and date formats %Y %m %d to construct the filename.
    ;
    ; Settings for modifying the recording filename
    ; Available variables are:
    ; ${UNIQUEID} = Unique Id of the call
    ; ${TIMESTAMP} = Unix Timestamp when the recording was initiated
    ; ${CLIDNUM} = Callerid or Dialed number for the active call
    ; ${CLIDNAME} = Callerid name for the active call
    ; ${DEST_EXTENSION} = Target extenstion being monitored
    ; ${ORIG_EXTENSION} = Extension/User that started the recording (not
    ;                     the other leg)
    ; ${MBOX}           = Mailbox of the extension/user that startend the
    ;                     recording
    ;
    ; Date variables:
    ; %Y 4 digits year
    ; %y 2 digits year
    ; %m 2 digits month
    ; %d 2 digits day
    ; %h 2 digits hour
    ; %i 2 digits minute
    ; %s 2 digits seconds
    ; For elastix Monitoring Tab:
    ; monitor_filename=g${DEST_EXTENSION}-${UNIQUEID}
    ; For fop2 recording interface
    monitor_filename=/var/spool/asterisk/monitor/${ORIG_EXTENSION}_${DEST_EXTENSION}_%h%i%s_${UNIQUEID}
    monitor_format=wav
    monitor_mix=true
    ; To enable the recording interface you must uncomment the following
    ; line, but also you might need to modify the script a little bit
    ; depending on the sox version you have installed.
    ;
    ;monitor_exec=/usr/local/fop2/recording_fop2.pl
    ; You could specify your own script to be executed when the recording
    ; is finished. It will receive 3 parameters, the complete
    ; path and filename of the IN leg, the OUT leg and the final
    ; recording NAME. You should run soxmix in your script to join
    ; the recordings into one file.
    ;
    ; monitor_exec=/var/lib/asterisk/bin/postrecording-script.sh
    ; FOP2 can fire notifications/popups when an extension or queue
    ; member receives a call. The default behaviour is to show a
    ; notification on state RINGING (notify_on_ringing=1).
    ;
    ; To customize notifications, you must uncomment the custom_popup
    ; function in checkdir.php you can replace that notification with
    ; a custom popup function to integrate with other web applications.
    ;
    ; For call centers you might need to perform a popup not on the
    ; RINGING state but when the call is CONNECTED to an agent. If you
    ; set in the queue configuration in queues.conf the option
    ; eventwhencalled=yes and then set here notify_on_connect=1,
    ; fop2 will send notifications on queue connected calls
    ; during AGENTCONNECT events. This will only work for inbound calls
    ; from a queue.
    ;
    ; notify_on_ringing = 1
    ; notify_on_connect = 1
    ; Call pickup uses the pickupmark variable by default. In multi tenant
    ; systems this might lead to problems as you might end un picking up
    ; some other tenant call. In that case you might want to try to
    ; pickup the call by its context uncomenting the following line:
    ;
    ; no_pickupmark=1
    ; Path to your voicemail directory
    ; For voicemail to work the fop2 server must run on the same server
    ; as asterisk, or your voicemail directory must be network mounted
    voicemail_path=/var/spool/asterisk/voicemail
    ; By default IM chats are not logged/saved. If you uncomment
    ; the following parameter, all chats will be stored on the chatlog
    ; table inside the fop2settings.db sqlite database.
    ;
    ; save_chat_log=1
    ; Khomp GSM interface to send SMS messages
    ; If there is a card plugged, fop2 will auto discover it
    ; and use the first one available. If you want to change it
    ; to a fixed one, uncomemnt the folowing line and change the name
    ; to your liking
    ;
    ; khomp_gsm=Khomp/b0
    ; --- SAMPLE GROUPS ---
    ; group=queues:QUEUE/100,QUEUE/101
    ; group=deptA:SIP/100,SIP/101,SIP/102
    ; --- END SAMPLE ---
    ; --- SAMPLE USER LIST ---
    ; format: user= EXTENSION : SECRET : PERMISSIONS : GROUPS
    ; You can enumerate several permissions and groups separated by comma
    ; available permissions:  'all', 'dial', 'hangup', 'meetme', 'pickup',
    ;                         'record', 'spy', 'transfer', 'whisper',
    ;                         'queuemanager', 'queueagent', 'phonebook',
    ;                         'chat', 'preferences', 'hangupself',
    ;                         'recordself', 'voicemailadmin'
    ;
    ; user=620:1234:all:queues
    ; user=621:1234:dial,transfer,pickup:deptA
    ; user=622:1234:all
    ; user=623:1234:meetme,pickup
    ; buttonfile=buttons.cfg
    ; ------ END SAMPLE ------
    ; This line is NOT commented, it executes
    ; the autoconfig configuration for FreePBX
    #exec autoconfig-users-freepbx.sh
    

    Статистика

    Время первой команды журнала13:33:26 2011-10-21
    Время последней команды журнала15:00:14 2011-10-21
    Количество командных строк в журнале77
    Процент команд с ненулевым кодом завершения, %15.58
    Процент синтаксически неверно набранных команд, % 0.00
    Суммарное время работы с терминалом *, час 1.45
    Количество командных строк в единицу времени, команда/мин 0.89
    Частота использования команд
    nano20|========================| 24.10%
    ls15|==================| 18.07%
    cd11|=============| 13.25%
    cp7|========| 8.43%
    ps4|====| 4.82%
    [general]3|===| 3.61%
    cat3|===| 3.61%
    kill3|===| 3.61%
    LANG=ru_RU2|==| 2.41%
    grep2|==| 2.41%
    '1|=| 1.20%
    <1|=| 1.20%
    /di<1|=| 1.20%
    man1|=| 1.20%
    chown1|=| 1.20%
    fop2_server1|=| 1.20%
    >1|=| 1.20%
    make1|=| 1.20%
    rm1|=| 1.20%
    /etc/asterisk/extensions_override_freepbx.conf1|=| 1.20%
    mc1|=| 1.20%
    div1|=| 1.20%
    LANG=C1|=| 1.20%
    ____
    *) Интервалы неактивности длительностью 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$