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

Содержание

Журнал

Четверг (05/28/09)

/dev/pts/36
16:34:59
#chattr -a README

16:35:24
#chattr +a README

16:35:28
#echo 1111 >> README

16:35:33
#> README
bash: README: Операция не позволяется
16:35:36
#lsattr README
-----a------------- README
16:36:42
#cp -p README README2

16:37:56
#lsattr README2
------------------- README2
16:37:59
##SELinux

16:38:55
#ls -l /etc/passwd
-rw-r--r-- 1 root root 1110 Май 28 16:29 /etc/passwd
16:41:11
#ldd /bin/ls
        linux-gate.so.1 =>  (0xb7fb1000)
        librt.so.1 => /lib/i686/nosegneg/librt.so.1 (0xb7fa2000)
        libselinux.so.1 => /lib/libselinux.so.1 (0xb7f89000)
        libacl.so.1 => /lib/libacl.so.1 (0xb7f81000)
        libc.so.6 => /lib/i686/nosegneg/libc.so.6 (0xb7e1d000)
        libpthread.so.0 => /lib/i686/nosegneg/libpthread.so.0 (0xb7e04000)
        /lib/ld-linux.so.2 (0xb7fb2000)
        libdl.so.2 => /lib/i686/nosegneg/libdl.so.2 (0xb7e00000)
        libattr.so.1 => /lib/libattr.so.1 (0xb7dfb000)
16:41:45
#vi /etc/nsswitch.conf
16:42:31
#~
Display all 122 possibilities? (y or n)
16:42:31
#ls /lib/*nss*
/lib/libnss_compat-2.9.so  /lib/libnss_files-2.9.so   /lib/libnss_nis-2.9.so
/lib/libnss_compat.so.2    /lib/libnss_files.so.2     /lib/libnss_nisplus-2.9.so
/lib/libnss_dns-2.9.so     /lib/libnss_hesiod-2.9.so  /lib/libnss_nisplus.so.2
/lib/libnss_dns.so.2       /lib/libnss_hesiod.so.2    /lib/libnss_nis.so.2
16:42:37
#apt-cache search libnss
libnss-db - NSS module for using Berkeley Databases as a naming service
libnss-extrausers - nss module to have an additional passwd, shadow and group file
libnss-ldap - NSS module for using LDAP as a naming service
libnss-ldapd - NSS module for using LDAP as a naming service
libnss-lwres - NSS module for using bind9's lwres as a naming service
libnss-mdns - NSS module for Multicast DNS name resolution
libnss-mysql - NSS module for MySQL
libnss-mysql-bg - NSS module for using MySQL as a naming service
libnss-pgsql2 - NSS module for using PostgreSQL as a naming service
libnss3-1d - Network Security Service libraries
libnss3-1d-dbg - Debugging symbols for the Network Security Service libraries
libnss3-dev - Development files for the Network Security Service libraries
libnss3-tools - Network Security Service tools
libpam-ccreds - Pam module to cache authentication credentials
libpam-ldap - Pluggable Authentication Module for LDAP
libpathfinder-dev - Development files for pathfinder
libpathfinder-nss-1 - Pathfinder integration Library for LibNSS
nss-updatedb - Cache name service directories in DB format
16:48:10
#getent passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
...
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
sshd:x:101:65534::/var/run/sshd:/usr/sbin/nologin
user:x:1000:1000::/home/user:/bin/bash
Debian-exim:x:102:104::/var/spool/exim4:/bin/false
quiz:x:1001:1001::/home/quiz:/usr/local/bin/quiz
userY:x:1002:1002::/home/userY:/bin/sh
user1:x:1003:1003::/home/user1:/bin/bash
user2:x:1004:1004::/home/user2:/bin/bash
user3:x:1005:1005::/home/user3:/bin/sh
16:49:02
#â„# pluggable authentication modules

16:49:47
#ldd `which sudo`
        linux-gate.so.1 =>  (0xb7f37000)
        libpam.so.0 => /lib/libpam.so.0 (0xb7f26000)
        libdl.so.2 => /lib/i686/nosegneg/libdl.so.2 (0xb7f22000)
        libc.so.6 => /lib/i686/nosegneg/libc.so.6 (0xb7dbd000)
        /lib/ld-linux.so.2 (0xb7f38000)
16:50:47
#ldd `which su`
        linux-gate.so.1 =>  (0xb7f57000)
        libpam.so.0 => /lib/libpam.so.0 (0xb7f46000)
        libpam_misc.so.0 => /lib/libpam_misc.so.0 (0xb7f43000)
        libc.so.6 => /lib/i686/nosegneg/libc.so.6 (0xb7dde000)
        libdl.so.2 => /lib/i686/nosegneg/libdl.so.2 (0xb7dda000)
        /lib/ld-linux.so.2 (0xb7f58000)
