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

Содержание

Журнал

Четверг (11/30/06)

/dev/ttyv1
12:01:35
#mail
No mail for root
12:01:40
#mail
No mail for root
12:01:41
#mail
Mail version 8.1 6/6/93.  Type ? for help.
"/var/mail/root": 1 message 1 new
>N  1 root@ns.megazone.uni  Thu Nov 30 10:03  22/983   "privet"
& 1
Message 1:
From root@ns.megazone.unix.nt Thu Nov 30 10:03:50 2006
Date: Thu, 30 Nov 2006 12:03:49 +0200 (EET)
From: Charlie Root <root@ns.megazone.unix.nt>
To: root@freebsd.unix.nt
Subject: privet
HELLO!
& q
Saved 1 message in mbox
12:04:47
#ls ~/
.Xauthority     .gconf          .history        .mc             log.ecp
.bash_history   .gconfd         .k5login        .profile        mbox
.bash_profile   .gnome2         .l3rc           .ssh            stable-supfile
.bashrc         .gnome2_private .lilalo         .xinirc         xorg.conf.new
.cshrc          .gstreamer-0.8  .login          log.eci
12:05:12
#cd mbox
bash: cd: mbox: Not a directory
12:05:23
#less mbox
12:05:49
#/usr/local/etc/rc.d/xinetd.sh restart
Stopping xinetd.
Starting xinetd.
/dev/ttyp2
12:09:56
#screen -x
/dev/ttyp4
12:10:03
#sxreen -x
bash: sxreen: command not found
12:10:25
#screen -x
/dev/ttyp8
12:10:57
#cd /usr/ports/

12:11:25
#make search name=pop3
Port:   akpop3d-0.7.7
Path:   /usr/ports/mail/akpop3d
Info:   POP3 daemon aimed to be small and secure
Maint:  ports@FreeBSD.org
B-deps:
R-deps:
WWW:    http://synflood.at/akpop3d/
Port:   p5-Mail-POP3Client-2.16
Path:   /usr/ports/mail/p5-Mail-POP3Client
Info:   Perl5 module to talk to a POP3 (RFC1939) server
...
B-deps: apache-1.3.33_2 expat-1.95.8_3 pear-Archive_Tar-1.3.1 pear-Console_Getopt-1.2 pear-Net_Socket-1.0.6 pear-PEAR-1.3.5_1 pear-XML_RPC-1.4.0 perl-5.8.7 php4-4.4.0 php4-pcre-4.4.0 php4-pear-4.4.0 php4-xml-4.4.0
R-deps: apache-1.3.33_2 expat-1.95.8_3 pear-Archive_Tar-1.3.1 pear-Console_Getopt-1.2 pear-Net_Socket-1.0.6 pear-PEAR-1.3.5_1 pear-XML_RPC-1.4.0 perl-5.8.7 php4-4.4.0 php4-pcre-4.4.0 php4-pear-4.4.0 php4-xml-4.4.0
WWW:    http://pear.php.net/package/Net_POP3/
Port:   pam_pop3-1.0_1
Path:   /usr/ports/security/pam_pop3
Info:   This module authenticates a user against a POP3 server
Maint:  ports@FreeBSD.org
B-deps:
R-deps:
WWW:    http://shum.huji.ac.il/~schapiro/linux/
12:11:29
#make search name=pop3 | less
/dev/ttyp6
12:11:38
#screen -x
/dev/ttyp8
12:11:43
#make search name=qpopper | less
12:11:54
#cd /usr/ports/mail/qpopper/

12:12:14
#ls /usr/ports/mail/
grepmail                                pymsgauth
gtray                                   pyzor
gubby                                   qconfirm
hashcash                                qmHandle
hbiff                                   qmail
hotwayd                                 qmail-autoresponder
ifile                                   qmail-conf
ilohamail                               qmail-contrib
im                                      qmail-ldap
imap-uw                                 qmail-mysql
...
p5-Email-MIME-ContentType               ximian-connector
p5-Email-MIME-Encodings                 xlbiff
p5-Email-MIME-Modifier                  xmail
p5-Email-MessageID                      xmailbox
p5-Email-Simple                         xmailwatcher
p5-Email-Simple-Creator                 xpbiff
p5-Email-Valid                          yadda
p5-Email-Valid-Loose                    yuzu
p5-IMAP-Admin                           zabit
p5-IMAP-Sieve                           zmailer
12:12:22
#ls /usr/ports/mail/pop
pop-before-smtp/        popa3d/                 poppassd/
pop3gwd/                popa3d-before-sendmail/ popper/
pop3lite/               popcheck/               poppwd/
pop3proxy/              popd/                   poppy/
pop3vscan/              popfile/
12:12:22
#cd /usr/ports/mail/qpopper/

