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

Содержание

Журнал

Суббота (11/28/09)

/dev/pts/0
10:15:04
#w
 11:15:06 up 15:14,  3 users,  load average: 0.17, 0.08, 0.04
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     tty1     -                25Nov08 367days  0.00s  0.00s -bash
user     tty7     :0               26Nov08  0.00s 41.01s  0.07s x-session-manag
user     pts/0    :0.0             26Nov08  0.00s  0.12s  1.14s gnome-terminal
10:15:06
#l3-agent

/dev/pts/1
10:23:53
#apt-get install asterisk
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  asterisk-config asterisk-sounds-main debhelper gettext html2text
  intltool-debian libc-client2007b libcompress-raw-zlib-perl
  libcompress-zlib-perl libdigest-hmac-perl libdigest-sha1-perl
  libfile-remove-perl libiksemel3 libio-compress-base-perl
  libio-compress-zlib-perl libio-stringy-perl libmail-box-perl
  libmail-sendmail-perl libmailtools-perl libmime-types-perl
...
Setting up libio-stringy-perl (2.110-4) ...
Setting up libmime-types-perl (1.24-1) ...
Setting up libmailtools-perl (2.03-1) ...
Setting up libobject-realize-later-perl (0.18-1) ...
Setting up libuser-identity-perl (0.92-2) ...
Setting up libmail-box-perl (2.082-2) ...
Setting up libsys-hostname-long-perl (1.4-2) ...
Setting up libmail-sendmail-perl (0.79-5) ...
Setting up module-assistant (0.10.11.0) ...
Setting up vpb-driver-source (4.2.38-1) ...
10:26:57
#vi /etc/network/interfaces
--- /tmp/l3-saved-13429.1647.19325	2009-11-28 11:27:32.000000000 +0200
+++ /etc/network/interfaces	2009-11-28 11:28:09.000000000 +0200
@@ -7,4 +7,8 @@
 
 # The primary network interface
 allow-hotplug eth0
-iface eth0 inet dhcp
+iface eth0 inet static
+	address 192.168.7.4
+	netmask 255.255.255.0
+	broadcast 192.168.7.255
+	gateway 192.168.7.254
10:28:14
#ifdown eth0

10:29:06
#ifup eth0

10:29:11
#ifconfig
eth0      Link encap:Ethernet  HWaddr 00:07:e9:0c:45:80
          inet addr:192.168.7.201  Bcast:192.168.7.255  Mask:255.255.255.0
          inet6 addr: fe80::207:e9ff:fe0c:4580/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:590783 errors:0 dropped:0 overruns:0 frame:0
          TX packets:327245 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:871664610 (831.2 MiB)  TX bytes:24231725 (23.1 MiB)
          Base address:0xec00 Memory:dffa0000-dffc0000
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:66 errors:0 dropped:0 overruns:0 frame:0
          TX packets:66 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:4588 (4.4 KiB)  TX bytes:4588 (4.4 KiB)
10:29:47
#ls /etc/rc2.d/*network-manager
/etc/rc2.d/S26network-manager
10:30:10
#mv /etc/rc2.d/{S,s}26network-manager

10:30:29
#ifdown eth0
SIOCDELRT: No such process
10:30:34
#ifup eth0

10:30:43
#ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:07:e9:0c:45:80
          inet addr:192.168.7.4  Bcast:192.168.7.255  Mask:255.255.255.0
          inet6 addr: fe80::207:e9ff:fe0c:4580/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:590980 errors:0 dropped:0 overruns:0 frame:0
          TX packets:327465 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:871685660 (831.3 MiB)  TX bytes:24260461 (23.1 MiB)
          Base address:0xec00 Memory:dffa0000-dffc0000
10:30:46
#ping ya.ru
PING ya.ru (213.180.204.8) 56(84) bytes of data.
64 bytes from ya.ru (213.180.204.8): icmp_seq=1 ttl=52 time=60.7 ms
--- ya.ru ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 60.734/60.734/60.734/0.000 ms
10:30:52
#apt-get install iceweasel
Reading package lists... Done
Building dependency tree
Reading state information... Done
iceweasel is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
10:31:09
#apt-get install ssh
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  openssh-blacklist openssh-blacklist-extra openssh-server
Suggested packages:
  ssh-askpass rssh molly-guard
The following NEW packages will be installed:
  openssh-blacklist openssh-blacklist-extra openssh-server ssh
0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
...
Selecting previously deselected package ssh.
Unpacking ssh (from .../ssh_1%3a5.1p1-5_all.deb) ...
Processing triggers for man-db ...
Setting up openssh-blacklist (0.4.1) ...
Setting up openssh-blacklist-extra (0.4.1) ...
Setting up openssh-server (1:5.1p1-5) ...
Creating SSH2 RSA key; this may take some time ...
Creating SSH2 DSA key; this may take some time ...
Restarting OpenBSD Secure Shell server: sshd.
Setting up ssh (1:5.1p1-5) ...
10:35:17
#dpkg -L asterisk | grep /etc
/etc
/etc/asterisk
/etc/logrotate.d
/etc/logrotate.d/asterisk
/etc/default
/etc/default/asterisk
/etc/init.d
/etc/init.d/asterisk
10:44:21
#ls -l /etc/asterisk/
total 424
-rw-r----- 1 asterisk asterisk   140 2009-01-04 21:26 adsi.conf
-rw-r----- 1 asterisk asterisk   840 2009-01-04 21:26 adtranvofr.conf
-rw-r----- 1 asterisk asterisk  2724 2009-01-04 21:26 agents.conf
-rw-r----- 1 asterisk asterisk  2227 2009-01-04 21:26 alarmreceiver.conf
-rw-r----- 1 asterisk asterisk  2675 2009-01-04 21:26 alsa.conf
-rw-r----- 1 asterisk asterisk   767 2009-01-04 21:26 amd.conf
-rw-r----- 1 asterisk asterisk  3260 2009-01-04 21:26 asterisk.adsi
-rw-r----- 1 asterisk asterisk   247 2009-01-04 21:17 asterisk.conf
-rw-r----- 1 asterisk asterisk  7324 2009-01-04 21:26 cdr.conf
...
-rw-r----- 1 asterisk asterisk  4044 2009-01-04 21:26 skinny.conf
-rw-r----- 1 asterisk asterisk  6691 2009-01-04 21:26 sla.conf
-rw-r----- 1 asterisk asterisk  2665 2009-01-04 21:26 smdi.conf
-rw-r----- 1 asterisk asterisk  1384 2009-01-04 21:26 telcordia-1.adsi
-rw-r----- 1 asterisk asterisk   598 2009-01-04 21:26 udptl.conf
-rw-r----- 1 asterisk asterisk  1804 2009-01-04 21:26 users.conf
-rw-r----- 1 asterisk asterisk 11723 2009-01-04 21:26 voicemail.conf
-rw-r----- 1 asterisk asterisk  2772 2009-01-04 21:26 vpb.conf
-rw-r----- 1 asterisk asterisk   393 2009-01-04 21:26 watchdog.conf
-rw-r----- 1 asterisk asterisk 24193 2009-01-04 21:26 zapata.conf
10:45:44
#ping ya.ru
PING ya.ru (93.158.134.8) 56(84) bytes of data.
64 bytes from ya.ru (93.158.134.8): icmp_seq=1 ttl=50 time=53.1 ms
--- ya.ru ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 53.106/53.106/53.106/0.000 ms
10:45:47
#ifconfig
eth0      Link encap:Ethernet  HWaddr 00:07:e9:0c:45:80
          inet addr:192.168.7.204  Bcast:192.168.7.255  Mask:255.255.255.0
          inet6 addr: fe80::207:e9ff:fe0c:4580/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:596702 errors:0 dropped:0 overruns:0 frame:0
          TX packets:331260 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:879125742 (838.3 MiB)  TX bytes:24673735 (23.5 MiB)
          Base address:0xec00 Memory:dffa0000-dffc0000
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:66 errors:0 dropped:0 overruns:0 frame:0
          TX packets:66 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:4588 (4.4 KiB)  TX bytes:4588 (4.4 KiB)
10:45:51
#ifdown eth0

10:45:57
#ifup eth0

10:46:06
#ifconfig
eth0      Link encap:Ethernet  HWaddr 00:07:e9:0c:45:80
          inet addr:192.168.7.4  Bcast:192.168.7.255  Mask:255.255.255.0
          inet6 addr: fe80::207:e9ff:fe0c:4580/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:596782 errors:0 dropped:0 overruns:0 frame:0
          TX packets:331372 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:879134126 (838.4 MiB)  TX bytes:24709549 (23.5 MiB)
          Base address:0xec00 Memory:dffa0000-dffc0000
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:67 errors:0 dropped:0 overruns:0 frame:0
          TX packets:67 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:4667 (4.5 KiB)  TX bytes:4667 (4.5 KiB)
