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

Содержание

Журнал

Среда (03/17/10)

/dev/pts/14
13:50:06
#gajim
You must not launch Gajim as root, it is INSECURE
libnotify-Message: Unable to get session bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
Requires docutils 0.4 for set_classes to be available
creating /root/.gajim directory
(gajim.py:13446): GnomeUI-WARNING **: While connecting to session manager:
Authentication Rejected, reason : None of the authentication protocols specified are supported and host-based authentication failed.
creating /root/.gajim/vcards directory
creating /root/.gajim/avatars directory
creating logs database
^Z
[1]+  Stopped                 gajim
13:51:26
#bg
[1]+ gajim &
13:51:39
#fg
gajim
^C
** (gajim.py:13446): WARNING **: couldn't read 4 bytes from gnome-keyring socket: Interrupted system call
13:52:44
#gajim
You must not launch Gajim as root, it is INSECURE
libnotify-Message: Unable to get session bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
Requires docutils 0.4 for set_classes to be available
(gajim.py:13515): GnomeUI-WARNING **: While connecting to session manager:
Authentication Rejected, reason : None of the authentication protocols specified are supported and host-based authentication failed.
^Z
[1]+  Stopped                 gajim
13:53:33
#ping linux3.unix.nt
PING linux3.unix.nt (192.168.16.3) 56(84) bytes of data.
64 bytes from linux3.unix.nt (192.168.16.3): icmp_seq=1 ttl=64 time=0.026 ms
^C
--- linux3.unix.nt ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.026/0.026/0.026/0.000 ms
13:53:45
#bg
[1]+ gajim &
13:53:53
#pkill gajim
[1]+  Terminated              gajim
13:54:11
#ps aux | grep gajim
root     13598  0.0  0.0   3116   732 pts/15   R+   14:54   0:00 grep gajim
13:54:15
#ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   2100   684 ?        Ss   Mar16   0:01 init [2]
root         2  0.0  0.0      0     0 ?        S<   Mar16   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S<   Mar16   0:00 [migration/0]
root         4  0.0  0.0      0     0 ?        S<   Mar16   0:00 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S<   Mar16   0:01 [watchdog/0]
root         6  0.0  0.0      0     0 ?        S<   Mar16   0:00 [migration/1]
root         7  0.0  0.0      0     0 ?        S<   Mar16   0:00 [ksoftirqd/1]
root         8  0.0  0.0      0     0 ?        S<   Mar16   0:00 [watchdog/1]
root         9  0.0  0.0      0     0 ?        S<   Mar16   0:02 [events/0]
...
root     11757  0.0  0.0   4324  1488 pts/23   S+   12:32   0:00 /usr/bin/vim /etc/asterisk/extensions.conf
root     11864  0.0  0.0   3016   548 pts/24   Ss+  12:50   0:00 script -f -c bash -q /root/.lilalo//30192198271617131185-1268823016.script
root     11895  0.0  0.0   3020   364 pts/24   S+   12:50   0:00 script -f -c bash -q /root/.lilalo//30192198271617131185-1268823016.script
root     11896  0.0  0.0   4284  1772 pts/25   Ss   12:50   0:00 bash
root     11918  0.0  0.0   4104  1028 pts/25   S+   12:50   0:00 screen -x
ejabberd 12537  0.0  0.0   1948   356 ?        S    14:23   0:00 /usr/lib/erlang/erts-5.6.3/bin/epmd -daemon
ejabberd 13258  0.2  0.7  30460 23880 ?        Sl   14:48   0:00 /usr/lib/erlang/erts-5.6.3/bin/beam -K false -P 250000 -- -root /usr/lib/erlang -progname erl
ejabberd 13317  0.0  0.0   1944   432 ?        Ss   14:48   0:00 inet_gethost 4
ejabberd 13318  0.0  0.0   2120   700 ?        S    14:48   0:00 inet_gethost 4
root     13606  0.0  0.0   3712  1032 pts/15   R+   14:54   0:00 ps aux
13:54:18
#passwd user3 password
Usage: passwd [options] [LOGIN]
Options:
  -a, --all                     report password status on all accounts
  -d, --delete                  delete the password for the named account
  -e, --expire                  force expire the password for the named account
  -h, --help                    display this help message and exit
  -k, --keep-tokens             change password only if expired
  -i, --inactive INACTIVE       set password inactive after expiration
                                to INACTIVE
  -l, --lock                    lock the password of the named account
  -n, --mindays MIN_DAYS        set minimum number of days before password
                                change to MIN_DAYS
  -q, --quiet                   quiet mode
  -r, --repository REPOSITORY   change password in REPOSITORY repository
  -S, --status                  report password status on the named account
  -u, --unlock                  unlock the password of the named account
  -w, --warndays WARN_DAYS      set expiration warning days to WARN_DAYS
  -x, --maxdays MAX_DAYS        set maximim number of days before password
                                change to MAX_DAYS
