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

Содержание

Журнал

Среда (05/27/09)

/dev/pts/5
14:37:04
#May 27 12:55:23 linux1 logger: zabi_logi_nelzya
bash: May: команда не найдена
/dev/pts/4
14:38:17
#diff /tmp/l[12] | grep '^<'
diff: пропущен операнд после `/tmp/l[12]'
diff: Попробуйте `diff --help' для получения более подробного описания.
14:38:56
#cat /etc/logrotate.conf /etc/logrotate.d/* | tr ' ' '\n' | grep /var |sort -u > /tmp/l2

14:39:26
#diff /tmp/l[12]
diff: пропущен операнд после `/tmp/l2'
diff: Попробуйте `diff --help' для получения более подробного описания.
14:39:39
#diff /tmp/l[12] | grep '^<'
diff: пропущен операнд после `/tmp/l2'
diff: Попробуйте `diff --help' для получения более подробного описания.
14:40:01
#cat /etc/logrotate.conf /etc/logrotate.d/* | tr ' ' '\n' | grep /var | sort -u > /tmp/l2

14:41:37
#find /var/log/ | grep -v '\.'[0-9] | sort > /tmp/l1

14:42:31
#diff /tmp/l[12] | grep '^<'
< /var/log/
< /var/log/apt
< /var/log/boot
< /var/log/bootstrap.log
< /var/log/ConsoleKit
< /var/log/ConsoleKit/history
< /var/log/dmesg
< /var/log/exim4
< /var/log/faillog
< /var/log/fontconfig.log
...
< /var/log/gdm
< /var/log/gdm/:0.log
< /var/log/lastlog
< /var/log/lp-acct
< /var/log/lp-errs
< /var/log/news
< /var/log/news/news.crit
< /var/log/news/news.err
< /var/log/news/news.notice
< /var/log/pycentral.log
прошло 16 минут
14:58:36
#les
bash: les: команда не найдена
14:59:08
#less .screenrc
14:59:26
#less .sendxmpprc
15:02:39
#cat /etc/resolvconf
cat: /etc/resolvconf: Нет такого файла или каталога
15:07:13
#cat /etc/resolv.conf
nameserver 10.0.35.1
domain unix.nt
15:07:29
#cat > /usr/local/bin/syslog2jabber
#!/bin/sh
while read line
do
echo $line | sendxmpp user@jabber.ru
15:14:28
#cat > /usr/local/bin/syslog2jabber

15:14:40
#vi /usr/local/bin/syslog2jabber
--- /tmp/l3-saved-24911.19625.10086	2009-05-27 15:14:52.000000000 +0300
+++ /usr/local/bin/syslog2jabber	2009-05-27 15:16:24.000000000 +0300
@@ -0,0 +1,6 @@
+#!/bin/sh
+while read line
+do
+echo $line | sendxmpp user@jabber.ru
+done
+
15:16:24
#vi /usr/local/bin/syslog2jabber
15:16:31
#~ +q436f+q6b75+q6b64+q6b72+q6b6c+q2332+q2334+q2569+q2a37+q6b31

15:16:48
#syslog2jabber
dnfmn,msdn,mfn
cannot read /root/.sendxmpprc: Нет такого файла или каталога
^C
15:17:41
#ls -la
итого 312
drwxr-xr-x 56 user user  4096 Май 27 15:00 .
drwxr-xr-x  3 root root  4096 Ноя 25  2008 ..
drwxr-xr-x  2 root root  4096 Май 26 15:01 10:53:38\
drwxr-xr-x  2 root root  4096 Май 26 15:02 10:53:38\\
drwxr-xr-x  2 root root  4096 Май 26 15:01 2009
drwxr-xr-x  2 root root  4096 Май 26 10:55 2009.05.26
drwxr-xr-x  2 root root  4096 Май 26 15:01 26\
drwxr-xr-x  2 root root  4096 Май 26 15:02 26\\
-rw-------  1 user user  1607 Май 27 10:27 .bash_history
...
-rw-------  1 user user   117 Май 27 09:30 .Xauthority
-rw-r--r--  1 user user 10554 Май 27 14:03 .xscreensaver
-rw-r--r--  1 user user  3328 Май 27 15:07 .xsession-errors
-rw-r--r--  1 root root 11221 Май 27 12:18 yslogd: rsyslogd.
-rw-r--r--  1 root root    34 Май 26 17:21 zlo
drwxr-xr-x  2 root root  4096 Май 26 15:01 Втр\
drwxr-xr-x  2 root root  4096 Май 26 15:02 Втр\\
drwxr-xr-x  2 root root  4096 Май 26 10:53 Втр Май 26 10:53:38 EEST 2009
drwxr-xr-x  2 root root  4096 Май 26 15:01 Май\
drwxr-xr-x  2 root root  4096 Май 26 15:02 Май\\
15:17:52
#cp /home/user/.sendxmpprc /root/