16:51:07
#ldd `which sshd`
        linux-gate.so.1 =>  (0xb7f13000)
        libwrap.so.0 => /lib/libwrap.so.0 (0xb7f05000)
        libpam.so.0 => /lib/libpam.so.0 (0xb7efa000)
        libdl.so.2 => /lib/i686/nosegneg/libdl.so.2 (0xb7ef5000)
        libselinux.so.1 => /lib/libselinux.so.1 (0xb7edc000)
        libresolv.so.2 => /lib/i686/nosegneg/libresolv.so.2 (0xb7ec6000)
        libcrypto.so.0.9.8 => /usr/lib/i686/cmov/libcrypto.so.0.9.8 (0xb7d73000)
        libutil.so.1 => /lib/i686/nosegneg/libutil.so.1 (0xb7d6f000)
        libz.so.1 => /usr/lib/libz.so.1 (0xb7d59000)
        libnsl.so.1 => /lib/i686/nosegneg/libnsl.so.1 (0xb7d40000)
        libcrypt.so.1 => /lib/i686/nosegneg/libcrypt.so.1 (0xb7d0e000)
        libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0xb7ce5000)
        libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0xb7c3c000)
        libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0xb7c12000)
        libcom_err.so.2 => /lib/libcom_err.so.2 (0xb7c0f000)
        libc.so.6 => /lib/i686/nosegneg/libc.so.6 (0xb7aab000)
        /lib/ld-linux.so.2 (0xb7f14000)
        libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0xb7aa4000)
        libkeyutils.so.1 => /lib/libkeyutils.so.1 (0xb7aa1000)
        libpthread.so.0 => /lib/i686/nosegneg/libpthread.so.0 (0xb7a88000)
