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

Содержание

Журнал

Среда (09/23/09)

/dev/ttyp3
19:00:38
#vim /etc/crontab
--- /tmp/l3-saved-1143.17432.27058	2009-09-23 20:00:40.000000000 +0300
+++ /etc/crontab	2009-09-23 20:01:11.000000000 +0300
@@ -25,3 +25,4 @@
 # UTC time.  See adjkerntz(8) for details.
 1,31	0-5	*	*	*	root	adjkerntz -a
 */10     *      *       *       *       root    ntpdate ntp.psn.ru
+* * * * * root logger -p emerg ETC_CRONTAB
19:01:11
#date
Wed Sep 23 20:01:13 EEST 2009
You have new mail in /var/mail/root
19:01:13
#date
Wed Sep 23 20:01:22 EEST 2009
19:01:30
#vim /etc/crontab
--- /tmp/l3-saved-1143.27457.15581	2009-09-23 20:01:39.000000000 +0300
+++ /etc/crontab	2009-09-23 20:01:43.000000000 +0300
@@ -25,4 +25,4 @@
 # UTC time.  See adjkerntz(8) for details.
 1,31	0-5	*	*	*	root	adjkerntz -a
 */10     *      *       *       *       root    ntpdate ntp.psn.ru
-* * * * * root logger -p emerg ETC_CRONTAB
+#* * * * * root logger -p emerg ETC_CRONTAB
19:02:31
#crontab -e
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:q!
crontab: no changes made to crontab
19:03:33
#vim /etc/crontab
19:03:41
#$FreeBSD: src/etc/crontab,v 1.32 2002/11/22 16:13:39 tom Exp $
~
~
~
~
~
~
~
~
~
~
...
~
~
~
~
~
~
~
~
/tmp/crontab.kxJGLAedoS: 1 lines, 39 characters.
crontab: installing new crontab
19:03:59
#date
Wed Sep 23 20:04:00 EEST 2009
19:04:05
#grep -r ROOT /var/spool/

19:04:19
#grep -r ROOT /var/cron/
/var/cron/tabs/root:* * * * * logger -p emerg ROOT_CRONTAB
19:04:28
#vim /var/cron/tabs/root
19:04:45
#(Cron version -- $FreeBSD: src/usr.sbin/cron/crontab/crontab.c,v 1.22.2.1

19:04:45
#crontab -e
~
~
~
~
~
~
~
~
~
~
...
~
~
~
~
~
~
~
~
/tmp/crontab.XgCpN95NDj: 1 lines, 40 characters.
crontab: installing new crontab
19:04:53
#su - user
Removing stale pidfile
19:04:58
$EDITOR=vim crontab -e
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
"crontab.cDCxNpAwHM" 1 line, 36 characters written
crontab: installing new crontab
19:05:33
$crontab -l
* * * * * logger -p emerg CRON_USER
19:05:42
$crontab -h
crontab: illegal option -- h
crontab: usage error: unrecognized option
usage: crontab [-u user] file
       crontab [-u user] { -e | -l | -r }
19:05:54
$date
ÓÒÅÄÁ, 23 ÓÅÎÔÑÂÒÑ 2009 Ç. 20:05:57 (EEST)
19:05:57
$LANG=C

19:06:01
$exit
exit
19:06:13
#vim /etc/cron.deny
--- /dev/null	2009-09-23 20:06:34.000000000 +0300
+++ /etc/cron.deny	2009-09-23 20:06:34.000000000 +0300
@@ -0,0 +1 @@
+user
19:06:34
#date
Wed Sep 23 20:06:54 EEST 2009
19:06:54
#date
Wed Sep 23 20:07:11 EEST 2009
19:07:28
#date
Wed Sep 23 20:07:30 EEST 2009
19:07:30
#crontab -u user -l
* * * * * logger -p emerg CRON_USER
19:08:02
#crontab -u user -r
remove crontab for user? y
19:08:06
#crontab -u user -l
crontab: no crontab for user
19:08:07
#su - user
Removing stale pidfile
19:08:12
$EDITOR=vim crontab -e
~
~
~
~
~
~
~
~
~
~
...
~
~
~
~
~
~
~
~
~
crontab: no changes made to crontab
19:08:21
$EDITOR=vim crontab -e
~
~
~
~
~
~
~
~
~
~
...
~
~
~
~
~
~
~
~
~
crontab: no changes made to crontab
19:08:25
$id
uid=1001(user) gid=0(wheel) groups=0(wheel)
19:08:27
$cat /etc/cron.deny
user
19:08:41
$crontab -e
~
~
~
~
~
~
~
~
~
~
...
~
~
~
~
~
~
~
~
/tmp/crontab.2bBDizUGVv: 1 ÓÔÒÏË, 37 ÓÉÍ×ÏÌÏ×.
crontab: installing new crontab
19:09:14
$crontab -l
* * * * * logger -p emerg CRON_USER2
19:09:19
$man cron.deny
19:09:28
$man cron
19:09:38
$man -a cron
19:09:45
$man -a crontab
19:10:15
$man -a crontab
19:10:28
$exit
exit
You have new mail in /var/mail/root
19:10:30
#mv /etc/cron.deny /var/cron/