10:46:07
#ps aux | grep netw
root     16696  0.0  0.0   3116   728 pts/2    S+   11:46   0:00 grep netw
10:46:13
#ps aux | grep -i netw
root     29342  0.0  0.0   3668  1348 ?        Ss   Nov27   0:00 /usr/sbin/NetworkManagerDispatcher --pid-file /var/run/NetworkManager/NetworkManagerDispatcher.pid
root     16712  0.0  0.0   3124   800 pts/2    R+   11:46   0:00 grep -i netw
10:46:19
#kill 29324
bash: kill: (29324) - No such process
10:46:26
#kill 29342

10:46:30
#ps aux | grep -i netw
root     16749  0.0  0.0   3116   788 pts/2    S+   11:46   0:00 grep -i netw
10:46:49
#ls /etc/rc2.d/
README           S20cpufrequtils     s26network-manager
S05loadcpufreq   S20cups             S26network-manager-dispatcher
S10sysklogd      S20exim4            S30gdm
S11klogd         S20hotkey-setup     S30system-tools-backends
S12acpid         S20nfs-common       S89anacron
S12dbus          S20openbsd-inetd    S89atd
S14avahi-daemon  S20policycoreutils  S89cron
S16ssh           S21asterisk         S99rc.local
S18portmap       S24dhcdbd           S99rmnologin
S20bittorrent    S24hal              S99stop-bootlogd
10:46:56
#mv /etc/rc2.d/{S,s}26network-manager-dispatcher

10:48:46
#dpkg -L asterisk | grep bin/
/usr/sbin/astman
/usr/sbin/smsq
/usr/sbin/aelparse
/usr/sbin/muted
/usr/sbin/asterisk
/usr/sbin/astgenkey
/usr/sbin/autosupport
/usr/sbin/safe_asterisk
/usr/sbin/rasterisk
10:57:29
#dpkg -S /etc/asterisk/sip.conf
asterisk-config: /etc/asterisk/sip.conf
10:58:53
#dpkg -l | grep asterisk
ii  asterisk                             1:1.4.21.2~dfsg-3           Open Source Private Branch Exchange (PBX)
ii  asterisk-config                      1:1.4.21.2~dfsg-3           Configuration files for Asterisk
ii  asterisk-sounds-main                 1:1.4.21.2~dfsg-3           Core Sound files for Asterisk (English)
10:59:48
#ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:07:e9:0c:45:80
          inet addr:192.168.7.204  Bcast:192.168.7.255  Mask:255.255.255.0
          inet6 addr: fe80::207:e9ff:fe0c:4580/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:597456 errors:0 dropped:0 overruns:0 frame:0
          TX packets:331912 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:879196521 (838.4 MiB)  TX bytes:24803737 (23.6 MiB)
          Base address:0xec00 Memory:dffa0000-dffc0000
10:59:58
#ps aux | grep -i netw
root     16883  0.0  0.0   3116   744 pts/2    R+   12:00   0:00 grep -i netw
11:00:05
#ps aux | grep -i dhc
root      3150  0.0  0.0   2300   824 ?        S<s  Nov27   0:00 dhclient3 -pf /var/run/dhclient.eth0.pid -lf /var/lib/dhcp3/dhclient.eth0.leases eth0
root     16978  0.0  0.0   2580  1416 ?        Ss   Nov27   0:00 /usr/sbin/dhcdbd --system
root     16892  0.0  0.0   3120   796 pts/2    R+   12:00   0:00 grep -i dhc
11:00:09
#kill 3150

11:00:13
#ifdown eth0

11:00:31
#ifup eth0

11:00:37
#ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:07:e9:0c:45:80
          inet addr:192.168.7.4  Bcast:192.168.7.255  Mask:255.255.255.0
          inet6 addr: fe80::207:e9ff:fe0c:4580/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:597522 errors:0 dropped:0 overruns:0 frame:0
          TX packets:332009 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:879204747 (838.4 MiB)  TX bytes:24820155 (23.6 MiB)
          Base address:0xec00 Memory:dffa0000-dffc0000
11:02:21
#man asterisk
11:03:20
#man asterisk
11:13:19
#vi /etc/asterisk/sip.conf
прошло 16 минут
11:29:50
#vi /etc/asterisk/sip.conf
11:29:55
#;tos_sip=cs3 ; Sets TOS for SIP packets.
Do you want to ping broadcast? Then -b
11:30:03
#ping -b 192.168.7.255
WARNING: pinging broadcast address
PING 192.168.7.255 (192.168.7.255) 56(84) bytes of data.
64 bytes from 192.168.7.202: icmp_seq=1 ttl=64 time=1.10 ms
64 bytes from 192.168.7.209: icmp_seq=1 ttl=64 time=1.72 ms (DUP!)
64 bytes from 192.168.7.202: icmp_seq=2 ttl=64 time=0.462 ms
64 bytes from 192.168.7.209: icmp_seq=2 ttl=64 time=0.466 ms (DUP!)
64 bytes from 192.168.7.202: icmp_seq=3 ttl=64 time=0.484 ms
64 bytes from 192.168.7.209: icmp_seq=3 ttl=64 time=0.490 ms (DUP!)
64 bytes from 192.168.7.202: icmp_seq=4 ttl=64 time=0.538 ms
64 bytes from 192.168.7.209: icmp_seq=4 ttl=64 time=0.542 ms (DUP!)
...
64 bytes from 192.168.7.209: icmp_seq=9 ttl=64 time=0.492 ms (DUP!)
64 bytes from 192.168.7.209: icmp_seq=10 ttl=64 time=0.519 ms
64 bytes from 192.168.7.202: icmp_seq=10 ttl=64 time=0.523 ms (DUP!)
64 bytes from 192.168.7.202: icmp_seq=11 ttl=64 time=0.466 ms
64 bytes from 192.168.7.209: icmp_seq=11 ttl=64 time=0.469 ms (DUP!)
64 bytes from 192.168.7.202: icmp_seq=12 ttl=64 time=0.581 ms
64 bytes from 192.168.7.209: icmp_seq=12 ttl=64 time=0.585 ms (DUP!)
--- 192.168.7.255 ping statistics ---
12 packets transmitted, 12 received, +12 duplicates, 0% packet loss, time 11006ms
rtt min/avg/max/mdev = 0.462/0.598/1.728/0.270 ms
11:30:17
#ping -b 192.168.7.255
WARNING: pinging broadcast address
PING 192.168.7.255 (192.168.7.255) 56(84) bytes of data.
64 bytes from 192.168.7.202: icmp_seq=1 ttl=64 time=0.548 ms
64 bytes from 192.168.7.209: icmp_seq=1 ttl=64 time=1.04 ms (DUP!)
64 bytes from 192.168.7.209: icmp_seq=2 ttl=64 time=0.537 ms
64 bytes from 192.168.7.202: icmp_seq=2 ttl=64 time=0.542 ms (DUP!)
64 bytes from 192.168.7.209: icmp_seq=3 ttl=64 time=0.565 ms
64 bytes from 192.168.7.202: icmp_seq=3 ttl=64 time=0.569 ms (DUP!)
64 bytes from 192.168.7.202: icmp_seq=4 ttl=64 time=0.598 ms
64 bytes from 192.168.7.209: icmp_seq=4 ttl=64 time=0.602 ms (DUP!)
64 bytes from 192.168.7.202: icmp_seq=5 ttl=64 time=0.592 ms
64 bytes from 192.168.7.209: icmp_seq=5 ttl=64 time=0.597 ms (DUP!)
64 bytes from 192.168.7.202: icmp_seq=6 ttl=64 time=0.472 ms
64 bytes from 192.168.7.209: icmp_seq=6 ttl=64 time=0.597 ms (DUP!)
--- 192.168.7.255 ping statistics ---
6 packets transmitted, 6 received, +6 duplicates, 0% packet loss, time 5006ms
rtt min/avg/max/mdev = 0.472/0.605/1.048/0.140 ms
11:36:07
#grep -v '^;' /etc/asterisk/sip.conf
[general]
context=default                 ; Default context for incoming calls
allowoverlap=no                 ; Disable overlap dialing support. (Default is yes)
                                ; Default is enabled
                                ; defaults to "asterisk". If you set a system name in
                                ; asterisk.conf, it defaults to that system name
                                ; Realms MUST be globally unique according to RFC 3261
                                ; Set this to your host name or domain name
bindport=5060                   ; UDP Port to bind to (SIP standard port is 5060)
                                ; bindport is the local UDP port that Asterisk will listen on