12:12:40
#make install
checking for netinet/in.h... yes
checking maillock.h usability... no
checking maillock.h presence... no
checking for maillock.h... no
checking select.h usability... no
checking select.h presence... no
checking for select.h... no
checking shadow.h usability... no
checking shadow.h presence... no
checking for shadow.h... no
...
cc -c -I.. -I.. -I.  -I../mmangle -I../common -I/usr/include  -O2 -fno-strict-aliasing -pipe  -freg-struct-return -DHAVE_CONFIG_H  -DSETPROCTITLE  -DFREEBSD -DUNIX genpath.c -o genpath.o
cd ../mmangle && make all
cc -c -I.. -I. -I.. -I../popper  -I../common -O2 -fno-strict-aliasing -pipe  -freg-struct-return -DHAVE_CONFIG_H  -DSETPROCTITLE  -DFREEBSD -DUNIX mime.c -o mime.o
cc -c -I.. -I. -I.. -I../popper  -I../common -O2 -fno-strict-aliasing -pipe  -freg-struct-return -DHAVE_CONFIG_H  -DSETPROCTITLE  -DFREEBSD -DUNIX mangle.c -o mangle.o
cc -c -I.. -I. -I.. -I../popper  -I../common -O2 -fno-strict-aliasing -pipe  -freg-struct-return -DHAVE_CONFIG_H  -DSETPROCTITLE  -DFREEBSD -DUNIX enriched.c -o enriched.o
cc -c -I.. -I. -I.. -I../popper  -I../common -O2 -fno-strict-aliasing -pipe  -freg-struct-return -DHAVE_CONFIG_H  -DSETPROCTITLE  -DFREEBSD -DUNIX striphtml.c -o striphtml.o
cc -c -I.. -I. -I.. -I../popper  -I../common -O2 -fno-strict-aliasing -pipe  -freg-struct-return -DHAVE_CONFIG_H  -DSETPROCTITLE  -DFREEBSD -DUNIX lineend.c -o lineend.o
cc -c -I.. -I. -I.. -I../popper  -I../common -O2 -fno-strict-aliasing -pipe  -freg-struct-return -DHAVE_CONFIG_H  -DSETPROCTITLE  -DFREEBSD -DUNIX etags.c -o etags.o
cc -c -I.. -I. -I.. -I../popper  -I../common -O2 -fno-strict-aliasing -pipe  -freg-struct-return -DHAVE_CONFIG_H  -DSETPROCTITLE  -DFREEBSD -DUNIX charmangle.c -o charmangle.o
ar -r libmangle.a mime.o mangle.o enriched.o striphtml.o  lineend.o etags.o charmangle.o
12:19:32
#xconv
# This file generated by xconv.pl, included with the xinetd
# package.  xconv.pl was written by Rob Braun (bbraun@synack.net)
#
# The file is merely a translation of your inetd.conf file into
# the equivalent in xinetd.conf syntax.  xinetd has many
# features that may not be taken advantage of with this translation.
# Please refer to the xinetd.conf man page for more information
# on how to properly configure xinetd.
# The defaults section sets some information for all services
defaults
...
{
        flags       = NAMEINARGS
        socket_type = stream
        protocol    = tcp
        wait        = no
        user        = root
        server      = /usr/local/libexec/qpopper
        server_args = qpopper -s
}
^C
12:20:23
#cat >> /usr/local/etc/xinetd.conf
service pop3
{
        flags       = NAMEINARGS
        socket_type = stream
        protocol    = tcp
        wait        = no
        user        = root
        server      = /usr/local/libexec/qpopper
        server_args = qpopper -s
}
12:20:30
#xconf
bash: xconf: command not found
12:20:59
#pkg_info -Dx qpopper | grep stream
   pop3 stream tcp nowait root /usr/local/libexec/qpopper qpopper -s