16:51:13
#`
>
> `
16:51:40
#ls /etc/pam.d/
atd   chpasswd  common-account  common-password  cron   newusers  passwd  su
chfn  chsh      common-auth     common-session   login  other     sshd    sudo
16:51:45
#less /etc/pam.d/sudo
16:52:49
#less /etc/pam.d/common-auth
16:53:04
#grep auth /etc/pam.d/common-auth
# /etc/pam.d/common-auth - authentication settings common to all services
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# traditional Unix authentication mechanisms.
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# pam-auth-update to manage selection of other modules.  See
# pam-auth-update(8) for details.
auth    [success=1 default=ignore]      pam_unix.so nullok_secure
auth    requisite                       pam_deny.so
auth    required                        pam_permit.so
# end of pam-auth-update config
16:53:06
#grep ^auth /etc/pam.d/common-auth
auth    [success=1 default=ignore]      pam_unix.so nullok_secure
auth    requisite                       pam_deny.so
auth    required                        pam_permit.so
16:53:11
#ls /lib/security/pam_unix.so
/lib/security/pam_unix.so
16:53:41
#strings /lib/security/pam_unix.so | grep /etc
/etc
/etc/security/opasswd
user "%s" does not exist in /etc/passwd%s
/etc/passwd
/etc/shadow
/etc/nshadow
/etc/npasswd
/etc/security/nopasswd
/etc/securetty
/dev/pts/20
16:56:09
#man pam_permits
16:56:18
#man pam_limits
/dev/pts/36
16:56:46
#less /etc/security/limits.conf
17:01:25
#man pam_limits
17:02:11
#man limits.conf
17:03:59
#ls /lib/security/
pam_access.so     pam_keyinit.so    pam_permit.so       pam_time.so
pam_debug.so      pam_lastlog.so    pam_rhosts_auth.so  pam_umask.so
pam_deny.so       pam_limits.so     pam_rhosts.so       pam_unix_acct.so
pam_echo.so       pam_listfile.so   pam_rootok.so       pam_unix_auth.so
pam_env.so        pam_localuser.so  pam_securetty.so    pam_unix_passwd.so
pam_exec.so       pam_loginuid.so   pam_selinux.so      pam_unix_session.so
pam_faildelay.so  pam_mail.so       pam_sepermit.so     pam_unix.so
pam_filter.so     pam_mkhomedir.so  pam_shells.so       pam_userdb.so
pam_ftp.so        pam_motd.so       pam_stress.so       pam_warn.so
pam_group.so      pam_namespace.so  pam_succeed_if.so   pam_wheel.so
pam_issue.so      pam_nologin.so    pam_tally.so        pam_xauth.so
17:04:03
#vi /etc/pam.d/common-auth
--- /tmp/l3-saved-11237.26342.12825	2009-05-28 17:04:28.000000000 +0300
+++ /etc/pam.d/common-auth	2009-05-28 17:04:43.000000000 +0300
@@ -14,6 +14,7 @@
 # pam-auth-update(8) for details.
 
 # here are the per-package modules (the "Primary" block)
+auth	sufficient			pam_permit.so
 auth	[success=1 default=ignore]	pam_unix.so nullok_secure
 # here's the fallback if no module succeeds
 auth	requisite			pam_deny.so
17:04:43
#ssh 10.0.35.100
root@10.0.35.100's password:
Linux linux0 2.6.18-6-xen-686 #1 SMP Sun Feb 10 22:43:13 UTC 2008 i686
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu May 28 16:28:04 2009 from 192.168.15.253
l3-agent is already running: pid=11304; pidfile=/root/.lilalo/l3-agent.pid
17:04:54
#exit
exit
Connection to 10.0.35.100 closed.
17:04:56
#vi /etc/ssh/sshd_config
/dev/pts/20
17:05:53
#man pam_permit
/dev/pts/36
17:06:18
$su root

17:06:21
#exit
exit
17:06:39
$exit
exit
17:06:40
#vi /etc/pam.d/common-auth
17:08:41
#~
Restarting OpenBSD Secure Shell server: sshd.
17:09:09
#su user

17:09:26
$passwd
Смена пароля для user.
(текущий) пароль UNIX:
passwd: Ошибка при операциях с маркером проверки подлинности
passwd: пароль не изменён
17:09:34
$exit
exit
17:09:36
#less /etc/pam.d/passwd
17:09:45
#less /etc/pam.d/atd
17:09:58
#who
root     pts/0        2009-05-28 09:51 (192.168.15.253)
root     pts/2        2009-05-28 09:45 (linux15.unix.nt)
root     pts/4        2009-05-28 09:46 (linux6.unix.nt)
root     pts/6        2009-05-28 09:47 (linux5.unix.nt)
root     pts/8        2009-05-28 09:47 (linux7.unix.nt)
root     pts/10       2009-05-28 09:48 (linux8.unix.nt)
root     pts/12       2009-05-28 09:48 (linux4.unix.nt)
root     pts/14       2009-05-28 09:48 (linux3.unix.nt)
root     pts/16       2009-05-28 09:51 (:pts/1:S.0)
root     pts/18       2009-05-28 16:09 (linux13.unix.nt)
root     pts/20       2009-05-28 16:28 (192.168.15.253)
root     pts/22       2009-05-28 09:51 (linux1.unix.nt)
root     pts/24       2009-05-28 09:51 (linux14.unix.nt)
root     pts/26       2009-05-28 09:51 (linux2.unix.nt)
root     pts/28       2009-05-28 09:51 (linux11.unix.nt)
root     pts/30       2009-05-28 09:55 (linux9.unix.nt)
root     pts/32       2009-05-28 11:24 (linux10.unix.nt)
root     pts/34       2009-05-28 10:11 (linux16.unix.nt)
root     pts/36       2009-05-28 12:11 (:pts/1:S.1)
root     pts/38       2009-05-28 12:32 (linux14.unix.nt)
root     pts/42       2009-05-28 12:47 (linux12.unix.nt)
/dev/pts/20
17:12:09
#top
top - 17:12:19 up 23:29, 21 users,  load average: 1.00, 1.05, 1.01
Tasks: 128 total,   2 running, 126 sleeping,   0 stopped,   0 zombie
Cpu(s):100.0%us,  0.0%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:    262292k total,   252892k used,     9400k free,     6516k buffers
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
Swap:        0k total,        0k used,        0k free,   161164k cached
11304 root      25   0 26744  20m 1488 R 99.9  8.2 193:00.85 l3-agent
    1 root      15   0  2144  700  604 S  0.0  0.3   0:00.00 init
    2 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0
    3 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0
...
   53 root      22   0     0    0    0 S  0.0  0.0   0:00.00 pdflush
   54 root      15   0     0    0    0 S  0.0  0.0   0:00.00 pdflush
   55 root      10  -5     0    0    0 S  0.0  0.0   0:00.02 kswapd0
   56 root      20  -5     0    0    0 S  0.0  0.0   0:00.00 aio/0
  624 root      10  -5     0    0    0 S  0.0  0.0   0:00.04 kjournald
  777 root      21  -4  2232  736  520 S  0.0  0.3   0:00.01 udevd
 1313 root      22   0  4312 2204  816 S  0.0  0.8   0:00.02 syslog-ng
 1595 Debian-e  15   0  6428  936  624 S  0.0  0.4   0:00.00 exim4
 1614 daemon    15   0  2092  428  308 S  0.0  0.2   0:00.00 atd
 1634 root      18   0  5232 1012  828 S  0.0  0.4   0:00.00 cron
прошло 22 минуты
/dev/pts/20
17:34:21
#vi /etc/shadow
--- /tmp/l3-saved-16017.20657.14003	2009-05-28 17:34:31.000000000 +0300
+++ /etc/shadow	2009-05-28 17:34:35.000000000 +0300
@@ -1,4 +1,4 @@
-root:$1$aw3RZNNv$B8eGVf36IMEwDW.F/9XjQ.:14392:0:99999:7:::
+root:*$1$aw3RZNNv$B8eGVf36IMEwDW.F/9XjQ.:14392:0:99999:7:::
 daemon:*:14392:0:99999:7:::
 bin:*:14392:0:99999:7:::
 sys:*:14392:0:99999:7:::
17:34:35
#reboot

/dev/pts/0
17:36:33
#cd /home/quiz/

17:36:45
#ls -l
итого 24
-rw-r--r-- 1 quiz quiz 18262 Май 27 17:20 quiz
-rw-r--r-- 1 quiz quiz  1093 Май 27 09:14 start-quiz
17:36:46
#less quiz
17:36:55
#mv .quiz/ .quiz1

17:37:06
#w
 17:38:00 up 3 min,  1 user,  load average: 0,80, 0,28, 0,09
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.15.253   17:36    0.00s  0.00s  0.00s script -f -c bash -q /r
17:38:00
#mkdir .quiz

17:38:31
#chown -R quiz .

17:38:35
#pkill -u quiz

17:40:55
#w
 17:40:56 up 6 min,  1 user,  load average: 1,01, 0,63, 0,26
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.15.253   17:36    0.00s  0.00s  0.00s script -f -c bash -q /r
17:40:56
#passwd quiz
Введите новый пароль UNIX:
Повторите ввод нового пароля UNIX:
passwd: пароль успешно обновлён
/dev/pts/2
17:41:04
#who
root     pts/0        2009-05-28 17:36 (192.168.15.253)
root     pts/2        2009-05-28 17:41 (linux14.unix.nt)
quiz     pts/4        2009-05-28 17:41 (linux16.unix.nt)
/dev/pts/0
17:41:05
#pkill -u quiz

17:41:07
#ls -al .quiz
итого 16
drwxr-xr-x 2 quiz root 4096 Май 28 17:38 .
drwxr-xr-x 5 quiz quiz 4096 Май 28 17:38 ..
-rw-r--r-- 1 quiz quiz 6758 Май 28 17:40 192.168.15.253-1243521524.log
17:41:19
#less .quiz/192.168.15.253-1243521524.log
/dev/pts/3
17:41:59
#учше
bash: учше: команда не найдена
/dev/pts/0
17:42:06
#rm .quiz/192.168.15.253-1243521524.log

17:42:31
#watch ls -l .quiz/

прошло 12 минут
/dev/pts/16
17:55:26
#мÑvi ~/.bashrc
# You may uncomment the following lines if you want `ls' to be colorized:
# export LS_OPTIONS='--color=auto'
# eval "`dircolors`"
# alias ls='ls $LS_OPTIONS'
# alias ll='ls $LS_OPTIONS -l'
# alias l='ls $LS_OPTIONS -lA'
#
#. /root/.lilalo/l3bashrc && _l3_start
# Some more alias to avoid making mistakes:
~
~
~
~
~
~
~
~
~
".bashrc" 17L, 451C записано
прошло >2 часов
/dev/pts/0
20:03:08
# 492
Введите новый пароль UNIX:
Повторите ввод нового пароля UNIX:
passwd: пароль успешно обновлён