...
                                ; received from instead of trusting SIP headers
                                ; RTP media stream (audio) to go directly from
                                ; the caller to the callee.  Some devices do not
                                ; support this (especially if one of them is
                                ; behind a NAT).
                                ; Normally you do NOT need to set this parameter
                                ; You must have this turned on or DTMF reception will work improperly.
                                ; if the nat option is enabled. If a single RTP packet is received Asterisk will know the
                                ; external IP address of the remote device. If port forwarding is done at the client side
                                ; then UDPTL will flow to the remote device.
11:36:40
#grep -v '^ *;' /etc/asterisk/sip.conf
[general]
context=default                 ; Default context for incoming calls
allowoverlap=no                 ; Disable overlap dialing support. (Default is yes)
                                ; Default is enabled
                                ; defaults to "asterisk". If you set a system name in
                                ; asterisk.conf, it defaults to that system name
                                ; Realms MUST be globally unique according to RFC 3261
                                ; Set this to your host name or domain name
bindport=5060                   ; UDP Port to bind to (SIP standard port is 5060)
                                ; bindport is the local UDP port that Asterisk will listen on
...
                                ; Helps with NAT session
                                ; qualify=yes uses default value
                                ; Send SIP and RTP to the IP address that packet is
                                ; received from instead of trusting SIP headers
                                ; RTP media stream (audio) to go directly from
                                ; the caller to the callee.  Some devices do not
                                ; support this (especially if one of them is
                                ; behind a NAT).
                                ; Normally you do NOT need to set this parameter
                                ; You must have this turned on or DTMF reception will work improperly.
11:36:54
#grep -v '^\t*;' /etc/asterisk/sip.conf
[general]
context=default                 ; Default context for incoming calls
allowoverlap=no                 ; Disable overlap dialing support. (Default is yes)
                                ; Default is enabled
                                ; defaults to "asterisk". If you set a system name in
                                ; asterisk.conf, it defaults to that system name
                                ; Realms MUST be globally unique according to RFC 3261
                                ; Set this to your host name or domain name
bindport=5060                   ; UDP Port to bind to (SIP standard port is 5060)
                                ; bindport is the local UDP port that Asterisk will listen on
...
                                ; received from instead of trusting SIP headers
                                ; RTP media stream (audio) to go directly from
                                ; the caller to the callee.  Some devices do not
                                ; support this (especially if one of them is
                                ; behind a NAT).
                                ; Normally you do NOT need to set this parameter
                                ; You must have this turned on or DTMF reception will work improperly.
                                ; if the nat option is enabled. If a single RTP packet is received Asterisk will know the
                                ; external IP address of the remote device. If port forwarding is done at the client side
                                ; then UDPTL will flow to the remote device.