/dev/pts/8
13:54:51
#gajim
You must not launch Gajim as root, it is INSECURE
libnotify-Message: Unable to get session bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
Requires docutils 0.4 for set_classes to be available
(gajim.py:13623): GnomeUI-WARNING **: While connecting to session manager:
Authentication Rejected, reason : None of the authentication protocols specified are supported and host-based authentication failed.
** (gajim.py:13623): WARNING **: couldn't read 4 bytes from gnome-keyring socket: Connection reset by peer
Traceback (most recent call last):
  File "/usr/share/gajim/src/config.py", line 2942, in on_forward_button_clicked
    self.save_account(username, server, savepass, password)
  File "/usr/share/gajim/src/config.py", line 3062, in save_account
...
    return get_storage().get_password(account_name)
  File "/usr/share/gajim/src/common/passwords.py", line 118, in get_storage
    storage = GnomePasswordStorage()
  File "/usr/share/gajim/src/common/passwords.py", line 52, in __init__
    gnomekeyring.create_sync(self.keyring, None)
gnomekeyring.IOError
^CTraceback (most recent call last):
  File "gajim.py", line 2284, in <module>
    gtk.main()
KeyboardInterrupt
13:57:53
#vim /etc/ejabberd/ejabberd.
--- /tmp/l3-saved-3708.32356.14239	2010-03-17 14:58:13.000000000 +0200
+++ /etc/ejabberd/ejabberd.cfg	2010-03-17 14:58:49.000000000 +0200
@@ -425,7 +425,7 @@
 % (note that if you remove mod_register from modules list then users will not
 % be able to change their password as well as register).
 % This setting is default because it's more safe.
-{access, register, [{deny, all}]}.
+{access, register, [{allow, all}]}.
 
 %% Everybody can create pubsub nodes
 {access, pubsub_createnode, [{allow, all}]}.
13:57:53
#vim /etc/ejabberd/ejabberd.cfg
13:58:49
#vim /etc/init.d/ejabberd restart
13:59:10
#? = 1) ; do
Restarting jabber server: ejabberd.
/dev/pts/26
14:02:33
#gajim
You must not launch Gajim as root, it is INSECURE
libnotify-Message: Unable to get session bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
Requires docutils 0.4 for set_classes to be available
(gajim.py:14008): GnomeUI-WARNING **: While connecting to session manager:
Authentication Rejected, reason : None of the authentication protocols specified are supported and host-based authentication failed.
^C
** (gajim.py:14008): WARNING **: couldn't read 4 bytes from gnome-keyring socket: Interrupted system call
14:03:13
#gajim
You must not launch Gajim as root, it is INSECURE
libnotify-Message: Unable to get session bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
Requires docutils 0.4 for set_classes to be available
(gajim.py:14023): GnomeUI-WARNING **: While connecting to session manager:
Authentication Rejected, reason : None of the authentication protocols specified are supported and host-based authentication failed.
** (gajim.py:14023): WARNING **: couldn't read 4 bytes from gnome-keyring socket: Connection reset by peer
Traceback (most recent call last):
  File "/usr/share/gajim/src/config.py", line 2942, in on_forward_button_clicked
    self.save_account(username, server, savepass, password)
  File "/usr/share/gajim/src/config.py", line 3062, in save_account
...
  File "/usr/share/gajim/src/common/connection.py", line 73, in __init__
    self.password = passwords.get_password(name)
  File "/usr/share/gajim/src/common/passwords.py", line 133, in get_password
    return get_storage().get_password(account_name)
  File "/usr/share/gajim/src/common/passwords.py", line 118, in get_storage
    storage = GnomePasswordStorage()
  File "/usr/share/gajim/src/common/passwords.py", line 52, in __init__
    gnomekeyring.create_sync(self.keyring, None)
gnomekeyring.IOError
gajim.py: Fatal IO error 104 (Connection reset by peer) on X server :0.0.
/dev/pts/8
14:04:27
#ejabberdctl
Usage: ejabberdctl [--node nodename] command [options]
Available commands in this ejabberd node:
  status                                                      get ejabberd status
  stop                                                        stop ejabberd
  restart                                                     restart ejabberd
  reopen-log                                                  reopen log file
  register user server password                               register a user
  unregister user server                                      unregister a user
  backup file                                                 store a database backup to file
  restore file                                                restore a database backup from file