Пятница (05/29/09)

/dev/pts/0
09:55:08
#screen -x
09:55:13
#screen -x
/dev/pts/4
09:55:31
#screen -x
/dev/pts/2
09:55:31
#screen -x
/dev/pts/4
09:55:35
#screen -x
/dev/pts/2
09:55:39
#screen -x
/dev/pts/6
09:55:48
#screen -x
09:55:52
#screen -x
/dev/pts/8
09:55:52
#xm list
bash: xm: команда не найдена
09:55:54
#screen -ls
/dev/pts/10
09:55:56
#screen -x
/dev/pts/6
09:55:57
#screen -x
/dev/pts/8
09:55:59
#screen
/dev/pts/10
09:56:03
#ps -waux |grep screen
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root      2139  0.0  0.2   4928   772 pts/11   R+   09:56   0:00 grep screen
09:56:27
#ps -waux |grep screen
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root      2147  0.0  0.3   5888  1004 pts/9    S+   09:56   0:00 screen
root      2203  0.0  0.2   4924   768 pts/11   R+   09:56   0:00 grep screen
09:56:30
#ps -waux |grep screen
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root      2147  0.0  0.3   5888  1004 pts/9    S+   09:56   0:00 screen
root      2277  0.0  0.2   4928   772 pts/11   R+   09:56   0:00 grep screen
/dev/pts/14
09:56:31
#screen -ls
09:56:34
#screen -x
/dev/pts/16
09:56:36
#screen -x
/dev/pts/18
09:57:01
#!s
[root@linux0:~]#
----------------------------------------------------------------------------------------
/dev/pts/20
09:57:02
#screen -ls
09:57:06
#screen -x
/dev/pts/22
09:57:10
#scr
screen        screendump    script        scriptreplay
09:57:10
#screen -x
/dev/pts/24
09:57:56
#screen -x
/dev/pts/26
10:01:20
#screen -x
/dev/pts/28
10:01:26
#screen -x
прошло 16 минут
/dev/pts/12
10:17:42
#apt-get install graphviz gqview
Распаковывается пакет libdatrie1 (из файла .../libdatrie1_0.2.2-1_i386.deb)...
Выбор ранее не выбранного пакета libthai-data.
Распаковывается пакет libthai-data (из файла .../libthai-data_0.1.11-3_all.deb)...
Выбор ранее не выбранного пакета libthai0.
Распаковывается пакет libthai0 (из файла .../libthai0_0.1.11-3_i386.deb)...
Выбор ранее не выбранного пакета libxft2.
Распаковывается пакет libxft2 (из файла .../libxft2_2.1.13-3_i386.deb)...
Выбор ранее не выбранного пакета libpango1.0-0.
Распаковывается пакет libpango1.0-0 (из файла .../libpango1.0-0_1.24.2-1_i386.deb)...
Выбор ранее не выбранного пакета libtiff4.
...
Настраивается пакет xfonts-utils (1:7.4+1) ...
Настраивается пакет x-ttcidfont-conf (32) ...
Updating font configuration of x-ttcidfont-conf...
Cleaning up category cmap..
Cleaning up category cid..
Cleaning up category truetype..
Updating category truetype..
Updating category cid..
Updating category cmap..
Обрабатываются триггеры для menu ...
/dev/pts/32
10:18:07
#screen -x
/dev/pts/12
10:18:52
#apt-cache dotty screen > screen.dot