19:10:45
#mv /var/cron/cron.deny /var/cron/deny

19:11:01
#crontab -u user -r
crontab: you (user) are not allowed to use this program
19:11:06
#vim /var/cron/tabs/user
--- /tmp/l3-saved-1143.18871.5818	2009-09-23 20:11:25.000000000 +0300
+++ /var/cron/tabs/user	2009-09-23 20:11:31.000000000 +0300
@@ -1,4 +1,4 @@
 # DO NOT EDIT THIS FILE - edit the master and reinstall.
 # (/tmp/crontab.2bBDizUGVv installed on Wed Sep 23 20:09:14 2009)
 # (Cron version -- $FreeBSD: src/usr.sbin/cron/crontab/crontab.c,v 1.22.2.1 2006/09/03 17:32:32 brooks Exp $)
-* * * * * logger -p emerg CRON_USER2
+#* * * * * logger -p emerg CRON_USER2
19:11:34
#vim /var/cron/allow
--- /dev/null	2009-09-23 20:11:45.000000000 +0300
+++ /var/cron/allow	2009-09-23 20:11:50.000000000 +0300
@@ -0,0 +1 @@
+user
19:11:50
#crontab -u user -r
remove crontab for user? y
19:13:31
#crontab -u user -l
crontab: no crontab for user
19:13:34
#vim /var/cron/tabs/user
19:13:45
#~
crontab: you (root) are not allowed to use this program
19:13:58
#crontab -l
crontab: you (root) are not allowed to use this program
19:14:06
#sudo vim /var/cron/allow
19:16:43
#crontab -l
#* * * * * logger -p emerg ROOT_CRONTAB
19:16:46
#crontab -l -u user
crontab: no crontab for user
19:16:51
#crontab -e -u user
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:q!
crontab: no changes made to crontab
19:17:02
#vim /var/cron/tabs/user
19:17:13
#~

19:17:14
#ps aux | grep cron
root    947  0.0  0.2  1444   996  ??  Is    5:41PM   0:00.05 /usr/sbin/cron -s
19:17:20
#kill -1 947

19:17:26
#ps aux | grep cron
root    947  0.0  0.2  1444   996  ??  Ss    5:41PM   0:00.05 /usr/sbin/cron -s
root   4479  0.0  0.2  1600  1028  p4  S+    8:17PM   0:00.00 grep cron
19:17:38
#grep syslog /etc/services
syslog          514/udp
You have new mail in /var/mail/root
прошло 16 минут
19:34:13
#vim /etc/syslog.conf
19:39:53
#Spaces ARE valid field separators in this file. However,
No manual entry for syslog.com
19:40:01
#man syslog.conf
19:40:59
#vim /etc/syslog.conf
19:45:56
#vim /etc/newsyslog.conf
19:51:16
#vim /etc/newsyslog.conf
19:51:30
#:q
NEWSYSLOG.CONF(5)         FreeBSD File Formats Manual        NEWSYSLOG.CONF(5)
NAME
     newsyslog.conf -- newsyslog(8) configuration file
DESCRIPTION
     The newsyslog.conf file is used to set log file rotation configuration
     for the newsyslog(8) utility.  Configuration may designate that logs are
     rotated based on size, last rotation time, or time of day.  The
     newsyslog.conf file can also be used to designate secure permissions to
     log files at rotation time.  During initialization, newsyslog(8) reads a
     configuration file, normally /etc/newsyslog.conf, to determine which logs
...
                           `L' or `l' to specify the last day of the month.
             Some examples:
                   $D0     rotate every night at midnight (same as @T00)
                   $D23    rotate every day at 23:00 (same as @T23)
                   $W0D23  rotate every week on Sunday at 23:00
                   $W5D16  rotate every week on Friday at 16:00
                   $M1D0   rotate at the first day of every month at midnight
                           (i.e., the start of the day; same as @01T00)
                   $M5D6   rotate on every 5th day of month at 6:00 (same as
                           @05T06)