...
  rem-rosteritem user1 server1 user2 server2                  Remove user2@server2 from user1@server1's roster
  compile file                                                recompile and reload file
  status-num status                                           number of logged users with status
  push-alltoall server group                                  adds all the users to all the users in Group
  srg-user-del user server group host                         delete user@server from group on host
  connected-users                                             list all established sessions
Examples:
  ejabberdctl restart
  ejabberdctl --node ejabberd@host restart
  ejabberdctl vhost jabber.example.org ...
14:04:30
#ejabberdctl stats
Usage: ejabberdctl [--node nodename] command [options]
Available commands in this ejabberd node:
  status                                                      get ejabberd status
  stop                                                        stop ejabberd
  restart                                                     restart ejabberd
  reopen-log                                                  reopen log file
  register user server password                               register a user
  unregister user server                                      unregister a user
  backup file                                                 store a database backup to file
  restore file                                                restore a database backup from file
...
  rem-rosteritem user1 server1 user2 server2                  Remove user2@server2 from user1@server1's roster
  compile file                                                recompile and reload file
  status-num status                                           number of logged users with status
  push-alltoall server group                                  adds all the users to all the users in Group
  srg-user-del user server group host                         delete user@server from group on host
  connected-users                                             list all established sessions
Examples:
  ejabberdctl restart
  ejabberdctl --node ejabberd@host restart
  ejabberdctl vhost jabber.example.org ...
14:04:51
#ejabberdctl stats onlineusers
0
14:05:02
#apt-get install pidgin
Reading package lists... Done
Building dependency tree
Reading state information... Done
pidgin is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
14:05:26
#pidgin

14:06:18
#apt-get install miranda
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Couldn't find package miranda
прошла 21 минута
/dev/pts/26
14:27:24
#apt-get
apt 0.7.20.2 for i386 compiled on Apr 20 2009 21:52:39
Usage: apt-get [options] command
       apt-get [options] install|remove pkg1 [pkg2 ...]
       apt-get [options] source pkg1 [pkg2 ...]
apt-get is a simple command line interface for downloading and
installing packages. The most frequently used commands are update
and install.
Commands:
   update - Retrieve new lists of packages
   upgrade - Perform an upgrade
...
  -f  Attempt to correct a system with broken dependencies in place
  -m  Attempt to continue if archives are unlocatable
  -u  Show a list of upgraded packages as well
  -b  Build the source package after fetching it
  -V  Show verbose version numbers
  -c=? Read this configuration file
  -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp
See the apt-get(8), sources.list(5) and apt.conf(5) manual
pages for more information and options.
                       This APT has Super Cow Powers.
14:28:49
#apt-get remove gadjin
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Couldn't find package gadjin
14:29:03
#apt-get check
Reading package lists... Done
Building dependency tree
Reading state information... Done
прошло 22 минуты
/dev/pts/14
14:51:07
#passwd user3
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
14:51:25
#apt-get install sendxmpp
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
  libauthen-sasl-perl libio-socket-ssl-perl libnet-libidn-perl libnet-ssleay-perl libnet-xmpp-perl libxml-stream-perl
Suggested packages:
  libgssapi-perl
The following NEW packages will be installed:
  libauthen-sasl-perl libio-socket-ssl-perl libnet-libidn-perl libnet-ssleay-perl libnet-xmpp-perl libxml-stream-perl sendxmpp
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
...
Selecting previously deselected package sendxmpp.
Unpacking sendxmpp (from .../sendxmpp_1.14-1_all.deb) ...
Processing triggers for man-db ...
Setting up libauthen-sasl-perl (2.12-1) ...
Setting up libnet-ssleay-perl (1.35-1) ...
Setting up libio-socket-ssl-perl (1.16-1+lenny1) ...
Setting up libnet-libidn-perl (0.07-1+b1) ...
Setting up libxml-stream-perl (1.22-3) ...
Setting up libnet-xmpp-perl (1.02-1) ...
Setting up sendxmpp (1.14-1) ...
прошло 25 минут
15:17:04
#ejabberdctl register asterisk linux2.unix.nt password
Can't register user "asterisk@linux2.unix.nt" at node ejabberd@linux3: not_allowed
15:19:16
#ejabberdctl register asterisk linux3.unix.nt password