12:21:16
#pkg_info -Dx qpopper | grep stream | xconv
# This file generated by xconv.pl, included with the xinetd
# package.  xconv.pl was written by Rob Braun (bbraun@synack.net)
#
# The file is merely a translation of your inetd.conf file into
# the equivalent in xinetd.conf syntax.  xinetd has many
# features that may not be taken advantage of with this translation.
# Please refer to the xinetd.conf man page for more information
# on how to properly configure xinetd.
# The defaults section sets some information for all services
defaults
...
service pop3
{
        flags       = NAMEINARGS
        socket_type = stream
        protocol    = tcp
        wait        = no
        user        = root
        server      = /usr/local/libexec/qpopper
        server_args = qpopper -s
}
12:21:21
#less
12:21:21
#ls -al
total 40
drwxr-xr-x    5 root  wheel    512 Nov 30 10:19 .
drwxr-xr-x  545 root  wheel  11776 Nov 26 13:28 ..
-rw-r--r--    1 root  wheel   6267 Jul 31  2005 Makefile
-rw-r--r--    1 root  wheel    224 May 15  2005 distinfo
drwxr-xr-x    2 root  wheel    512 Nov 26 13:28 files
-rw-r--r--    1 root  wheel    237 May  9  2005 pkg-descr
-rw-r--r--    1 root  wheel    958 Oct  5  2001 pkg-install
-rw-r--r--    1 root  wheel    303 May  9  2005 pkg-message
-rw-r--r--    1 root  wheel    652 Jul 31  2005 pkg-plist
-rw-r--r--    1 root  wheel    353 Oct 10  1997 pkg-req
drwxr-xr-x    2 root  wheel    512 Nov 26 13:28 scripts
drwxr-xr-x    3 root  wheel    512 Nov 30 10:19 work
12:22:00
#make config
     lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
     x                    Options for qpopper 4.0.8                       x
     x lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk x
     x x [ ] APOP_ONLY        build with APOP authentication only       x x
     x x [X] APOP             build with APOP                           x x
     x x [ ] DOCUMENTATION    install pdf documentation                 x x
     x x [ ] DRAC             build with Dynamic Relay Authorization    x x
     x x [X] IPV6             build with IPv6 support                   x x
     x x [ ] FULL_POPD_DEBUG  build with more verbose debugging         x x
     x x [ ] PAM              build with PAM authentication             x x
...
     x x [X] SAMPLE_POPUSERS  build a default reject file               x x
     x x [X] SHY_ENABLED      hide qpopper version in POP3 banner       x x
     x x [X] SSL              build with SSL/TLS support                x x
     x x [ ] STANDALONE_MODE  build qpopper to be run without inetd     x x
     x x [X] U_OPTION         include support for user .qpopper-options x x
     x x                                                                x x
     tqmqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqjqu
     x                          OK         [Cancel]                       x
     mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj
===> Options unchanged
12:22:08
#pkg_info -Dx qpopper | grep stream | xconv
# This file generated by xconv.pl, included with the xinetd
# package.  xconv.pl was written by Rob Braun (bbraun@synack.net)
#
# The file is merely a translation of your inetd.conf file into
# the equivalent in xinetd.conf syntax.  xinetd has many
# features that may not be taken advantage of with this translation.
# Please refer to the xinetd.conf man page for more information
# on how to properly configure xinetd.
# The defaults section sets some information for all services
defaults
...
service pop3
{
        flags       = NAMEINARGS
        socket_type = stream
        protocol    = tcp
        wait        = no
        user        = root
        server      = /usr/local/libexec/qpopper
        server_args = qpopper -s
}
12:24:59
#pkg_info -Dx qpopper | grep stream | xconv | sed '1,10 d'
# The defaults section sets some information for all services
defaults
{
        #The maximum number of requests a particular service may handle
        # at once.
        instances   = 25
        # The type of logging.  This logs to a file that is specified.
        # Another option is: SYSLOG syslog_facility [syslog_level]
        log_type    = FILE /var/log/servicelog
        # What to log when the connection succeeds.
...
service pop3
{
        flags       = NAMEINARGS
        socket_type = stream
        protocol    = tcp
        wait        = no
        user        = root
        server      = /usr/local/libexec/qpopper
        server_args = qpopper -s
}
12:25:26
#pkg_info -Dx qpopper | grep stream | xconv | sed '1,20 d'
        # What to log when the connection succeeds.
        # PID logs the pid of the server processing the request.
        # HOST logs the remote host's ip address.
        # USERID logs the remote user (using RFC 1413)
        # EXIT logs the exit status of the server.
        # DURATION logs the duration of the session.
        log_on_success = HOST PID
        # What to log when the connection fails.  Same options as above
        log_on_failure = HOST
        # The maximum number of connections a specific IP address can
...
service pop3
{
        flags       = NAMEINARGS
        socket_type = stream
        protocol    = tcp
        wait        = no
        user        = root
        server      = /usr/local/libexec/qpopper
        server_args = qpopper -s
}
12:25:28
#pkg_info -Dx qpopper | grep stream | xconv | sed '1,30 d'
        log_on_failure = HOST
        # The maximum number of connections a specific IP address can
        # have to a specific service.
        per_source  = 5
}
service pop3
{
        flags       = NAMEINARGS
        socket_type = stream
        protocol    = tcp
        wait        = no
        user        = root
        server      = /usr/local/libexec/qpopper
        server_args = qpopper -s
}
12:25:31
#pkg_info -Dx qpopper | grep stream | xconv | sed '1,/^}/ d'
service pop3
{
        flags       = NAMEINARGS
        socket_type = stream
        protocol    = tcp
        wait        = no
        user        = root
        server      = /usr/local/libexec/qpopper
        server_args = qpopper -s
}
12:25:42
#sockstat -4
USER     COMMAND    PID   FD PROTO  LOCAL ADDRESS         FOREIGN ADDRESS
root     sshd       5459  3  tcp4   192.168.15.23:22      192.168.15.25:56631
root     sshd       5345  3  tcp4   192.168.15.23:22      192.168.15.24:60621
root     sendmail   5088  4  tcp4   *:25                  *:*
root     sendmail   5088  6  tcp4   *:587                 *:*
bind     named      4740  20 udp4   192.168.15.23:53      *:*
bind     named      4740  21 tcp4   192.168.15.23:53      *:*
bind     named      4740  22 udp4   127.0.0.1:53          *:*
bind     named      4740  23 tcp4   127.0.0.1:53          *:*
bind     named      4740  24 udp4   *:51112               *:*
...
root     xinetd     599   8  tcp4   *:30021               *:*
root     xinetd     599   9  tcp4   *:7                   *:*
root     smbd       580   21 tcp4   *:445                 *:*
root     smbd       580   22 tcp4   *:139                 *:*
root     nmbd       576   6  udp4   *:137                 *:*
root     nmbd       576   7  udp4   *:138                 *:*
root     nmbd       576   8  udp4   192.168.15.23:137     *:*
root     nmbd       576   9  udp4   192.168.15.23:138     *:*
root     sshd       503   4  tcp4   *:22                  *:*
root     syslogd    321   8  udp4   *:514                 *:*
12:26:52
#sockstat -4l
USER     COMMAND    PID   FD PROTO  LOCAL ADDRESS         FOREIGN ADDRESS
root     sendmail   5088  4  tcp4   *:25                  *:*
root     sendmail   5088  6  tcp4   *:587                 *:*
bind     named      4740  20 udp4   192.168.15.23:53      *:*
bind     named      4740  21 tcp4   192.168.15.23:53      *:*
bind     named      4740  22 udp4   127.0.0.1:53          *:*
bind     named      4740  23 tcp4   127.0.0.1:53          *:*
bind     named      4740  24 udp4   *:51112               *:*
bind     named      4740  26 tcp4   127.0.0.1:953         *:*
root     xinetd     599   5  tcp4   *:23                  *:*
root     xinetd     599   8  tcp4   *:30021               *:*
root     xinetd     599   9  tcp4   *:7                   *:*
root     smbd       580   21 tcp4   *:445                 *:*
root     smbd       580   22 tcp4   *:139                 *:*
root     nmbd       576   6  udp4   *:137                 *:*
root     nmbd       576   7  udp4   *:138                 *:*
root     nmbd       576   8  udp4   192.168.15.23:137     *:*
root     nmbd       576   9  udp4   192.168.15.23:138     *:*
root     sshd       503   4  tcp4   *:22                  *:*
root     syslogd    321   8  udp4   *:514                 *:*
12:26:59
#grep inetd /etc/rc.conf
#inetd_enable="YES"
xinetd_enable="YES"
12:27:05
#pkg_info -Dx qpopper | grep stream | xconv | sed '1,/^}/ d'
service pop3
{
        flags       = NAMEINARGS
        socket_type = stream
        protocol    = tcp
        wait        = no
        user        = root
        server      = /usr/local/libexec/qpopper
        server_args = qpopper -s
}
12:30:13
#sockstat -4n | grep 110
sockstat: illegal option -- n
Usage: sockstat [-46clu] [-p ports]
12:32:20
#sockstat -4l | grep 110