15:19:07
#chmod +x /root/.sendxmpprc

15:20:43
#apt-get install syslogng
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
E: Не удалось найти пакет syslogng
15:21:24
#apt-get install syslog-ng
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Следующие пакеты устанавливались автоматически и больше не требуются:
  update-inetd portmap
Для их удаления используйте 'apt-get autoremove'.
Будут установлены следующие дополнительные пакеты:
  libevtlog0
Пакеты, которые будут УДАÐsyslog
НОВЫЕ пакеты, которые будут установлены:
...
Обрабатываются триггеры для man-db ...
Выбор ранее не выбранного пакета libevtlog0.
(Чтение базы данных ... на данный момент установлено 46088 файлов и каталогов.)
Распаковывается пакет libevtlog0 (из файла .../libevtlog0_0.2.8~1-2_i386.deb)...
Выбор ранее не выбранного пакета syslog-ng.
Распаковывается пакет syslog-ng (из файла .../syslog-ng_2.0.9-4.1_i386.deb)...
Обрабатываются триггеры для man-db ...
Настраивается пакет libevtlog0 (0.2.8~1-2) ...
Настраивается пакет syslog-ng (2.0.9-4.1) ...
Starting system logging: syslog-ng.
15:21:43
#/var/log/messages
                    echo zabi_logi_nelzya | logger -t
logger: option requires an argument -- 't'
usage: logger [-is] [-f file] [-p pri] [-t tag] [-u socket] [ message ... ]
15:22:26
#echo zabi_logi_nelzya | logger

15:26:45
#vi /root/.sendxmpprc
--- /tmp/l3-saved-24911.24389.13569	2009-05-27 15:27:35.000000000 +0300
+++ /root/.sendxmpprc	2009-05-27 15:28:23.000000000 +0300
@@ -1,2 +1,2 @@
-user@jabber.ru:5222 password
+olegkon@fritalk.org:5222 password
 
15:28:23
#vi /etc/syslog-ng/syslog-ng.conf
15:30:16
#231 destination(df_kern);
102 destination df_syslog { file("/var/log/syslog"); };
103 destination df_cron { file("/var/log/cron.log"); };
104 destination df_daemon { file("/var/log/daemon.log"); };
105 destination df_kern { file("/var/log/kern.log"); };
106 destination df_lpr { file("/var/log/lpr.log"); };
107 destination df_mail { file("/var/log/mail.log"); };
108 destination df_user { file("/var/log/user.log"); };
109 destination df_uucp { file("/var/log/uucp.log"); };
110
111 # these files are meant for the mail system log files
...
114 destination df_facility_dot_info { file("/var/log/$FACILITY.info"); };
115 destination df_facility_dot_notice { file("/var/log/$FACILITY.notice"); };
116 destination df_facility_dot_warn { file("/var/log/$FACILITY.warn"); };
117 destination df_facility_dot_err { file("/var/log/$FACILITY.err"); };
118 destination df_facility_dot_crit { file("/var/log/$FACILITY.crit"); };
119
120 # these files are meant for the news system, and are kept separated
121 # because they should be owned by "news" instead of "root"
122 destination df_news_dot_notice { file("/var/log/news/news.notice" owner("news")); };
 95                                                                                                                                     122,1         25%
15:34:21
#253 };
  1 #!/bin/sh
  2 while read line