15:19:25
#pwd
/home/user3
15:19:42
#vi ~/.sendxmpprc
--- /dev/null	2010-03-16 09:27:13.505377065 +0200
+++ /root/.sendxmpprc	2010-03-17 16:20:18.000000000 +0200
@@ -0,0 +1 @@
+ 
15:20:21
#~
~
~
~
~
~
~
~
~
~
~
...
~
~
~
~
~
~
~
~
~
"~/.sendxmpprc" 2L, 35C written
15:20:56
#chmod 600 ~/.sendxmpprc

15:21:18
#echo test | sendxmpp -t message user3@linux2.unix.nt

15:22:25
#echo test | sendxmpp -t message user3@linux3.unix.nt

15:22:40
#echo test | sendxmpp user3@linux3.unix.nt

15:24:45
#ls
Desktop
15:24:50
#cd ~

15:25:05
#ls
install  proba
15:25:06
#ls -a
.   .aptitude          .bash_history  .bashrc  .debtags  .gconf   .gnome2          .gstreamer-0.10  .l3rc     .lilalo  .mozilla  .profile  .rnd         .ssh
..  .asterisk_history  .bash_profile  .config  .gajim    .gconfd  .gnome2_private  install          .lesshst  .mc      proba     .purple   .sendxmpprc
15:26:08
#echo test | sendxmpp user2@linux2.unix.nt
Could not connect to server 'linux.unix.nt': IO::Socket::INET: Bad hostname 'linux.unix.nt'
15:27:02
#echo test | sendxmpp user2@linux2.unix.nt
Could not connect to server 'linux333.unix.nt': IO::Socket::INET: Bad hostname 'linux333.unix.nt'
15:27:20
#echo test | sendxmpp user2@linux2.unix.nt

15:27:24
#echo test | sendxmpp user3@linux3.unix.nt

15:27:34
#echo "Kharkov test" | sendxmpp igor@linux2.unix.nt

15:28:07
#getent
getent: wrong number of arguments
Try `getent --help' or `getent --usage' for more information.
15:30:46
#cp ~/.sendxmpprc /var/lib/asterisk/

15:31:05
#chown asterisk /var/lib/asterisk/.sendxmpprc