/dev/ttypa
12:32:21
#screen -z
/dev/ttyp8
12:32:23
#sockstat -4l | grep 110

12:32:23
#ls -l /usr/local/etc/xinetd.conf
-rw-r--r--  1 root  wheel  2420 Nov 30 10:20 /usr/local/etc/xinetd.conf
/dev/ttypa
12:32:24
#screen -x
/dev/ttyp8
12:32:52
#less /usr/local/etc/xinetd.conf
12:32:59
#sockstat -4l | grep 110
root     xinetd     10729 10 tcp4   *:110                 *:*
/dev/ttyv1
12:33:34
#echo HELLO | mail -s privet user@freebsd.unix.nt

/dev/ttyp8
12:33:41
#ssh root@m05
Password:
12:34:10
#ls /usr/local/etc/
Muttrc                  foto.iso.1              popd.conf.default
Muttrc.dist             foto.iso.2              qpopper
a2ps-site.cfg           ksysguarddrc            qpopper.config.sample
a2ps.cfg                lynx.cfg                rc.d
bonobo-activation       lynx.cfg.default        rsyncd.conf
cdrecord                mime.types              rsyncd.conf.sample
cdrecord.sample         mtools.conf             smb.conf.default
codepages               mtools.conf.sample      snmp
cups                    openldap                wgetrc
esd.conf                openslp                 xdg
esd.conf.default        orbit2rc                xinetd.conf
fam.conf                orbit2rc.default        xml2Conf.sh
foto.iso                pam.d                   xsltConf.sh
12:34:15
#exit
exit
Connection to fbsd5.unix.nt closed.
12:34:21
#ssh root@m06
The authenticity of host 'fbsd6.unix.nt (192.168.15.26)' can't be established.
DSA key fingerprint is bf:7d:23:3f:5b:10:ec:51:34:17:8a:0f:5e:74:72:f6.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'fbsd6.unix.nt' (DSA) to the list of known hosts.
Password:
Last login: Thu Nov 30 09:47:23 2006
Copyright (c) 1980, 1983, 1986, 1988, 1990, 1991, 1993, 1994
        The Regents of the University of California.  All rights reserved.