~
~
~
~
~
~
~
~
...
~
~
~
~
~
~
~
~
~
"/usr/local/bin/syslog2jabber" 6L, 72Ch and authpriv facilities
15:35:05
# 3 do
134 # consoles
135 # this will send messages to everyone logged in
136 destination du_all { usertty("*"); };
137
138
139 ######
140 # filters
141
142 # all messages from the auth and authpriv facilities
143 filter f_auth { facility(auth, authpriv); };
...
146 filter f_syslog { not facility(auth, authpriv); };
147
148 # respectively: messages from the cron, daemon, kern, lpr, mail, news, user,
149 # and uucp facilities
150 filter f_cron { facility(cron); };
151 filter f_daemon { facility(daemon); };
152 filter f_kern { facility(kern); };
153 filter f_lpr { facility(lpr); };
154 filter f_mail { facility(mail); };
155 filter f_news { facility(news); };
15:40:26
#156 filter f_user { facility(user); };
327         filter(f_messages);
328         destination(df_messages);
329 };
330
331 # *.emerg                         *
332 log {
333         source(s_all);
334         filter(f_emerg);
335         destination(du_all);
336 };
...
339 # daemon.*;mail.*;\
340 #         news.crit;news.err;news.notice;\
341 #         *.=debug;*.=info;\
342 #         *.=notice;*.=warn       |/dev/xconsole
343 log {
344         source(s_all);
345         filter(f_xconsole);
346         destination(dp_xconsole);
347 };
348
15:40:55
#~
191 ######
192 # logs
193 # order matters if you use "flags(final);" to mark the end of processing in a
194 # "log" statement
195
197
198 # auth,authpriv.*                 /var/log/auth.log
199 log {
200         source(s_all);
201     {   filter(f_auth);
...
204
205 # *.*;auth,authpriv.none          -/var/log/syslog
206 log {
207         source(s_all);
                  (s_all)
                  (        )
210 };
211
212 # this is commented out in the default syslog.conf
209         destination(df_syslog);                                                                                                     212,15        55%
15:45:28
#owner(root);
 54         # enable or disable DNS usage
 55         # syslog-ng blocks on DNS queries, so enabling DNS may lead to
 56         # a Denial of Service attack
 57         # (default is yes)
 58         use_dns(no);
 59
 60         # maximum length of message in bytes
 61         # this is only limited by the program listening on the /dev/log Unix
 62         # socket, glibc can handle arbitrary length log messages, but -- for
 63         # example -- syslogd accepts only 1024 bytes
...
 66
 67         #Disable statistic log messages.
 68         stats_freq(0);
 69
 70         # Some program send log messages through a private implementation.
 71         # and sometimes that implementation is bad. If this happen syslog-ng
 72         # may recognise the program name as hostname. Whit this option
 73         # we tell the syslog-ng that if a hostname match this regexp than that
 74         # is not a real hostname.
                                                                                                                                        74,1-8         9%
прошло 28 минут
16:13:40
#vi /root/.sendxmpprc
16:13:49
#~ +q436f+q6b75+q6b64+q6b72+q6b6c+q2332+q2334+q2569+q2a37+q6b31

16:18:31
#which syslog-ng
/usr/sbin/syslog-ng
16:18:45
#less /usr/sbin/syslog-ng
16:19:09
#less /usr/sbin/syslog-ng
16:19:23
#dpkg -s /etc/syslog-ng
Пакет /etc/syslog-ng не установлен, информация о нём недоступна.
Для проверки файлов архивов используйте команду dpkg --info (dpkg-deb --info),
для вывода списка файлов в них -- команду dpkg--contents (dpkg-deb --contents).
16:21:09
#dpkg -S /etc/syslog-ng
syslog-ng: /etc/syslog-ng
16:21:21
#ls -l /etc/
drwxr-xr-x 2 root root     4096 Май 24 13:16 calendar
drwxr-xr-x 2 root root     4096 Ноя 25  2008 console
-rw-r--r-- 1 root root      518 Май 25 12:02 console-cyrillic
drwxr-xr-x 4 root root     4096 Ноя 25  2008 ConsoleKit
drwxr-xr-x 2 root root     4096 Ноя 25  2008 console-setup
drwxr-xr-x 2 root root     4096 Май 27 11:32 cron.d
drwxr-xr-x 2 root root     4096 Май 27 11:32 cron.daily
drwxr-xr-x 2 root root     4096 Май 24 13:16 cron.hourly
drwxr-xr-x 2 root root     4096 Май 27 11:32 cron.monthly
-rw-r--r-- 1 root root      724 Май 13 03:13 crontab
...
drwxr-xr-x 2 root root     4096 Май 24 13:16 terminfo
-rw-r--r-- 1 root root       14 Май 26 12:30 timezone
-rw-r--r-- 1 root root      645 Мар 25 13:05 ts.conf
-rw-r--r-- 1 root root     1260 Май 30  2008 ucf.conf
drwxr-xr-x 4 root root     4096 Май 24 13:16 udev
drwxr-xr-x 2 root root     4096 Май 24 13:16 vim
-rw-r--r-- 1 root root     4221 Сен  8  2008 wgetrc
drwxr-xr-x 8 root root     4096 Май 25 12:24 X11
drwxr-xr-x 6 root root     4096 Ноя 25  2008 xdg
drwxr-xr-x 2 root root     4096 Ноя 25  2008 xml
16:21:37
#dpkg -S /etc/syslog-ng/
syslog-ng: /etc/syslog-ng
16:21:47
#apt-get install monit
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Следующие пакеты устанавливались автоматически и больше не требуются:
  update-inetd portmap
Для их удаления используйте 'apt-get autoremove'.
НОВЫЕ пакеты, которые будут установлены:
  monit
обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 267kБ архивов.
...
Выбор ранее не выбранного пакета monit.
(Чтение базы данных ... на данный момент установлено 46116 файлов и каталогов.)
Распаковывается пакет monit (из файла .../monit_1%3a4.10.1-4_i386.deb)...
Обрабатываются триггеры для man-db ...
Настраивается пакет monit (1:4.10.1-4) ...
Starting daemon monitor: monit won't be started/stopped
        unless it it's configured
        please configure monit and then edit /etc/default/monit
        and set the "startup" variable to 1 in order to allow
        monit to start
16:23:25
#vi /etc/moniy/monirc
16:24:59
#~ +q436f+q6b75+q6b64+q6b72+q6b6c+q2332+q2334+q2569+q2a37+q6b31
итого 12
-rw------- 1 root root 8908 Авг 25  2008 monitrc
16:25:18
#vi /etc/monit/monitrc
--- /tmp/l3-saved-24911.12648.2866	2009-05-27 16:25:46.000000000 +0300
+++ /etc/monit/monitrc	2009-05-27 16:30:21.000000000 +0300
@@ -17,7 +17,7 @@
 ## Start monit in the background (run as a daemon) and check services at 
 ## 2-minute intervals.
 #
-# set daemon  120
+ set daemon  30
 #
 #
 ## Set syslog logging with the 'daemon' facility. If the FACILITY option is
16:30:21
#vi /etc/monit/monitrc
--- /tmp/l3-saved-24911.4024.11895	2009-05-27 16:30:22.000000000 +0300
+++ /etc/monit/monitrc	2009-05-27 16:38:44.000000000 +0300
@@ -133,9 +133,9 @@
 ## statement. This service depends on another service (apache_bin) which
 ## is defined above.
 #    
-#  check process apache with pidfile /usr/local/apache/logs/httpd.pid
-#    start program = "/etc/init.d/httpd start"
-#    stop program  = "/etc/init.d/httpd stop"
+  check process cron with pidfile /var/run/crond.pid
+    start program = "/etc/init.d/cron start"
+    stop program  = "/etc/init.d/cron stop"
 #    if cpu > 60% for 2 cycles then alert
 #    if cpu > 80% for 5 cycles then restart
 #    if totalmem > 200.0 MB for 5 cycles then restart
/dev/pts/1
16:32:36
#ls /etc/run
ls: невозможно получить доступ к /etc/run: Нет такого файла или каталога
16:32:56
#vi /etc/default/monit
--- /tmp/l3-saved-26140.7200.9730	2009-05-27 16:35:34.000000000 +0300
+++ /etc/default/monit	2009-05-27 16:35:56.000000000 +0300
@@ -4,7 +4,7 @@
 # Fredrik Steen <stone@debian.org>
 
 # You must set this variable to for monit to start
-startup=0
+startup=1
 
 # To change the intervals which monit should run uncomment
 # and change this variable.
16:35:56
#cat /var/run/crond.pid
2768
16:37:17
#ls /etc/init.d/
anacron                dbus             keyboard-setup         mountnfs.sh       rmnologin             udev
atd                    exim4            keymap.sh              mountoverflowtmp  rsyslog               udev-mtab
aumix                  gdm              killprocs              mtab.sh           screen-cleanup        umountfs
bootlogd               glibc.sh         lpd                    networking        sendsigs              umountnfs.sh
bootmisc.sh            hal              module-init-tools      portmap           single                umountroot
checkfs.sh             halt             monit                  procps            skeleton              urandom
checkroot.sh           hostname.sh      mountall-bootclean.sh  rc                ssh                   x11-common
console-cyrillic       hwclockfirst.sh  mountall.sh            rc.local          stop-bootlogd
console-screen.kbd.sh  hwclock.sh       mountdevsubfs.sh       rcS               stop-bootlogd-single
console-setup          ifupdown         mountkernfs.sh         README            sudo
cron                   ifupdown-clean   mountnfs-bootclean.sh  reboot            syslog-ng
16:37:39
#/etc/init.d/monit restart
Stopping daemon monitor: monit.
Starting daemon monitor: monit.
16:38:32
#ps -aux
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   2128   712 ?        Ss   09:29   0:01 init [2]
root         2  0.0  0.0      0     0 ?        S<   09:29   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S<   09:29   0:00 [migration/0]
root         4  0.0  0.0      0     0 ?        S<   09:29   0:00 [ksoftirqd/0]
root         5  0.0  0.0      0     0 ?        S<   09:29   0:00 [watchdog/0]
root         6  0.0  0.0      0     0 ?        S<   09:29   0:00 [migration/1]
root         7  0.0  0.0      0     0 ?        S<   09:29   0:00 [ksoftirqd/1]
root         8  0.0  0.0      0     0 ?        S<   09:29   0:00 [watchdog/1]
...
root     25521  0.0  0.0   3048   748 ?        Ss   15:21   0:00 /usr/sbin/syslog-ng -p /var/run/syslog-ng.pid
user     25567  0.0  0.3  25824 11872 ?        S    15:24   0:00 /usr/lib/notification-daemon/notification-daemon
user     25570  0.0  0.0   7768  2580 ?        S    15:24   0:00 /usr/lib/libgconf2-4/gconfd-2
user     25819  0.1  1.4 136408 43712 ?        Sl   16:14   0:02 /usr/lib/iceweasel/firefox-bin -a iceweasel
root     26045  0.0  0.0   5880  1512 pts/1    S+   16:32   0:00 su
root     26053  0.0  0.0   4772   560 pts/1    S+   16:32   0:00 script -f -c bash -q /root/.lilalo//168281921542628770-
root     26139  0.0  0.0   4776   376 pts/1    R+   16:32   0:00 script -f -c bash -q /root/.lilalo//168281921542628770-
root     26140  0.0  0.0   7224  3012 pts/8    Ss   16:32   0:00 bash
root     26314  0.0  0.0   4584  1020 ?        S    16:38   0:00 /usr/sbin/monit -d 180 -c /etc/monit/monitrc -s /var/li
root     26331  0.0  0.0   5472  1064 pts/8    R+   16:38   0:00 ps -aux
/dev/pts/4
16:38:44
#vi /etc/monit/monitrc
/dev/pts/1
16:38:58
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root      2768  0.0  0.0   5212  1016 ?        Ss   09:29   0:00 /usr/sbin/cron
root     26340  0.0  0.0   4908   756 pts/8    R+   16:39   0:00 grep cron
16:39:09
#kill 2768

16:39:27
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26356  0.0  0.0   1772   176 pts/8    R+   16:39   0:00 grep cron
16:39:29
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26365  0.0  0.0   4908   772 pts/8    S+   16:39   0:00 grep cron
16:39:47
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26376  0.0  0.0   4908   772 pts/8    S+   16:39   0:00 grep cron
16:39:50
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26385  0.0  0.0   4908   760 pts/8    R+   16:39   0:00 grep cron
16:39:51
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26394  0.0  0.0   4908   756 pts/8    R+   16:39   0:00 grep cron
16:39:52
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26403  0.0  0.0   4908   772 pts/8    S+   16:39   0:00 grep cron
16:39:54
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26412  0.0  0.0   4908   760 pts/8    R+   16:40   0:00 grep cron
16:40:00
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
16:40:01
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26430  0.0  0.0   4908   768 pts/8    S+   16:40   0:00 grep cron
16:40:03
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26439  0.0  0.0   4908   756 pts/8    R+   16:40   0:00 grep cron
16:40:04
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26448  0.0  0.0   4908   768 pts/8    S+   16:40   0:00 grep cron
16:40:05
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26457  0.0  0.0   4908   772 pts/8    S+   16:40   0:00 grep cron
16:40:06
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
16:40:21
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26475  0.0  0.0   4908   768 pts/8    S+   16:40   0:00 grep cron
16:40:23
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26484  0.0  0.0   4908   768 pts/8    S+   16:40   0:00 grep cron
16:40:24
#ps -aux | grep monit
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
user     23972  0.0  0.1  10008  3700 ?        S    14:05   0:00 /usr/lib/gvfs/gvfs-hal-volume-monitor
root     26314  0.0  0.0   4584  1028 ?        S    16:38   0:00 /usr/sbin/monit -d 180 -c /etc/monit/monitrc -s /var/lib/monit/monit.state
root     26498  0.0  0.0   7820  2768 pts/5    S+   16:40   0:00 /usr/bin/vi /etc/monit/monitrc
root     26502  0.0  0.0   4912   776 pts/8    S+   16:41   0:00 grep monit
16:41:53
#ps -aux | grep cron
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
root     26511  0.0  0.0   4908   760 pts/8    R+   16:41   0:00 grep cron
16:41:56
#ps -aux | grep monit
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html
user     23972  0.0  0.1  10008  3700 ?        S    14:05   0:00 /usr/lib/gvfs/gvfs-hal-volume-monitor
root     26314  0.0  0.0   4584  1028 ?        S    16:38   0:00 /usr/sbin/monit -d 180 -c /etc/monit/monitrc -s /var/lib/monit/monit.state
root     26529  0.0  0.0   4912   780 pts/8    S+   16:42   0:00 grep monit
/dev/pts/4
16:47:07
#kill 26585

/dev/pts/1
16:48:06
#whatch 'ps -aux | grep cron'
bash: whatch: команда не найдена
16:48:51
#watch 'ps -aux | grep cron'

/dev/pts/4
16:49:25
#/tail -f /var/log/messages
bash: /tail: Нет такого файла или каталога
16:50:24
#tail -f /var/log/messages
May 27 13:45:21 linux1 rsyslogd: -- MARK --
May 27 14:05:21 linux1 rsyslogd: -- MARK --
May 27 14:25:21 linux1 rsyslogd: -- MARK --
May 27 14:45:21 linux1 rsyslogd: -- MARK --
May 27 15:05:21 linux1 rsyslogd: -- MARK --
May 27 15:21:41 linux1 kernel: Kernel logging (proc) stopped.
May 27 15:21:42 linux1 syslog-ng[25521]: syslog-ng starting up; version='2.0.9'
May 27 15:22:29 linux1 logger: zabi_logi_nelzya
May 27 12:42:28 linux1 -- MARK --
May 27 13:02:28 linux1 -- MARK --
^C
прошло 44 минуты
/dev/pts/10
17:34:52
#ssh quiz@10.0.36.100
ssh: connect to host 10.0.36.100 port 22: No route to host
17:35:19
#ssh quiz@10.0.35.100
quiz@10.0.35.100's password:
+----------------------------------
| ТЕМЫ ПЕРВОГО ДНЯ
| man, shell, vi, screen
| Общее количество вопросов: 40
|
| Вам будут заданы вопросы и показаны варианты ответа на них.
| После каждого вопроса вы должны вводить номер варианта ответа, который вы считаете наиболее правильным.
| После ввода номера нужно нажимать <ENTER>.
| Возвращаться назад и менять ответ, после того как вы нажали <ENTER>, нельзя.
...
У вас в текущем каталоге есть файл, который называется -rf , и вы хотите его стереть.
Вы даёте команду rm -rf , но в ответ получаете какие-то сообщения об ошибках.
Как быть?
1 Такого быть не может, файл с именем -rf создать нельзя
2 Такого быть не может, ошибок никаких быть не должно, файл удалится без вопросов
3 Надо перелогиниться под root'ом, использовать su или sudo
4 Программа удаляет все файлы на диске и сообщает, что какие-то файлы удалить она не может. Но это уже всё равно
5 Всё правильно, надо было просто вызвать так: rm -- -rf
6 Всё правильно, надо было просто вызвать так: rm ./-rf
Connection to 10.0.35.100 closed.
17:38:26
#ssh quiz@10.0.35.100
3
Вы не любите vi несмотря ни на что. Вы хотите его не использовать,
и прекрасно обходитесь редактором nano. Тем не менее vi подстерегает вас в самых неожиданных местах.
Например, вы запустили vipw чтобы отредактировать файл паролей, а там опять этот редактор!
Как сделать так чтобы вместо vi в таких случаях вызывался nano?
1 Никак. Команда называется vipw, потому вызывается и редактор vi
2 вызвать nanopw
3 EDITOR=nano
4 set EDITOR=nano
5 export EDITOR=nano
...
но вместо желаемого подключения получаете какой-то странный текст.
Что это?
1 Это список активных сеансов screen, их больше одного, поэтому при запуске screen нужно указать, к какому подключаться
2 Это вызвался режим тонкой настройки screen
3 screen должен быть запущен в multiuser-режиме (multiuser on)
4 Эта сборка screen не поддерживает несколько одновременных подключений
5 Для этого необходимо выполнять screen в режиме ядра
3
Your score: 26
Connection to 10.0.35.100 closed.

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

/dev/pts/1
09:33:51
#ls -1i /
3342337 bin
 557057 boot
2654209 dev
5931009 etc
 262145 home
  49153 initrd.img
 245761 lib
     11 lost+found
7356417 media
5029889 mnt
6160385 opt
1130497 proc
6127617 root
 180225 sbin
4964353 selinux
8126465 srv
6914049 sys
3915777 tmp
 868353 usr
8994817 var
  49154 vmlinuz
/dev/pts/5
09:34:28
#ssh root@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 09:51:27 2009 from linux13.unix.nt
прошло 17 минут
09:51:28
#screen -x
прошло 10 минут
/dev/pts/1
10:01:42
#mkdir blackroom

10:06:00
#echo trtrtr > blackroom/secret

10:06:38
#chmod 754 blackroom/

10:07:02
#su user

10:07:36
$ls blackroom/
ls: невозможно получить доступ к blackroom/secret: Отказано в доступе
secret
10:08:03
$alias
alias ls='ls --color=auto'
10:08:25
$unalias ls

10:08:50
$ls -l blackkroom/
ls: невозможно получить доступ к blackkroom/: Нет такого файла или каталога
10:09:19
$cat darkroom/secret
cat: darkroom/secret: Нет такого файла или каталога
10:09:33
$exit
exit
10:09:48
#chmod 751 blackroom/

10:10:00
#su user

10:10:16
$cat darkroom/secret
cat: darkroom/secret: Нет такого файла или каталога
10:10:44
$exit
exit
10:10:49
#ls -ld /tmp
drwxrwxrwt 7 root root 4096 Май 28 10:10 /tmp

Файлы

  • /etc/resolv.conf
  • /usr/local/bin/syslog2jabber
  • /var/run/crond.pid
  • darkroom/secret
  • /etc/resolv.conf
    >
    nameserver 10.0.35.1
    domain unix.nt
    
    /usr/local/bin/syslog2jabber
    >
    /var/run/crond.pid
    >
    2768
    
    darkroom/secret
    >
    cat: darkroom/secret: Нет такого файла или каталога
    

    Статистика

    Время первой команды журнала14:37:04 2009- 5-27
    Время последней команды журнала10:10:49 2009- 5-28
    Количество командных строк в журнале101
    Процент команд с ненулевым кодом завершения, %17.82
    Процент синтаксически неверно набранных команд, % 3.96
    Суммарное время работы с терминалом *, час 2.90
    Количество командных строк в единицу времени, команда/мин 0.58
    Частота использования команд
    grep27|==================| 18.75%
    ps20|=============| 13.89%
    vi10|======| 6.94%
    cat9|======| 6.25%
    ls8|=====| 5.56%
    ~4|==| 2.78%
    diff4|==| 2.78%
    less4|==| 2.78%
    ssh4|==| 2.78%
    dpkg3|==| 2.08%
    '3|==| 2.08%
    sort3|==| 2.08%
    chmod3|==| 2.08%
    apt-get3|==| 2.08%
    syslog2jabber3|==| 2.08%
    l22|=| 1.39%
    echo2|=| 1.39%
    kill2|=| 1.39%
    exit2|=| 1.39%
    tr2|=| 1.39%
    su2|=| 1.39%
    }1|| 0.69%
    mkdir1|| 0.69%
    screen1|| 0.69%
    /tail1|| 0.69%
    secret1|| 0.69%
    cp1|| 0.69%
    2531|| 0.69%
    31|| 0.69%
    logger1|| 0.69%
    watch1|| 0.69%
    l11|| 0.69%
    find1|| 0.69%
    alias1|| 0.69%
    2311|| 0.69%
    /etc/init.d/monit1|| 0.69%
    May1|| 0.69%
    1561|| 0.69%
    messages1|| 0.69%
    unalias1|| 0.69%
    tail1|| 0.69%
    owner(root)1|| 0.69%
    whatch1|| 0.69%
    which1|| 0.69%
    les1|| 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$