19:51:41
#vim /etc/newsyslog.conf
19:52:29
# 8 *.err;kern.warning;auth.notice;mail.crit /dev/console
 26 #HostKey /etc/ssh/ssh_host_key
 27 # HostKeys for protocol version 2
 28 #HostKey /etc/ssh/ssh_host_dsa_key
 29
 30 # Lifetime and size of ephemeral version 1 server key
 31 #KeyRegenerationInterval 1h
 32 #ServerKeyBits 768
 33
 34 # Logging
 35 # obsoletes QuietMode and FascistLogging
 36 #SyslogFacility AUTH
19:53:32
#Spaces ARE valid field separators in this file. However,
Sep 16 18:14:27 fbsd1 sshd[1532]: Accepted keyboard-interactive/pam for root fro
m 192.168.16.22 port 54862 ssh2
Sep 16 18:30:34 fbsd1 sshd[9062]: Invalid user admin from 10.0.64.112
Sep 16 18:30:51 fbsd1 sshd[9084]: Accepted keyboard-interactive/pam for root fro
m 10.0.64.112 port 1413 ssh2
Sep 16 18:32:29 fbsd1 sshd[10306]: Accepted keyboard-interactive/pam for user200
 from 127.0.0.1 port 56258 ssh2
Mar 15 15:05:54 fbsdvm newsyslog[529]: logfile first created
Mar 15 15:06:01 fbsdvm login: login on ttyv0 as root
Mar 15 15:06:01 fbsdvm login: ROOT LOGIN (root) ON ttyv0
...
Sep 23 14:41:03 fbsd1 sshd[929]: Server listening on 0.0.0.0 port 22.
Sep 23 14:43:29 fbsd1 sshd[1036]: Accepted publickey for root from 192.168.16.254 port 38013 ssh2
Sep 23 18:22:00 fbsd1 sshd[1346]: reverse mapping checking getaddrinfo for fbsd23.net.nt [192.168.16.23] failed - POSSIBLE BREAK-IN ATTEMPT!
Sep 23 18:22:10 fbsd1 sshd[1346]: error: PAM: authentication error for user from 192.168.16.23
Sep 23 18:22:14 fbsd1 sshd[1346]: Accepted keyboard-interactive/pam for user from 192.168.16.23 port 57502 ssh2
Sep 23 18:39:53 fbsd1 su: BAD SU user to root on /dev/ttyp6
Sep 23 18:39:56 fbsd1 sshd[1519]: reverse mapping checking getaddrinfo for fbsd22.net.nt [192.168.16.22] failed - POSSIBLE BREAK-IN ATTEMPT!
Sep 23 18:40:00 fbsd1 sshd[1519]: Accepted keyboard-interactive/pam for root from 192.168.16.22 port 58098 ssh2
Sep 23 18:40:02 fbsd1 sshd[1597]: reverse mapping checking getaddrinfo for fbsd23.net.nt [192.168.16.23] failed - POSSIBLE BREAK-IN ATTEMPT!
Sep 23 18:40:06 fbsd1 sshd[1597]: Accepted keyboard-interactive/pam for root from 192.168.16.23 port 63964 ssh2
19:54:11
#vim /etc/crontab
19:54:37
#$FreeBSD: src/etc/crontab,v 1.32 2002/11/22 16:13:39 tom Exp $
Hello world
ttt
rr
rr
r
19:56:14
#logger -p emerg -t MEGAADMINISTRATOR-ROOT
You have new mail in /var/mail/root

Файлы

  • /etc/cron.deny
  • /etc/cron.deny
    >
    user
    

    Статистика

    Время первой команды журнала19:00:38 2009- 9-23
    Время последней команды журнала19:56:14 2009- 9-23
    Количество командных строк в журнале73
    Процент команд с ненулевым кодом завершения, %21.92
    Процент синтаксически неверно набранных команд, % 0.00
    Суммарное время работы с терминалом *, час 0.93
    Количество командных строк в единицу времени, команда/мин 1.31
    Частота использования команд
    crontab16|====================| 20.25%
    vim16|====================| 20.25%
    date7|========| 8.86%
    man6|=======| 7.59%
    grep5|======| 6.33%
    EDITOR=vim3|===| 3.80%
    ps2|==| 2.53%
    $FreeBSD:2|==| 2.53%
    ~2|==| 2.53%
    Spaces2|==| 2.53%
    mv2|==| 2.53%
    exit2|==| 2.53%
    su2|==| 2.53%
    sudo1|=| 1.27%
    81|=| 1.27%
    auth.notice1|=| 1.27%
    kern.warning1|=| 1.27%
    mail.crit1|=| 1.27%
    :q1|=| 1.27%
    (Cron1|=| 1.27%
    logger1|=| 1.27%
    id1|=| 1.27%
    cat1|=| 1.27%
    kill1|=| 1.27%
    LANG=C1|=| 1.27%
    ____
    *) Интервалы неактивности длительностью 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$