FreeBSD 6.0-RELEASE (GENERIC) #0: Thu Nov  3 09:36:13 UTC 2005
Welcome to FreeBSD!
Removing stale pidfile
12:34:26
#ps aux | grep l3
root   1998  0,0  0,4  8732  7332  ??  Ss    7:53     0:19,03 l3-agent (perl5.8
root   2075  0,0  0,4  8716  7388  ??  Ss    7:53     0:19,76 l3-agent (perl5.8
root   2761  0,0  0,4  8716  7420  ??  Ss    9:32     0:15,01 l3-agent (perl5.8
root   3089  0,0  0,4  8692  7384  ??  Ss    9:39     0:12,24 l3-agent (perl5.8
root   3411  0,0  0,4  8624  7288  ??  Ss    9:47     0:08,90 l3-agent (perl5.8
root  12665  0,0  0,3  8404  7112  ??  Ss   10:34     0:00,04 l3-agent (perl5.8
12:34:31
#ps aux | grep l3 | awk '{print $2}'
2075
1998
2761
3089
3411
12665
12:34:46
#kill -9 `ps aux | grep l3 | awk '{print $2}'`
bash: kill: (12748) - No such process
12:34:55
#ls /usr/local/etc/x
xdg/         xinetd.conf  xml2Conf.sh  xsltConf.sh
12:34:55
#ls /usr/local/etc/x
xdg/         xinetd.conf  xml2Conf.sh  xsltConf.sh
12:34:55
#less /usr/local/etc/xinetd.conf
12:35:15
#exit
exit
Connection to fbsd6.unix.nt closed.
12:35:18
#ssh root@m05
Password:
12:35:22
#less /usr/local/etc/xinetd.conf
12:35:32
#hostname
ns.me.unix.nt
12:35:39
#exit
exit
Connection to fbsd5.unix.nt closed.
12:35:49
#sockstat -4l | grep 110
root     xinetd     10729 10 tcp4   *:110                 *:*
/dev/ttyv1
12:40:32
#mail
Mail version 8.1 6/6/93.  Type ? for help.
"/var/mail/root": 1 message 1 new
>N  1 user@freebsd.unix.nt  Thu Nov 30 10:45  24/908   "privet"
& 1
Message 1:
From user@freebsd.unix.nt Thu Nov 30 10:45:12 2006
X-Authentication-Warning: ns.freebsd.unix.nt: user set sender to user@freebsd.unix.nt using -f
Subject: privet
From: User <user@freebsd.unix.nt>
To: root@freebsd.unix.nt
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
Date: Thu, 30 Nov 2006 10:45:11 +0000
Mime-Version: 1.0
X-Mailer: Evolution 2.2.3 FreeBSD GNOME Team Port
123
& q
Saved 1 message in mbox
12:45:29
#ps -aux | grep sendmail
root   5088  0.0  0.1  3396  2956  ??  Ss    9:47AM   0:00.23 sendmail: accepti
smmsp  5092  0.0  0.1  3296  2732  ??  Is    9:47AM   0:00.01 sendmail: Queue r
прошло 110 минут
/dev/ttyp8
14:35:58
#id
uid=0(root) gid=0(wheel) groups=0(wheel), 5(operator)
14:36:10
#cd /etc/mail

14:36:29
#ls
Makefile                freebsd.mc              mailertable.sample
README                  freebsd.submit.cf       sendmail.cf
access.sample           freebsd.submit.mc       submit.cf
aliases                 helpfile                virtusertable.sample
aliases.db              local-host-names
freebsd.cf              mailer.conf
14:36:30
#strings `which sendmail` | grep /etc
/etc/mail/mailer.conf
14:37:31
#less /etc/mail/mailer.conf
14:37:52
#ldd `which sendmail`
/usr/sbin/sendmail:
        libutil.so.5 => /lib/libutil.so.5 (0x28074000)
        libc.so.6 => /lib/libc.so.6 (0x28080000)
14:37:59
#strings /usr/libexec/sendmail/sendmail | grep /etc | less
14:40:32
#less sendmail.cf
14:40:57
#ls
Makefile                freebsd.mc              mailertable.sample
README                  freebsd.submit.cf       sendmail.cf
access.sample           freebsd.submit.mc       submit.cf
aliases                 helpfile                virtusertable.sample
aliases.db              local-host-names
freebsd.cf              mailer.conf
14:40:58
#less freebsd.mc
14:41:19
#file freebsd.mc
freebsd.mc: sendmail m4 text file
14:41:20
#whatis m4
m4(1)                    - macro language processor
14:41:33
#less sendmail.cf
14:42:06
#file freebsd.mc
freebsd.mc: sendmail m4 text file
14:42:13
#less freebsd.mc
14:44:22
#make
cp freebsd.mc ns.freebsd.unix.nt.mc
/usr/bin/m4 -D_CF_DIR_=/usr/share/sendmail/cf/   /usr/share/sendmail/cf/m4/cf.m4 ns.freebsd.unix.nt.mc > ns.freebsd.unix.nt.cf
cp freebsd.submit.mc ns.freebsd.unix.nt.submit.mc
/usr/bin/m4 -D_CF_DIR_=/usr/share/sendmail/cf/   /usr/share/sendmail/cf/m4/cf.m4 ns.freebsd.unix.nt.submit.mc > ns.freebsd.unix.nt.submit.cf
14:44:25
#ls -l
total 356
-rw-r--r--  1 root  wheel   6809 Nov  3  2005 Makefile
-rw-r--r--  1 root  wheel   2896 Nov  3  2005 README
-rw-r--r--  1 root  wheel    407 Nov  3  2005 access.sample
-rw-r--r--  1 root  wheel   1618 Nov  3  2005 aliases
-rw-r-----  1 root  wheel  16384 Nov 26 13:30 aliases.db
-rw-r--r--  1 root  wheel  57791 Nov  3  2005 freebsd.cf
-rw-r--r--  1 root  wheel   4113 Nov  3  2005 freebsd.mc
-r--r--r--  1 root  wheel  40444 Nov  3  2005 freebsd.submit.cf
-r--r--r--  1 root  wheel    894 Nov  3  2005 freebsd.submit.mc
-r--r--r--  1 root  wheel   5588 Nov  3  2005 helpfile
-rw-r--r--  1 root  wheel     16 Nov 30 09:28 local-host-names
-rw-r--r--  1 root  wheel    400 Nov  3  2005 mailer.conf
-rw-r--r--  1 root  wheel    243 Nov  3  2005 mailertable.sample
-rw-r--r--  1 root  wheel  57750 Nov 30 12:44 ns.freebsd.unix.nt.cf
-rw-r--r--  1 root  wheel   4113 Nov 30 12:44 ns.freebsd.unix.nt.mc
-rw-r--r--  1 root  wheel  40403 Nov 30 12:44 ns.freebsd.unix.nt.submit.cf
-r--r--r--  1 root  wheel    894 Nov 30 12:44 ns.freebsd.unix.nt.submit.mc
-rw-r--r--  1 root  wheel  57791 Nov  3  2005 sendmail.cf
-r--r--r--  1 root  wheel  40444 Nov  3  2005 submit.cf
-rw-r--r--  1 root  wheel    569 Nov  3  2005 virtusertable.sample
14:44:45
#m4 < freebsd.mc > freebsd.sendmail.cf

14:48:26
#ls -l freebsd.sendmail.cf sendmail.cf
-rw-r--r--  1 root  wheel    468 Nov 30 12:48 freebsd.sendmail.cf
-rw-r--r--  1 root  wheel  57791 Nov  3  2005 sendmail.cf
14:48:30
#less Makefile
14:49:11
#ls
Makefile                        local-host-names
README                          mailer.conf
access.sample                   mailertable.sample
aliases                         ns.freebsd.unix.nt.cf
aliases.db                      ns.freebsd.unix.nt.mc
freebsd.cf                      ns.freebsd.unix.nt.submit.cf
freebsd.mc                      ns.freebsd.unix.nt.submit.mc
freebsd.sendmail.cf             sendmail.cf
freebsd.submit.cf               submit.cf
freebsd.submit.mc               virtusertable.sample
helpfile
14:49:13
#make

14:49:15
#touch freebsd.mc

14:49:23
#make

14:49:24
#make freebsd.cf
/usr/bin/m4 -D_CF_DIR_=/usr/share/sendmail/cf/   /usr/share/sendmail/cf/m4/cf.m4 freebsd.mc > freebsd.cf
14:49:34
#ps -aux|grep sendmail
root   5088  0.0  0.1  3396  2956  ??  Ss    9:47AM   0:00.23 sendmail: accepti
smmsp  5092  0.0  0.1  3296  2732  ??  Is    9:47AM   0:00.01 sendmail: Queue r
14:52:48
#ls
Makefile                        local-host-names
README                          mailer.conf
access.sample                   mailertable.sample
aliases                         ns.freebsd.unix.nt.cf
aliases.db                      ns.freebsd.unix.nt.mc
freebsd.cf                      ns.freebsd.unix.nt.submit.cf
freebsd.mc                      ns.freebsd.unix.nt.submit.mc
freebsd.sendmail.cf             sendmail.cf
freebsd.submit.cf               submit.cf
freebsd.submit.mc               virtusertable.sample
helpfile
/dev/ttyv1
14:52:55
#cd /etc/mail

/dev/ttyp8
14:56:39
#ps aux | grep sendmail
root   5088  0.0  0.1  3396  2956  ??  Ss    9:47AM   0:00.24 sendmail: accepti
smmsp  5092  0.0  0.1  3296  2732  ??  Is    9:47AM   0:00.01 sendmail: Queue r
root  11650  0.0  0.0  1508  1020  p9  S+    1:02PM   0:00.00 grep sendmail
15:02:10
#vi aliases
20a21,23
> 
> goodbye: "|/usr/bin/touch /tmp/x"
> 
15:08:46
#make
/usr/sbin/sendmail -bi -OAliasFile=/etc/mail/aliases
/etc/mail/aliases: 28 aliases, longest 24 bytes, 306 bytes total
chmod 0640 /etc/mail/aliases.db
15:08:47
#which touch
/usr/bin/touch
15:08:59
#echo hello | mail goodbye

15:09:10
#ls /tmp
.ICE-unix               .xf86config682          mcop-user
.X0-lock                .xf86config686          named.conf
.X11-unix               HELLO_FROM_LINUX.NT     screens
.XIM-unix               install                 scrollkeeper-user
.exchange-user          kde-user                snort-log
.font-unix              ksocket-user            x
.snap                   mc-root
15:09:12
#ls -l /tmp/x
-rw-r--r--  1 mailnull  wheel  0 Nov 30 13:09 /tmp/x
15:09:16
#cp /bin/rm /usr/bin/xttpd

15:10:41
#chmod u+s /usr/bin/xttpd

Файлы

  • /usr/local/etc/xinetd.conf
  • /usr/local/etc/xinetd.conf
    >
    service pop3
    {
            flags       = NAMEINARGS
            socket_type = stream
            protocol    = tcp
            wait        = no
            user        = root
            server      = /usr/local/libexec/qpopper
            server_args = qpopper -s
    }
    

    Статистика

    Время первой команды журнала12:01:35 2006-11-30
    Время последней команды журнала15:10:41 2006-11-30
    Количество командных строк в журнале101
    Процент команд с ненулевым кодом завершения, % 6.93
    Процент синтаксически неверно набранных команд, % 1.98
    Суммарное время работы с терминалом *, час 1.31
    Количество командных строк в единицу времени, команда/мин 1.28
    Частота использования команд
    grep22|===============| 15.17%
    ls16|===========| 11.03%
    less14|=========| 9.66%
    make10|======| 6.90%
    pkg_info8|=====| 5.52%
    xconv8|=====| 5.52%
    sockstat7|====| 4.83%
    cd6|====| 4.14%
    mail6|====| 4.14%
    screen5|===| 3.45%
    sed5|===| 3.45%
    ps5|===| 3.45%
    ssh3|==| 2.07%
    exit3|==| 2.07%
    awk2|=| 1.38%
    strings2|=| 1.38%
    echo2|=| 1.38%
    file2|=| 1.38%
    freebsd.mc1|| 0.69%
    chmod1|| 0.69%
    cp1|| 0.69%
    xconf1|| 0.69%
    cat1|| 0.69%
    freebsd.sendmail.cf1|| 0.69%
    whatis1|| 0.69%
    touch1|| 0.69%
    ldd1|| 0.69%
    >1|| 0.69%
    id1|| 0.69%
    vi1|| 0.69%
    /usr/local/etc/rc.d/xinetd.sh1|| 0.69%
    sxreen1|| 0.69%
    kill1|| 0.69%
    hostname1|| 0.69%
    /usr/local/etc/xinetd.conf1|| 0.69%
    which1|| 0.69%
    m41|| 0.69%
    ____
    *) Интервалы неактивности длительностью 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$