11:37:05
#grep -v '^[^a-z]*;' /etc/asterisk/sip.conf
[general]
context=default                 ; Default context for incoming calls
allowoverlap=no                 ; Disable overlap dialing support. (Default is yes)
bindport=5060                   ; UDP Port to bind to (SIP standard port is 5060)
bindaddr=0.0.0.0                ; IP address to bind to (0.0.0.0 binds to all)
srvlookup=yes                   ; Enable DNS SRV lookups on outbound calls
[authentication]
11:37:23
#grep -v '^[^a-z]*;?' /etc/asterisk/sip.conf
;
; SIP Configuration example for Asterisk
;
; Syntax for specifying a SIP device in extensions.conf is
; SIP/devicename where devicename is defined in a section below.
;
; You may also use
; SIP/username@domain to call any SIP user on the Internet
; (Don't forget to enable DNS SRV records if you want to use this)
;
...
;[pre14-asterisk]
;type=friend
;secret=digium
;host=dynamic
;rfc2833compensate=yes          ; Compensate for pre-1.4 DTMF transmission from another Asterisk machine.
                                ; You must have this turned on or DTMF reception will work improperly.
;t38pt_usertpsource=yes         ; Use the source IP address of RTP as the destination IP address for UDPTL packets
                                ; if the nat option is enabled. If a single RTP packet is received Asterisk will know the
                                ; external IP address of the remote device. If port forwarding is done at the client side
                                ; then UDPTL will flow to the remote device.
11:37:35
#grep -v '^[^a-z]*;' /etc/asterisk/sip.conf
[general]
context=default                 ; Default context for incoming calls
allowoverlap=no                 ; Disable overlap dialing support. (Default is yes)
bindport=5060                   ; UDP Port to bind to (SIP standard port is 5060)
bindaddr=0.0.0.0                ; IP address to bind to (0.0.0.0 binds to all)
srvlookup=yes                   ; Enable DNS SRV lookups on outbound calls
[authentication]
11:37:46
#grep -v '^[^a-z]*;' /etc/asterisk/sip.conf | less
11:38:07
#;allow=ulaw

11:39:30
#grep -v '^[^a-z]*;' /etc/asterisk/sip.conf | grep -xv ''
[general]
context=default                 ; Default context for incoming calls
allowoverlap=no                 ; Disable overlap dialing support. (Default is yes)
bindport=5060                   ; UDP Port to bind to (SIP standard port is 5060)
bindaddr=0.0.0.0                ; IP address to bind to (0.0.0.0 binds to all)
srvlookup=yes                   ; Enable DNS SRV lookups on outbound calls
[authentication]
[xlite1]
type=friend
regexten=4444
callerid="Igor Chubin"
host=dynamic                    ; This device needs to register
nat=no
canreinvite=no                  ; Typically set to NO if behind NAT
disallow=all
allow=gsm                       ; GSM consumes far less bandwidth than ulaw
allow=ulaw
allow=alaw
11:40:04
#/etc/init.d/asterisk restart
Stopping Asterisk PBX: asterisk.
Starting Asterisk PBX: asterisk.
11:42:13
#ls /var/log/asterisk/
cdr-csv  cdr-custom  event_log  messages  queue_log
11:42:27
#ls -l /var/log/asterisk/
total 8
drwxr-xr-x 2 asterisk asterisk   48 2009-01-04 21:27 cdr-csv
drwxr-xr-x 2 asterisk asterisk   48 2009-01-04 21:27 cdr-custom
-rw-rw---- 1 asterisk asterisk    0 2009-11-28 11:24 event_log
-rw-rw---- 1 asterisk asterisk 3084 2009-11-28 12:42 messages
-rw-rw---- 1 asterisk asterisk   76 2009-11-28 12:42 queue_log
11:42:30
#less /var/log/asterisk/messages
11:43:02
#ping 192.168.7.209
PING 192.168.7.209 (192.168.7.209) 56(84) bytes of data.
64 bytes from 192.168.7.209: icmp_seq=1 ttl=64 time=1.13 ms
--- 192.168.7.209 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 1.138/1.138/1.138/0.000 ms
11:43:35
#tail -f /var/log/asterisk/messages
[Nov 28 12:42:13] NOTICE[17660] res_odbc.c: res_odbc loaded.
[Nov 28 12:42:13] ERROR[17660] chan_vpb.cc: No Voicetronix cards detected
[Nov 28 12:42:13] NOTICE[17660] pbx_ael.c: Starting AEL load process.
[Nov 28 12:42:13] NOTICE[17660] pbx_ael.c: AEL load process: calculated config file name '/etc/asterisk/extensions.ael'.
[Nov 28 12:42:13] NOTICE[17660] pbx_ael.c: AEL load process: parsed config file name '/etc/asterisk/extensions.ael'.
[Nov 28 12:42:13] NOTICE[17660] pbx_ael.c: AEL load process: checked config file name '/etc/asterisk/extensions.ael'.
[Nov 28 12:42:13] NOTICE[17660] pbx_ael.c: AEL load process: compiled config file name '/etc/asterisk/extensions.ael'.
[Nov 28 12:42:13] NOTICE[17660] pbx_ael.c: AEL load process: merged config file name '/etc/asterisk/extensions.ael'.
[Nov 28 12:42:13] NOTICE[17660] pbx_ael.c: AEL load process: verified config file name '/etc/asterisk/extensions.ael'.
[Nov 28 12:42:13] WARNING[17660] chan_iax2.c: Unable to open IAX timing interface: No such file or directory
[Nov 28 12:43:51] NOTICE[17698] chan_sip.c: Registration from '"4444@192.168.7.4" <sip:4444@192.168.7.4>' failed for '192.168.7.209' - No matching peer found
11:44:04
#less
11:45:31
#asterisk
Asterisk already running on /var/run/asterisk/asterisk.ctl.  Use 'asterisk -r' to connect.
11:45:35
#asterisk -r
Asterisk 1.4.21.2~dfsg-3, Copyright (C) 1999 - 2008 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.
=========================================================================
This package has been modified for the Debian GNU/Linux distribution
Please report all bugs to http://bugs.debian.org/asterisk
=========================================================================
Connected to Asterisk 1.4.21.2~dfsg-3 currently running on debian4 (pid = 17793)
debian4*CLI>
debian4*CLI>
debian4*CLI> quit
11:45:59
#cp /etc/asterisk/extensions.conf{,.SAVE}

11:46:14
#vi /etc/asterisk/extensions.conf.SAVE
11:46:27
#;
CONSOLE=Console/dsp                             ; Console interface for demo
;CONSOLE=Zap/1
;CONSOLE=Phone/phone0
IAXINFO=guest                                   ; IAXtel username/password
;IAXINFO=myuser:mypass
TRUNK=Zap/G2                                    ; Trunk interface
;
; Note the 'G2' in the TRUNK variable above. It specifies which group (defined
; in zapata.conf) to dial, i.e. group 2, and how to choose a channel to use in
; the specified group. The four possible options are:
...
exten => s,n,WaitExten                  ; Wait for an extension to be dialed.
exten => 2,1,BackGround(demo-moreinfo)  ; Give some more information.
exten => 2,n,Goto(s,instruct)
exten => 3,1,Set(LANGUAGE()=fr)         ; Set language to french
exten => 1000,1,Goto(default,s,1)
;
; We also create an example user, 1234, who is on the console and has
; voicemail, etc.
;
exten => 3,n,Goto(s,restart)            ; Start with the congr463,1         74%
11:47:51
#vi /etc/asterisk/extensions.conf
--- /tmp/l3-saved-13429.18442.32526	2009-11-28 12:49:17.000000000 +0200
+++ /etc/asterisk/extensions.conf	2009-11-28 13:04:24.000000000 +0200
@@ -1,442 +1,13 @@
-; extensions.conf - the Asterisk dial plan
-;
-; Static extension configuration file, used by
-; the pbx_config module. This is where you configure all your 
-; inbound and outbound calls in Asterisk. 
-; 
-; This configuration file is reloaded 
-; - With the "dialplan reload" command in the CLI
-; - With the "reload" command (that reloads everything) in the CLI
-
-;
-; The "General" category is for certain variables.  
-;
 [general]
-;
-; If static is set to no, or omitted, then the pbx_config will rewrite
-; this file when extensions are modified.  Remember that all comments
-; made in the file will be lost when that happens. 
-;
-; XXX Not yet implemented XXX
-;
 static=yes
-;
-; if static=yes and writeprotect=no, you can save dialplan by
-; CLI command "dialplan save" too
-;
 writeprotect=no
-;
-; If autofallthrough is set, then if an extension runs out of
-; things to do, it will terminate the call with BUSY, CONGESTION
-; or HANGUP depending on Asterisk's best guess. This is the default.
-;
-; If autofallthrough is not set, then if an extension runs out of 
-; things to do, Asterisk will wait for a new extension to be dialed 
-; (this is the original behavior of Asterisk 1.0 and earlier).
-;
-;autofallthrough=no
-;
-; If clearglobalvars is set, global variables will be cleared 
-; and reparsed on an extensions reload, or Asterisk reload.
-;
-; If clearglobalvars is not set, then global variables will persist
-; through reloads, and even if deleted from the extensions.conf or
-; one of its included files, will remain set to the previous value.
-;
-; NOTE: A complication sets in, if you put your global variables into
-; the AEL file, instead of the extensions.conf file. With clearglobalvars
-; set, a "reload" will often leave the globals vars cleared, because it
-; is not unusual to have extensions.conf (which will have no globals)
-; load after the extensions.ael file (where the global vars are stored).
-; So, with "reload" in this particular situation, first the AEL file will
-; clear and then set all the global vars, then, later, when the extensions.conf
-; file is loaded, the global vars are all cleared, and then not set, because
-; they are not stored in the extensions.conf file.
-;
 clearglobalvars=no
-;
-; If priorityjumping is set to 'yes', then applications that support
-; 'jumping' to a different priority based on the result of their operations
-; will do so (this is backwards compatible behavior with pre-1.2 releases
-; of Asterisk). Individual applications can also be requested to do this
-; by passing a 'j' option in their arguments.
-;
-;priorityjumping=yes
-;
-; User context is where entries from users.conf are registered.  The
-; default value is 'default'
-;
-;userscontext=default
-;
-; You can include other config files, use the #include command
-; (without the ';'). Note that this is different from the "include" command
-; that includes contexts within other contexts. The #include command works
-; in all asterisk configuration files.
-;#include "filename.conf"
-
-; The "Globals" category contains global variables that can be referenced
-; in the dialplan with the GLOBAL dialplan function:
-; ${GLOBAL(VARIABLE)}
-; ${${GLOBAL(VARIABLE)}} or ${text${GLOBAL(VARIABLE)}} or any hybrid
-; Unix/Linux environmental variables can be reached with the ENV dialplan
-; function: ${ENV(VARIABLE)}
-;
-[globals]
-CONSOLE=Console/dsp				; Console interface for demo
-;CONSOLE=Zap/1
-;CONSOLE=Phone/phone0
-IAXINFO=guest					; IAXtel username/password
-;IAXINFO=myuser:mypass
-TRUNK=Zap/G2					; Trunk interface
-;
-; Note the 'G2' in the TRUNK variable above. It specifies which group (defined
-; in zapata.conf) to dial, i.e. group 2, and how to choose a channel to use in
-; the specified group. The four possible options are:
-;
-; g: select the lowest-numbered non-busy Zap channel
-;    (aka. ascending sequential hunt group).
-; G: select the highest-numbered non-busy Zap channel
-;    (aka. descending sequential hunt group).
-; r: use a round-robin search, starting at the next highest channel than last
-;    time (aka. ascending rotary hunt group).
-; R: use a round-robin search, starting at the next lowest channel than last
-;    time (aka. descending rotary hunt group).
-;
-TRUNKMSD=1					; MSD digits to strip (usually 1 or 0)
-;TRUNK=IAX2/user:pass@provider
-
-;
-; Any category other than "General" and "Globals" represent 
-; extension contexts, which are collections of extensions.  
-;
-; Extension names may be numbers, letters, or combinations
-; thereof. If an extension name is prefixed by a '_'
-; character, it is interpreted as a pattern rather than a
-; literal.  In patterns, some characters have special meanings:
-;
-;   X - any digit from 0-9
-;   Z - any digit from 1-9
-;   N - any digit from 2-9
-;   [1235-9] - any digit in the brackets (in this example, 1,2,3,5,6,7,8,9)
-;   . - wildcard, matches anything remaining (e.g. _9011. matches 
-;	anything starting with 9011 excluding 9011 itself)
-;   ! - wildcard, causes the matching process to complete as soon as
-;       it can unambiguously determine that no other matches are possible
-;
-; For example the extension _NXXXXXX would match normal 7 digit dialings, 
-; while _1NXXNXXXXXX would represent an area code plus phone number
-; preceded by a one.
-;
-; Each step of an extension is ordered by priority, which must
-; always start with 1 to be considered a valid extension.  The priority
-; "next" or "n" means the previous priority plus one, regardless of whether
-; the previous priority was associated with the current extension or not.
-; The priority "same" or "s" means the same as the previously specified
-; priority, again regardless of whether the previous entry was for the
-; same extension.  Priorities may be immediately followed by a plus sign
-; and another integer to add that amount (most useful with 's' or 'n').  
-; Priorities may then also have an alias, or label, in 
-; parenthesis after their name which can be used in goto situations
-;
-; Contexts contain several lines, one for each step of each
-; extension, which can take one of two forms as listed below,
-; with the first form being preferred. 
-;
-;[context]
-;exten => someexten,{priority|label{+|-}offset}[(alias)],application(arg1,arg2,...)
-;exten => someexten,{priority|label{+|-}offset}[(alias)],application,arg1|arg2...
-;
-; Included Contexts
-;
-; One may include another context in the current one as well, optionally with a
-; date and time.  Included contexts are included in the order
-; they are listed.
-; The reason a context would include other contexts is for their 
-; extensions.
-; The algorithm to find an extension is recursive, and works in this
-; fashion: 
-;	 first, given a stack on which to store context references, 
-;           push the context to find the extension onto the stack...
-;    a) Try to find a matching extension in the context at the top of 
-;       the stack, and, if found, begin executing the priorities
-;       there in sequence.
-;    b) If not found, Search the switches, if any declared, in
-;       sequence.
-;    c) If still not found, for each include, push that context onto 
-;       the top of the context stack, and recurse to a).
-;    d) If still not found, pop the entry from the top of the stack; 
-;       if the stack is empty, the search has failed. If it's not, 
-;       continue with the next context in c).
-; This is a depth-first traversal, and stops with the first context 
-; that provides a matching extension. As usual, if more than one
-; pattern in a context will match, the 'best' match will win.
-; Please note that that extensions found in an included context are
-; treated as if they were in the context from which the search began.
-; The PBX's notion of the "current context" is not changed.
-; Please note that in a context, it does not matter where an include
-; directive occurs. Whether at the top, or near the bottom, the effect 
-; will be the same. The only thing that matters is that if there is 
-; more than one include directive, they will be searched for extensions 
-; in order, first to last.
-; Also please note that pattern matches (like _9XX) are not treated
-; any differently than exact matches (like 987). Also note that the
-; order of extensions in a context have no affect on the outcome.
-;
-; Timing list for includes is 
-;
-;   <time range>|<days of week>|<days of month>|<months>
-;
-; Note that ranges may be specified to wrap around the ends.  Also, minutes are
-; fine-grained only down to the closest even minute.
-;
-;include => daytime|9:00-17:00|mon-fri|*|*
-;include => weekend|*|sat-sun|*|*
-;include => weeknights|17:02-8:58|mon-fri|*|*
-;
-; ignorepat can be used to instruct drivers to not cancel dialtone upon
-; receipt of a particular pattern.  The most commonly used example is
-; of course '9' like this:
-;
-;ignorepat => 9
-;
-; so that dialtone remains even after dialing a 9.
-;
 