Статистика

Время первой команды журнала16:34:59 2009- 5-28
Время последней команды журнала10:18:52 2009- 5-29
Количество командных строк в журнале101
Процент команд с ненулевым кодом завершения, %12.87
Процент синтаксически неверно набранных команд, % 1.98
Суммарное время работы с терминалом *, час 1.74
Количество командных строк в единицу времени, команда/мин 0.97
Частота использования команд
screen22|====================| 20.18%
ls7|======| 6.42%
less7|======| 6.42%
grep6|=====| 5.50%
man5|====| 4.59%
vi5|====| 4.59%
ldd4|===| 3.67%
exit4|===| 3.67%
ps3|==| 2.75%
README2|=| 1.83%
passwd2|=| 1.83%
lsattr2|=| 1.83%
pkill2|=| 1.83%
~2|=| 1.83%
w2|=| 1.83%
>2|=| 1.83%
who2|=| 1.83%
chattr2|=| 1.83%
apt-cache2|=| 1.83%
su2|=| 1.83%
mkdir1|| 0.92%
#SELinux1|| 0.92%
strings1|| 0.92%
cp1|| 0.92%
screen.dot1|| 0.92%
reboot1|| 0.92%
rm1|| 0.92%
cd1|| 0.92%
xm1|| 0.92%
echo1|| 0.92%
watch1|| 0.92%
apt-get1|| 0.92%
mv1|| 0.92%
4921|| 0.92%
scr1|| 0.92%
учше1|| 0.92%
`1|| 0.92%
top1|| 0.92%
chown1|| 0.92%
getent1|| 0.92%
â„#1|| 0.92%
ssh1|| 0.92%
!s1|| 0.92%
мÑvi1|| 0.92%
____
*) Интервалы неактивности длительностью 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$