15:32:32
#echo "Kharkov test" | sendxmpp user3@linux2.unix.nt
^[[A
15:32:37
#echo "Kharkov test" | sendxmpp user3@linux2.unix.nt

15:34:18
#echo "Kharkov test" | sendxmpp user3@linux2.unix.nt

15:34:23
#echo "Kharkov test" | sendxmpp user3@linux2.unix.nt

15:35:11
#echo "Kharkov test" | sendxmpp user3@linux2.unix.nt
Error 'AuthSend': error: not-authorized[?]
15:35:16
#echo "Kharkov test" | sendxmpp user3@linux2.unix.nt
Error 'AuthSend': error: not-authorized[?]
15:35:36
#echo "Kharkov test" | sendxmpp user3@linux3.unix.nt
Error 'AuthSend': error: not-authorized[?]
15:35:45
#echo "Kharkov test" | sendxmpp user3@linux3.unix.nt
Error 'AuthSend': error: not-authorized[?]
15:36:11
#echo "Kharkov test" | sendxmpp user3@linux3.unix.nt

15:36:15
#echo "Kharkov test" | sendxmpp user3@linux3.unix.nt

15:36:23
#echo "Kharkov test" | sendxmpp user3@linux3.unix.nt

15:36:53
#echo "Kharkov test" | sendxmpp user3@linux3.unix.nt

15:37:11
#pidgin
^Z
[1]+  Stopped                 pidgin
15:38:11
#bg
[1]+ pidgin &
15:38:13
#echo "Kharkov test" | sendxmpp user3@linux3.unix.nt

15:39:19
#pwd
/root
/dev/pts/8
15:44:33
#ejabberdctl restart

/dev/pts/14
15:45:10
#asterisk@linux3.unix.nt asteris

15:45:21
#pidgin&
[2] 15405
15:45:27
#fg
pidgin
15:45:36
#jobs
[1]+  Running                 pidgin &
15:45:39
#fg 1
pidgin
15:45:53
#man jobs
15:45:58
#jobs 1
bash: jobs: 1: no such job
15:46:04
#killall pidgin
pidgin: no process killed
15:46:14
#kill pidgin
bash: kill: pidgin: arguments must be process or job IDs
15:46:18
#ps -aux |grep pidgin
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     15474  0.0  0.0   3116   736 pts/15   R+   16:46   0:00 grep pidgin
15:46:29
#pidgin

15:48:04
#top
top - 16:48:11 up 1 day,  7:20, 11 users,  load average: 1.96, 2.08, 2.01
Tasks: 165 total,   3 running, 161 sleeping,   1 stopped,   0 zombie
Cpu(s): 99.8%us,  0.2%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   3099904k total,  1040632k used,  2059272k free,   143460k buffers
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
Swap:  5855684k total,        0k used,  5855684k free,   418868k cached
 3253 root      20   0 23232  19m 1564 R   99  0.6 748:39.93 l3-agent
10587 user3     20   0 13792  10m 1516 R   94  0.3 227:15.31 l3-agent
 2898 root      20   0  374m  33m 9464 S    6  1.1  48:21.82 Xorg
 3388 user3     20   0  184m  94m  23m S    1  3.1   6:12.97 xulrunner-stub
...
 1086 root      16  -4  3092 1696  488 S    0  0.1   0:00.16 udevd
 2021 daemon    20   0  1892  512  416 S    0  0.0   0:00.00 portmap
 2032 statd     20   0  1956  724  624 S    0  0.0   0:00.00 rpc.statd
 2309 root      15  -5     0    0    0 S    0  0.0   0:10.22 kondemand/0
 2310 root      15  -5     0    0    0 S    0  0.0   0:00.00 kondemand/1
 2360 root      20   0 28268 1416  960 S    0  0.0   0:00.19 rsyslogd
 2371 root      20   0  1764  648  548 S    0  0.0   0:00.00 acpid
 2381 messageb  20   0  2880 1228  804 S    0  0.0   0:01.68 dbus-daemon
 2413 avahi     20   0  2988 1504 1272 S    0  0.0   0:00.04 avahi-daemon
 2414 avahi     20   0  2880  488  304 S    0  0.0   0:00.00 avahi-daemon
15:48:44
#ps aux |grep pidgin
root     15543  0.0  0.0   3116   736 pts/15   S+   16:48   0:00 grep pidgin
15:48:51
#pidgin

15:50:24
#jobs

15:50:27
#fg
bash: fg: current: no such job
15:52:13
#man ps
15:52:34
#jps aux pidgin
bash: jps: command not found
15:52:44
#ps aux pidgin
ERROR: Process ID list syntax error.
********* 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
15:52:47
#man ps
15:53:03
#ps -aux pidgin
ERROR: User name does not exist.
********* 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
15:53:08
#ps -aux |grep pidgin
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     15655  0.0  0.0   3116   732 pts/15   R+   16:53   0:00 grep pidgin
15:53:15
#ps aux |grep pidgin
root     15665  0.0  0.0   3116   736 pts/15   R+   16:53   0:00 grep pidgin
/dev/pts/7
15:59:12
#echo test | xmpp
bash: xmpp: command not found
15:59:31
#x
x11perf              xgc                  xsane
x11perfcomp          xgettext             x-session-manager
xargs                xhost                xset
xauth                xinit                xsetmode
xbiff                xkbbell              xsetpointer
xbsh                 xkbcomp              xsetroot
xcalc                xkbevd               xsltproc
xclipboard           xkbprint             xsm
xclock               xkbvleds             xstdcmap
xcmsdb               xkbwatch             xsubpp
...
xdg-desktop-icon     xlsatoms             xtrapin
xdg-desktop-menu     xlsclients           xtrapinfo
xdg-email            xlsfonts             xtrapout
xdg-icon-resource    xmag                 xtrapproto
xdg-mime             xman                 xtrapreset
xdg-open             xmessage             xtrapstats
xdg-screensaver      xml2po               xulrunner-1.9
xditview             xmlcatalog           xvidtune
xdpyinfo             xmllint              xvinfo
xdriinfo             xmodmap              xwd
15:59:31
#xm
xmag        xmessage    xmlcatalog  xmodmap
xman        xml2po      xmllint     xmore
15:59:31
#sendxmpp
sendxmpp version 1.14
Copyright (c) 2004 - 2005 Dirk-Jan C. Binnema
Copyright (c) 2006 - 2007 Lubomir Host 'rajo'
usage: sendxmpp [options] <recipient1> [<recipient2> ...]
or refer to the the sendxmpp manpage
16:02:48
#echo test | sendxmpp
sendxmpp version 1.14
Copyright (c) 2004 - 2005 Dirk-Jan C. Binnema
Copyright (c) 2006 - 2007 Lubomir Host 'rajo'
usage: sendxmpp [options] <recipient1> [<recipient2> ...]
or refer to the the sendxmpp manpage
16:02:56
#cat ~/
.aptitude/         .gajim/            .l3rc              .purple/
.asterisk_history  .gconf/            .lesshst           .rnd
.bash_history      .gconfd/           .lilalo/           .sendxmpprc
.bash_profile      .gnome2/           .mc/               .ssh/
.bashrc            .gnome2_private/   .mozilla/
.config/           .gstreamer-0.10/   proba
.debtags/          install            .profile
16:02:56
#cat ~/.sendxmpprc
asterisk@linux3.unix.nt asterisk
16:03:12
#echo test | sendxmpp user3@linux3.unix.nt

16:04:01
#man sendxmpp
16:04:43
#echo test | sendxmpp -d user3@linux3.unix.nt
sendxmpp: config: 'password' => 'asterisk'
Use of uninitialized value $val in concatenation (.) or string at /usr/bin/sendxmpp line 187.
sendxmpp: config: 'component' => ''
sendxmpp: config: 'jserver' => 'linux3.unix.nt'
sendxmpp: config: 'port' => '0'
sendxmpp: config: 'username' => 'asterisk'
XML::Stream: new: hostname = (linux3.unix.nt)
XML::Stream: SetCallBacks: tag(node) func(CODE(0x871bdf0))
XMPP::Conn: xmppCallbackInit: start
XMPP::Conn: SetCallBacks: tag(message) func(CODE(0x871b9b0))
...
sendxmpp: AuthSend: ok
XMPP::Conn: SendXML: sent(<message to='user3@linux3.unix.nt' type='message'><body>test
</body><subject></subject></message>)
XML::Stream: Send: (<message to='user3@linux3.unix.nt' type='message'><body>test
</body><subject></subject></message>)
sendxmpp: MessageSend
XML::Stream: Send: (</stream:stream>)
XML::Stream: SetCallBacks: tag(node) func(CODE(0x83a1370))
XMPP::Conn: Disconnect: bye bye
sendxmpp: Disconnect
16:06:16
#man nstat
16:07:58
#echo test | sendxmpp user3@linux3.unix.nt

Файлы

  • ~/
  • ~/.sendxmpprc
  • ~/
    >
    .aptitude/         .gajim/            .l3rc              .purple/
    .asterisk_history  .gconf/            .lesshst           .rnd
    .bash_history      .gconfd/           .lilalo/           .sendxmpprc
    .bash_profile      .gnome2/           .mc/               .ssh/
    .bashrc            .gnome2_private/   .mozilla/
    .config/           .gstreamer-0.10/   proba
    .debtags/          install            .profile
    
    ~/.sendxmpprc
    >
    asterisk@linux3.unix.nt asterisk
    

    Статистика

    Время первой команды журнала13:50:06 2010- 3-17
    Время последней команды журнала16:07:58 2010- 3-17
    Количество командных строк в журнале101
    Процент команд с ненулевым кодом завершения, %23.76
    Процент синтаксически неверно набранных команд, % 3.96
    Суммарное время работы с терминалом *, час 2.30
    Количество командных строк в единицу времени, команда/мин 0.73
    Частота использования команд
    echo26|===================| 19.55%
    sendxmpp26|===================| 19.55%
    ps8|======| 6.02%
    apt-get6|====| 4.51%
    ejabberdctl6|====| 4.51%
    man5|===| 3.76%
    gajim5|===| 3.76%
    grep5|===| 3.76%
    fg4|===| 3.01%
    pidgin4|===| 3.01%
    bg3|==| 2.26%
    ls3|==| 2.26%
    vim3|==| 2.26%
    jobs3|==| 2.26%
    passwd2|=| 1.50%
    cat2|=| 1.50%
    pwd2|=| 1.50%
    chmod1|| 0.75%
    cp1|| 0.75%
    pkill1|| 0.75%
    cd1|| 0.75%
    xmpp1|| 0.75%
    xm1|| 0.75%
    asterisk@linux3.unix.nt1|| 0.75%
    ~1|| 0.75%
    killall1|| 0.75%
    x1|| 0.75%
    do1|| 0.75%
    ping1|| 0.75%
    top1|| 0.75%
    jps1|| 0.75%
    ?1|| 0.75%
    chown1|| 0.75%
    pidgin&1|| 0.75%
    vi1|| 0.75%
    getent1|| 0.75%
    kill1|| 0.75%
    ____
    *) Интервалы неактивности длительностью 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$