-;
-; Sample entries for extensions.conf
-;
-;
-[dundi-e164-canonical]
-;
-; List canonical entries here
-;
-;exten => 12564286000,1,Macro(stdexten,6000,IAX2/foo)
-;exten => _125642860XX,1,Dial(IAX2/otherbox/${EXTEN:7})
-
-[dundi-e164-customers]
-;
-; If you are an ITSP or Reseller, list your customers here.
-;
-;exten => _12564286000,1,Dial(SIP/customer1)
-;exten => _12564286001,1,Dial(IAX2/customer2)
-
-[dundi-e164-via-pstn]
-;
-; If you are freely delivering calls to the PSTN, list them here
-;
-;exten => _1256428XXXX,1,Dial(Zap/G2/${EXTEN:7}) ; Expose all of 256-428 
-;exten => _1256325XXXX,1,Dial(Zap/G2/${EXTEN:7}) ; Ditto for 256-325
-
-[dundi-e164-local]
-;
-; Context to put your dundi IAX2 or SIP user in for
-; full access
-;
-include => dundi-e164-canonical
-include => dundi-e164-customers
-include => dundi-e164-via-pstn
-
-[dundi-e164-switch]
-;
-; Just a wrapper for the switch
-;
-switch => DUNDi/e164
-
-[dundi-e164-lookup]
-;
-; Locally to lookup, try looking for a local E.164 solution
-; then try DUNDi if we don't have one.
-;
-include => dundi-e164-local
-include => dundi-e164-switch
-;
-; DUNDi can also be implemented as a Macro instead of using 
-; the Local channel driver. 
-;
-[macro-dundi-e164]
-;
-; ARG1 is the extension to Dial
-;
-; Extension "s" is not a wildcard extension that matches "anything".
-; In macros, it is the start extension. In most other cases, 
-; you have to goto "s" to execute that extension.
-;
-; For wildcard matches, see above - all pattern matches start with
-; an underscore.
-exten => s,1,Goto(${ARG1},1)
-include => dundi-e164-lookup
-
-;
-; Here are the entries you need to participate in the IAXTEL
-; call routing system.  Most IAXTEL numbers begin with 1-700, but
-; there are exceptions.  For more information, and to sign
-; up, please go to www.gnophone.com or www.iaxtel.com
-;
-[iaxtel700]
-exten => _91700XXXXXXX,1,Dial(IAX2/${GLOBAL(IAXINFO)}@iaxtel.com/${EXTEN:1}@iaxtel)
-
-;
-; The SWITCH statement permits a server to share the dialplan with
-; another server. Use with care: Reciprocal switch statements are not
-; allowed (e.g. both A -> B and B -> A), and the switched server needs
-; to be on-line or else dialing can be severly delayed.
-;
-[iaxprovider]
-;switch => IAX2/user:[key]@myserver/mycontext
-
-[trunkint]
-;
-; International long distance through trunk
-;
-exten => _9011.,1,Macro(dundi-e164,${EXTEN:4})
-exten => _9011.,n,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
-
-[trunkld]
-;
-; Long distance context accessed through trunk
-;
-exten => _91NXXNXXXXXX,1,Macro(dundi-e164,${EXTEN:1})
-exten => _91NXXNXXXXXX,n,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
-
-[trunklocal]
-;
-; Local seven-digit dialing accessed through trunk interface
-;
-exten => _9NXXXXXX,1,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
-
-[trunktollfree]
-;
-; Long distance context accessed through trunk interface
-;
-exten => _91800NXXXXXX,1,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
-exten => _91888NXXXXXX,1,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
-exten => _91877NXXXXXX,1,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
-exten => _91866NXXXXXX,1,Dial(${GLOBAL(TRUNK)}/${EXTEN:${GLOBAL(TRUNKMSD)}})
-
-[international]
-;
-; Master context for international long distance
-;
-ignorepat => 9
-include => longdistance
-include => trunkint
-
-[longdistance]
-;
-; Master context for long distance
-;
-ignorepat => 9
-include => local
-include => trunkld
-
-[local]
-;
-; Master context for local, toll-free, and iaxtel calls only
-;
-ignorepat => 9
-include => default
-include => trunklocal
-include => iaxtel700
-include => trunktollfree
-include => iaxprovider
-
-;Include parkedcalls (or the context you define in features conf)
-;to enable call parking.
-include => parkedcalls
-;
-; You can use an alternative switch type as well, to resolve
-; extensions that are not known here, for example with remote 
-; IAX switching you transparently get access to the remote
-; Asterisk PBX
-; 
-; switch => IAX2/user:password@bigserver/local
-;
-; An "lswitch" is like a switch but is literal, in that
-; variable substitution is not performed at load time
-; but is passed to the switch directly (presumably to
-; be substituted in the switch routine itself)
-;
-; lswitch => Loopback/12${EXTEN}@othercontext
-;
-; An "eswitch" is like a switch but the evaluation of
-; variable substitution is performed at runtime before
-; being passed to the switch routine.
-;
-; eswitch => IAX2/context@${CURSERVER}
-
-[macro-trunkdial]
-;
-; Standard trunk dial macro (hangs up on a dialstatus that should 
-; terminate call)
-;   ${ARG1} - What to dial
-;
-exten => s,1,Dial(${ARG1})
-exten => s,n,Goto(s-${DIALSTATUS},1)
-exten => s-NOANSWER,1,Hangup
-exten => s-BUSY,1,Hangup
-exten => _s-.,1,NoOp
-
-[macro-stdexten];
-;
-; Standard extension macro:
-;   ${ARG1} - Extension  (we could have used ${MACRO_EXTEN} here as well
-;   ${ARG2} - Device(s) to ring
-;
-exten => s,1,Dial(${ARG2},20)			; Ring the interface, 20 seconds maximum
-exten => s,2,Goto(s-${DIALSTATUS},1)		; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)
-
-exten => s-NOANSWER,1,Voicemail(${ARG1},u)	; If unavailable, send to voicemail w/ unavail announce
-exten => s-NOANSWER,2,Goto(default,s,1)		; If they press #, return to start
-
-exten => s-BUSY,1,Voicemail(${ARG1},b)		; If busy, send to voicemail w/ busy announce
-exten => s-BUSY,2,Goto(default,s,1)		; If they press #, return to start
-
-exten => _s-.,1,Goto(s-NOANSWER,1)		; Treat anything else as no answer
-
-exten => a,1,VoicemailMain(${ARG1})		; If they press *, send the user into VoicemailMain
-
-[macro-stdPrivacyexten];
-;
-; Standard extension macro:
-;   ${ARG1} - Extension  (we could have used ${MACRO_EXTEN} here as well
-;   ${ARG2} - Device(s) to ring
-;   ${ARG3} - Optional DONTCALL context name to jump to (assumes the s,1 extension-priority)
-;   ${ARG4} - Optional TORTURE context name to jump to (assumes the s,1 extension-priority)`
-;
-exten => s,1,Dial(${ARG2},20|p)			; Ring the interface, 20 seconds maximum, call screening 
-						; option (or use P for databased call screening)
-exten => s,2,Goto(s-${DIALSTATUS},1)		; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)
-
-exten => s-NOANSWER,1,Voicemail(${ARG1},u)	; If unavailable, send to voicemail w/ unavail announce
-exten => s-NOANSWER,2,Goto(default,s,1)		; If they press #, return to start
-
-exten => s-BUSY,1,Voicemail(${ARG1},b)		; If busy, send to voicemail w/ busy announce
-exten => s-BUSY,2,Goto(default,s,1)		; If they press #, return to start
-
-exten => s-DONTCALL,1,Goto(${ARG3},s,1)		; Callee chose to send this call to a polite "Don't call again" script.
-
-exten => s-TORTURE,1,Goto(${ARG4},s,1)		; Callee chose to send this call to a telemarketer torture script.
-
-exten => _s-.,1,Goto(s-NOANSWER,1)		; Treat anything else as no answer
-
-exten => a,1,VoicemailMain(${ARG1})		; If they press *, send the user into VoicemailMain
-
-[macro-page];
-;
-; Paging macro:
-;
-;       Check to see if SIP device is in use and DO NOT PAGE if they are
-;
-;   ${ARG1} - Device to page
-
-exten => s,1,ChanIsAvail(${ARG1}|js)			; j is for Jump and s is for ANY call
-exten => s,n,GoToIf([${AVAILSTATUS} = "1"]?autoanswer:fail)
-exten => s,n(autoanswer),Set(_ALERT_INFO="RA")			; This is for the PolyComs
-exten => s,n,SIPAddHeader(Call-Info: Answer-After=0)	; This is for the Grandstream, Snoms, and Others
-exten => s,n,NoOp()					; Add others here and Post on the Wiki!!!!
-exten => s,n,Dial(${ARG1}||)
-exten => s,n(fail),Hangup
+[demo1]
 
+exten => 4000,1,Answer
+exten => 4000,n,Playback(demo-thanks)
+exten => 4000,n,Hangup
 
 [demo]
 ;
@@ -515,100 +86,4 @@
 ;
 exten => 8500,1,VoicemailMain
 exten => 8500,n,Goto(s,6)
-;
-; Here's what a phone entry would look like (IXJ for example)
-;
-;exten => 1265,1,Dial(Phone/phone0,15)
-;exten => 1265,n,Goto(s,5)
-
-;
-;	The page context calls up the page macro that sets variables needed for auto-answer
-;	It is in is own context to make calling it from the Page() application as simple as 
-;	Local/{peername}@page
-;
-[page]
-exten => _X.,1,Macro(page,SIP/${EXTEN})
-
-;[mainmenu]
-;
-; Example "main menu" context with submenu
-;
-;exten => s,1,Answer
-;exten => s,n,Background(thanks)		; "Thanks for calling press 1 for sales, 2 for support, ..."
-;exten => s,n,WaitExten
-;exten => 1,1,Goto(submenu,s,1)
-;exten => 2,1,Hangup
-;include => default
-;
-;[submenu]
-;exten => s,1,Ringing					; Make them comfortable with 2 seconds of ringback
-;exten => s,n,Wait,2
-;exten => s,n,Background(submenuopts)	; "Thanks for calling the sales department.  Press 1 for steve, 2 for..."
-;exten => s,n,WaitExten
-;exten => 1,1,Goto(default,steve,1)
-;exten => 2,1,Goto(default,mark,2)
-
-[default]
-;
-; By default we include the demo.  In a production system, you 
-; probably don't want to have the demo there.
-;
-include => demo
-
-;
-; An extension like the one below can be used for FWD, Nikotel, sipgate etc.
-; Note that you must have a [sipprovider] section in sip.conf
-;
-;exten => _41X.,1,Dial(SIP/${EXTEN:2}@sipprovider,,r)
-
-; Real extensions would go here. Generally you want real extensions to be
-; 4 or 5 digits long (although there is no such requirement) and start with a
-; single digit that is fairly large (like 6 or 7) so that you have plenty of
-; room to overlap extensions and menu options without conflict.  You can alias
-; them with names, too, and use global variables
-
-;exten => 6245,hint,SIP/Grandstream1&SIP/Xlite1,Joe Schmoe ; Channel hints for presence
-;exten => 6245,1,Dial(SIP/Grandstream1,20,rt)	; permit transfer
-;exten => 6245,n(dial),Dial(${HINT},20,rtT)	; Use hint as listed
-;exten => 6245,n,Voicemail(6245,u)		; Voicemail (unavailable)
-;exten => 6245,s+1,Hangup			; s+1, same as n
-;exten => 6245,dial+101,Voicemail(6245,b)	; Voicemail (busy)
-;exten => 6361,1,Dial(IAX2/JaneDoe,,rm)		; ring without time limit
-;exten => 6389,1,Dial(MGCP/aaln/1@192.168.0.14)
-;exten => 6390,1,Dial(JINGLE/caller/callee) ; Dial via jingle using labels
-;exten => 6391,1,Dial(JINGLE/asterisk@digium.com/mogorman@astjab.org) ;Dial via jingle using asterisk as the transport and calling mogorman.
-;exten => 6394,1,Dial(Local/6275/n)		; this will dial ${MARK}
 
-;exten => 6275,1,Macro(stdexten,6275,${MARK})	; assuming ${MARK} is something like Zap/2
-;exten => mark,1,Goto(6275|1)			; alias mark to 6275
-;exten => 6536,1,Macro(stdexten,6236,${WIL})	; Ditto for wil
-;exten => wil,1,Goto(6236|1)
-
-;If you want to subscribe to the status of a parking space, this is
-;how you do it. Subscribe to extension 6600 in sip, and you will see
-;the status of the first parking lot with this extensions' help
-;exten => 6600,hint,park:701@parkedcalls
-;exten => 6600,1,noop
-;
-; Some other handy things are an extension for checking voicemail via
-; voicemailmain
-;
-;exten => 8500,1,VoicemailMain
-;exten => 8500,n,Hangup
-;
-; Or a conference room (you'll need to edit meetme.conf to enable this room)
-;
-;exten => 8600,1,Meetme(1234)
-;
-; Or playing an announcement to the called party, as soon it answers
-;
-;exten = 8700,1,Dial(${MARK},30,A(/path/to/my/announcemsg))
-;
-; For more information on applications, just type "core show applications" at your
-; friendly Asterisk CLI prompt.
-;
-; "core show application <command>" will show details of how you
-; use that particular application in this file, the dial plan. 
-; "core show functions" will list all dialplan functions
-; "core show function <COMMAND>" will show you more information about
-; one function. Remember that function names are UPPER CASE.
/dev/pts/4
11:53:35
#ping 192.168.7.1
PING 192.168.7.1 (192.168.7.1) 56(84) bytes of data.
From 192.168.7.4 icmp_seq=2 Destination Host Unreachable
From 192.168.7.4 icmp_seq=3 Destination Host Unreachable
From 192.168.7.4 icmp_seq=4 Destination Host Unreachable
--- 192.168.7.1 ping statistics ---
7 packets transmitted, 0 received, +3 errors, 100% packet loss, time 6015ms
, pipe 3
прошло 12 минут
/dev/pts/1
12:06:13
#asterisk -r
Asterisk 1.4.21.2~dfsg-3, Copyright (C) 1999 - 2008 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.
=========================================================================
This package has been modified for the Debian GNU/Linux distribution
Please report all bugs to http://bugs.debian.org/asterisk
=========================================================================
Connected to Asterisk 1.4.21.2~dfsg-3 currently running on debian4 (pid = 17793)
debian4*CLI>
debian4*CLI> quit
12:06:23
#asterisk -rvv
Asterisk 1.4.21.2~dfsg-3, Copyright (C) 1999 - 2008 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.
=========================================================================
This package has been modified for the Debian GNU/Linux distribution
Please report all bugs to http://bugs.debian.org/asterisk
=========================================================================
...
The 'show dialplan' command is deprecated and will be removed in a future release. Please use 'dialplan show' instead.
  == Spawn extension (demo1, 4000, 3) exited non-zero on 'SIP/4444-081db9e8'
[Nov 28 13:08:37] NOTICE[17831]: chan_sip.c:14035 handle_request_invite: Call from '4444' to extension '44' rejected because extension not found.
  == Spawn extension (demo1, 4000, 3) exited non-zero on 'SIP/4444-081db9e8'
  == Spawn extension (demo1, 4000, 2) exited non-zero on 'SIP/4444-081db9e8'
  == Spawn extension (demo1, 4000, 3) exited non-zero on 'SIP/4444-081db9e8'
debian4*CLI>
debian4*CLI>
debian4*CLI> quit
Executing last minute cleanups
12:09:51
#vi /etc/asterisk/sip.conf
--- /tmp/l3-saved-13429.15347.14503	2009-11-28 13:09:53.000000000 +0200
+++ /etc/asterisk/sip.conf	2009-11-28 13:14:30.000000000 +0200
@@ -571,9 +571,20 @@
 				; See doc/callingpres.txt for more information
 
 
+[1xxx]
+type=friend
+context=demo1
+;regexten=4444
+;callerid="Igor Chubin"
+host=192.168.7.1
+nat=no
+canreinvite=no			; Typically set to NO if behind NAT
+disallow=all
+allow=gsm			; GSM consumes far less bandwidth than ulaw
+allow=ulaw
+allow=alaw
+
 [4444]
-; Turn off silence suppression in X-Lite ("Transmit Silence"=YES)!
-; Note that Xlite sends NAT keep-alive packets, so qualify=yes is not needed
 type=friend
 context=demo1
 regexten=4444
@@ -585,7 +596,6 @@
 allow=gsm			; GSM consumes far less bandwidth than ulaw
 allow=ulaw
 allow=alaw
-;mailbox=1234@default,1233@default	; Subscribe to status of multiple mailboxes
 
 
 ;[snom]
12:14:31
#vi /etc/asterisk/extensions.conf
--- /tmp/l3-saved-13429.13740.6493	2009-11-28 13:14:36.000000000 +0200
+++ /etc/asterisk/extensions.conf	2009-11-28 13:17:02.000000000 +0200
@@ -9,6 +9,10 @@
 exten => 4000,n,Playback(demo-thanks)
 exten => 4000,n,Hangup
 
+
+exten => _1XXX,1,Dial(SIP/1xxx/${EXTEN}),60)
+exten => _1XXX,n,Hangup
+
 [demo]
 ;
 ; We start with what to do when a call first comes in.
12:17:02
#asterisk -rvv
Asterisk 1.4.21.2~dfsg-3, Copyright (C) 1999 - 2008 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.
=========================================================================
This package has been modified for the Debian GNU/Linux distribution
Please report all bugs to http://bugs.debian.org/asterisk
=========================================================================
...
  == Parsing '/etc/asterisk/users.conf': Found
[Nov 28 13:17:23] NOTICE[17831]: chan_sip.c:14035 handle_request_invite: Call from '1xxx' to extension '4444' rejected because extension not found.
debian4*CLI>
debian4*CLI>
debian4*CLI>
[Nov 28 13:18:10] NOTICE[17831]: chan_sip.c:14035 handle_request_invite: Call from '1xxx' to extension '4444' rejected because extension not found.
  == Spawn extension (demo1, 4000, 3) exited non-zero on 'SIP/192.168.7.1-081db9e8'
debian4*CLI>
debian4*CLI> quit
Executing last minute cleanups
/dev/pts/9
12:17:21
#ls /var/log/asterisk/
cdr-csv  cdr-custom  event_log  messages  queue_log
12:17:40
#ls -l /var/log/asterisk/
total 12
drwxr-xr-x 2 asterisk asterisk   80 2009-11-28 13:08 cdr-csv
drwxr-xr-x 2 asterisk asterisk   48 2009-01-04 21:27 cdr-custom
-rw-rw---- 1 asterisk asterisk    0 2009-11-28 11:24 event_log
-rw-rw---- 1 asterisk asterisk 5056 2009-11-28 13:17 messages
-rw-rw---- 1 asterisk asterisk  114 2009-11-28 12:44 queue_log
12:17:43
#less /var/log/asterisk/messages
12:19:16
#less /var/log/asterisk/messages
/dev/pts/1
12:19:25
#vi /etc/asterisk/extensions.conf
--- /tmp/l3-saved-13429.4350.30264	2009-11-28 13:19:26.000000000 +0200
+++ /etc/asterisk/extensions.conf	2009-11-28 13:20:51.000000000 +0200
@@ -13,6 +13,9 @@
 exten => _1XXX,1,Dial(SIP/1xxx/${EXTEN}),60)
 exten => _1XXX,n,Hangup
 
+exten => _4XXX,1,Dial(SIP/${EXTEN}),60)
+exten => _4XXX,n,Hangup
+
 [demo]
 ;
 ; We start with what to do when a call first comes in.
12:21:42
#vi /etc/asterisk/extensions.conf.SAVE
12:22:12
#exten => s,n,Set(TIMEOUT(response)=10) ; Set Response Timeout to 10 seconds
"/etc/asterisk/extensions.conf" 96L, 2887C
exten => _1XXX,1,Dial(SIP/1xxx/${EXTEN}),60)
[demo1]> _1XXX,n,Hangup
[demo1]
exten => _4XXX,1,Dial(SIP/${EXTEN}),60)
exten => _4XXX,n,Hangup
[demo]              l(SIP/${EXTEN},60)
;
; We start with what to do when a call first comes in.
;
"/etc/asterisk/extensions.conf" 96L, 2886C written
12:23:41
#vi /etc/asterisk/extensions.conf
--- /tmp/l3-saved-13429.17138.13501	2009-11-28 13:23:43.000000000 +0200
+++ /etc/asterisk/extensions.conf	2009-11-28 13:23:58.000000000 +0200
@@ -10,7 +10,7 @@
 exten => 4000,n,Hangup
 
 
-exten => _1XXX,1,Dial(SIP/1xxx/${EXTEN}),60)
+exten => _1XXX,1,Dial(SIP/1xxx/${EXTEN},60)
 exten => _1XXX,n,Hangup
 
 exten => _4XXX,1,Dial(SIP/${EXTEN},60)
/dev/pts/9
12:26:02
#~
exten => _1XXX,1,Dial(SIP/1xxx/${EXTEN},60)
exten => _1XXX,n,Hangup
exten => _4XXX,1,Dial(SIP/${EXTEN},60)
exten => _4XXX,n,Hangup
[demo]
;
; We start with what to do when a call first comes in.
;
12:27:29
#[demo1]
                                ; Message-Account in the MWI notify message
                                ; defaults to "asterisk"
;disallow=all                   ; First disallow all codecs
;allow=ulaw                     ; Allow codecs in order of preference
;allow=ilbc                     ; see doc/rtp-packetization for framing options
;
[4443]friend                    ; Friends place calls and receive calls
[4444]
type=friendom-sip               ; Context for incoming calls from this user
            3
...
allow=ulaw
allow=alaw
"/etc/asterisk/sip.conf" 691L, 32043C written
canreinvite=no                  ; Typically set to NO if behind NAT
disallow=all
allow=gsm                       ; GSM consumes far less bandwidth than ulaw
allow=ulaw
allow=alaw
[4444]
type=friend
прошло 17 минут
/dev/pts/1
12:44:41
#vi /etc/asterisk/extensions.conf
--- /tmp/l3-saved-13429.16478.6228	2009-11-28 13:44:42.000000000 +0200
+++ /etc/asterisk/extensions.conf	2009-11-28 13:45:14.000000000 +0200
@@ -6,6 +6,7 @@
 [demo1]
 
 exten => 4000,1,Answer
+exten => 4000,n,Wait(1)
 exten => 4000,n,Playback(demo-thanks)
 exten => 4000,n,Hangup
 
прошло 97 минут
/dev/pts/0
14:21:56
#screen
/dev/pts/2
14:22:01
#vi /etc/asterisk/sip.conf
14:23:17
#;t38pt_usertpsource=yes ; Use the source IP address of RTP as the destinn

14:24:17
#mv /tmp/ext.conf /etc/asterisk/extensions.conf

14:24:30
#vi /etc/asterisk/extensions.conf
--- /tmp/l3-saved-18599.4155.17200	2009-11-28 15:24:33.000000000 +0200
+++ /etc/asterisk/extensions.conf	2009-11-28 15:25:25.000000000 +0200
@@ -11,39 +11,3 @@
 exten => _1XXX,n,Hangup
 exten => _4XXX,1,Dial(SIP/${EXTEN},60)
 exten => _4XXX,n,Hangup
-[demo]
-exten => s,1,Wait(1)			; Wait a second, just for fun
-exten => s,n,Answer			; Answer the line
-exten => s,n,Set(TIMEOUT(digit)=5)	; Set Digit Timeout to 5 seconds
-exten => s,n,Set(TIMEOUT(response)=10)	; Set Response Timeout to 10 seconds
-exten => s,n(restart),BackGround(demo-congrats)	; Play a congratulatory message
-exten => s,n(instruct),BackGround(demo-instruct)	; Play some instructions
-exten => s,n,WaitExten			; Wait for an extension to be dialed.
-exten => 2,1,BackGround(demo-moreinfo)	; Give some more information.
-exten => 2,n,Goto(s,instruct)
-exten => 3,1,Set(LANGUAGE()=fr)		; Set language to french
-exten => 3,n,Goto(s,restart)		; Start with the congratulations
-exten => 1000,1,Goto(default,s,1)
-exten => 1234,1,Playback(transfer,skip)		; "Please hold while..." 
-exten => 1234,n,Macro(stdexten,1234,${GLOBAL(CONSOLE)})
-exten => 1235,1,Voicemail(1234,u)		; Right to voicemail
-exten => 1236,1,Dial(Console/dsp)		; Ring forever
-exten => 1236,n,Voicemail(1234,b)		; Unless busy
-exten => #,1,Playback(demo-thanks)	; "Thanks for trying the demo"
-exten => #,n,Hangup			; Hang them up.
-exten => t,1,Goto(#,1)			; If they take too long, give up
-exten => i,1,Playback(invalid)		; "That's not valid, try again"
-exten => 500,1,Playback(demo-abouttotry); Let them know what's going on
-exten => 500,n,Dial(IAX2/guest@pbx.digium.com/s@default)	; Call the Asterisk demo
-exten => 500,n,Playback(demo-nogo)	; Couldn't connect to the demo site
-exten => 500,n,Goto(s,6)		; Return to the start over message.
-exten => 600,1,Playback(demo-echotest)	; Let them know what's going on
-exten => 600,n,Echo			; Do the echo test
-exten => 600,n,Playback(demo-echodone)	; Let them know it's over
-exten => 600,n,Goto(s,6)		; Start over
-exten => 76245,1,Macro(page,SIP/Grandstream1)
-exten => _7XXX,1,Macro(page,SIP/${EXTEN})
-exten => 7999,1,Set(TIMEOUT(absolute)=60)
-exten => 7999,2,Page(Local/Grandstream1@page&Local/Xlite1@page&Local/1234@page/n|d)
-exten => 8500,1,VoicemailMain
-exten => 8500,n,Goto(s,6)
14:25:42
#vi /etc/asterisk/extensions.conf
14:25:58
#vi /etc/asterisk/sip.conf
--- /tmp/l3-saved-18599.2046.27516	2009-11-28 15:26:03.000000000 +0200
+++ /etc/asterisk/sip.conf	2009-11-28 15:39:01.000000000 +0200
@@ -4,40 +4,66 @@
 bindport=5060			; UDP Port to bind to (SIP standard port is 5060)
 bindaddr=0.0.0.0		; IP address to bind to (0.0.0.0 binds to all)
 srvlookup=yes			; Enable DNS SRV lookups on outbound calls
-				
-  
+
 [authentication]
+
 [1xxx]
 type=friend
 context=demo1
 host=192.168.7.1
 nat=no
-canreinvite=no			; Typically set to NO if behind NAT
+canreinvite=no
 disallow=all
-allow=gsm			; GSM consumes far less bandwidth than ulaw
+allow=gsm
 allow=ulaw
 allow=alaw
+
+[2xxx]
+type=friend
+context=demo1
+host=192.168.7.2
+nat=no
+canreinvite=no
+disallow=all
+allow=gsm
+allow=ulaw
+allow=alaw
+
 [4444]
 type=friend
 context=demo1
 regexten=4444
 callerid="Igor Chubin"
-host=dynamic			; This device needs to register
+host=dynamic
 nat=no
-canreinvite=no			; Typically set to NO if behind NAT
+canreinvite=no
 disallow=all
-allow=gsm			; GSM consumes far less bandwidth than ulaw
+allow=gsm
 allow=ulaw
 allow=alaw
+
 [4443]
 type=friend
 context=demo1
 regexten=4443
-callerid="VNK"
-host=dynamic			; This device needs to register
+callerid="Yark0"
+host=dynamic
+nat=no
+canreinvite=no
+disallow=all
+allow=gsm
+allow=ulaw
+allow=alaw
+
+[4442]
+type=friend
+context=demo1
+regexten=4442
+callerid="Igor Chubin (softwone)"
+host=dynamic
 nat=no
-canreinvite=no			; Typically set to NO if behind NAT
+canreinvite=no
 disallow=all
-allow=gsm			; GSM consumes far less bandwidth than ulaw
+allow=gsm
 allow=ulaw
 allow=alaw
/dev/pts/3
14:30:55
#asterisk -rvvv
Asterisk 1.4.21.2~dfsg-3, Copyright (C) 1999 - 2008 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.
=========================================================================
This package has been modified for the Debian GNU/Linux distribution
Please report all bugs to http://bugs.debian.org/asterisk
=========================================================================
...
    -- Called 2xxx/2222
    -- SIP/2xxx-081f3478 is ringing
    -- SIP/2xxx-081f3478 answered SIP/4442-081fb128
    -- Packet2Packet bridging SIP/4442-081fb128 and SIP/2xxx-081f3478
  == Spawn extension (demo1, 2222, 1) exited non-zero on 'SIP/4442-081fb128'
    -- Remote UNIX connection
Executing last minute cleanups
  == Destroying musiconhold processes
Disconnected from Asterisk server
Executing last minute cleanups
/dev/pts/2
14:39:01
#vi /etc/asterisk/extensions.conf
14:39:01
#vi /etc/asterisk/extensions.conf
--- /tmp/l3-saved-18599.14684.19996	2009-11-28 15:39:18.000000000 +0200
+++ /etc/asterisk/extensions.conf	2009-11-28 15:39:41.000000000 +0200
@@ -9,5 +9,9 @@
 exten => 4000,n,Hangup
 exten => _1XXX,1,Dial(SIP/1xxx/${EXTEN},60)
 exten => _1XXX,n,Hangup
+
+exten => _2XXX,1,Dial(SIP/2xxx/${EXTEN},60)
+exten => _2XXX,n,Hangup
+
 exten => _4XXX,1,Dial(SIP/${EXTEN},60)
 exten => _4XXX,n,Hangup
14:39:41
#vi /etc/asterisk/sip.conf
14:42:21
#host=dynamic

14:44:14
#vi /etc/asterisk/extensions.conf
14:44:29
#vi /etc/asterisk/extensions.conf
--- /tmp/l3-saved-18599.645.31201	2009-11-28 15:46:04.000000000 +0200
+++ /etc/asterisk/extensions.conf	2009-11-28 15:46:20.000000000 +0200
@@ -2,11 +2,13 @@
 static=yes
 writeprotect=no
 clearglobalvars=no
+
 [demo1]
 exten => 4000,1,Answer
 exten => 4000,n,Wait(1)
 exten => 4000,n,Playback(demo-thanks)
 exten => 4000,n,Hangup
+
 exten => _1XXX,1,Dial(SIP/1xxx/${EXTEN},60)
 exten => _1XXX,n,Hangup
 
14:46:20
#cat /etc/asterisk/extensions.conf
[general]
static=yes
writeprotect=no
clearglobalvars=no
[demo1]
exten => 4000,1,Answer
exten => 4000,n,Wait(1)
exten => 4000,n,Playback(demo-thanks)
exten => 4000,n,Hangup
exten => _1XXX,1,Dial(SIP/1xxx/${EXTEN},60)
exten => _1XXX,n,Hangup
exten => _2XXX,1,Dial(SIP/2xxx/${EXTEN},60)
exten => _2XXX,n,Hangup
exten => _4XXX,1,Dial(SIP/${EXTEN},60)
exten => _4XXX,n,Hangup

Файлы

  • /etc/asterisk/extensions.conf
  • /etc/asterisk/extensions.conf
    >
    [general]
    static=yes
    writeprotect=no
    clearglobalvars=no
    [demo1]
    exten => 4000,1,Answer
    exten => 4000,n,Wait(1)
    exten => 4000,n,Playback(demo-thanks)
    exten => 4000,n,Hangup
    exten => _1XXX,1,Dial(SIP/1xxx/${EXTEN},60)
    exten => _1XXX,n,Hangup
    exten => _2XXX,1,Dial(SIP/2xxx/${EXTEN},60)
    exten => _2XXX,n,Hangup
    exten => _4XXX,1,Dial(SIP/${EXTEN},60)
    exten => _4XXX,n,Hangup
    

    Статистика

    Время первой команды журнала10:15:04 2009-11-28
    Время последней команды журнала14:46:20 2009-11-28
    Количество командных строк в журнале100
    Процент команд с ненулевым кодом завершения, % 4.00
    Процент синтаксически неверно набранных команд, % 0.00
    Суммарное время работы с терминалом *, час 2.90
    Количество командных строк в единицу времени, команда/мин 0.57
    Частота использования команд
    vi20|================| 16.67%
    grep16|=============| 13.33%
    '7|=====| 5.83%
    ls7|=====| 5.83%
    ifconfig6|=====| 5.00%
    asterisk6|=====| 5.00%
    ping6|=====| 5.00%
    ps5|====| 4.17%
    less5|====| 4.17%
    dpkg4|===| 3.33%
    ifup4|===| 3.33%
    ifdown4|===| 3.33%
    apt-get3|==| 2.50%
    mv3|==| 2.50%
    kill3|==| 2.50%
    man2|=| 1.67%
    screen1|| 0.83%
    t38pt_usertpsource=yes1|| 0.83%
    /etc/init.d/asterisk1|| 0.83%
    cp1|| 0.83%
    Use1|| 0.83%
    allow=ulaw1|| 0.83%
    cat1|| 0.83%
    ~1|| 0.83%
    w1|| 0.83%
    Sets1|| 0.83%
    ?'1|| 0.83%
    l3-agent1|| 0.83%
    s,n,Set(TIMEOUT(response)=10)1|| 0.83%
    tos_sip=cs31|| 0.83%
    host=dynamic1|| 0.83%
    tail1|| 0.83%
    Set1|| 0.83%
    exten1|| 0.83%
    [demo1]1|| 0.83%
    ____
    *) Интервалы неактивности длительностью 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$