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

Содержание

Журнал

Вторник (06/26/12)

/dev/pts/0
19:02:07
#cat tec/passwd
cat: tec/passwd: Нет такого файла или каталога
19:02:46
#cat etc/passwd
cat: etc/passwd: Нет такого файла или каталога

Вторник (07/03/12)

/dev/pts/0
18:03:26
#ssh 192.168.7.10
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~# l3script
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]# sdsd
l3script: sdsd: команда не найдена
[root@debian0:~]#
прошла 61 минута
/dev/pts/2
19:04:37
#echo$$
l3script: echo714: команда не найдена
прошло 37 минут
19:42:36
#echo $$
714
19:42:40
#echo $-
himBH
19:43:44
#echo $- -x
himBH -x

Четверг (07/12/12)

/dev/pts/0
18:14:21
#whereis getty
getty: /sbin/getty /usr/share/man/man8/getty.8.gz
18:18:47
#grep getty etc/inittab
grep: etc/inittab: Нет такого файла или каталога
18:21:29
#grep getty /etc/inittab
# /sbin/getty invocations for the runlevels.
# so if you want to add more getty's go ahead but skip tty7 if you run X.
1:2345:respawn:/sbin/getty 38400 tty1
2:23:respawn:/sbin/getty 38400 tty2
3:23:respawn:/sbin/getty 38400 tty3
4:23:respawn:/sbin/getty 38400 tty4
5:23:respawn:/sbin/getty 38400 tty5
6:23:respawn:/sbin/getty 38400 tty6
# Example how to put a getty on a serial line (for a terminal)
#T0:23:respawn:/sbin/getty -L ttyS0 9600 vt100
#T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100
# Example how to put a getty on a modem line.
#T3:23:respawn:/sbin/mgetty -x0 -s 57600 ttyS3
1h:2345:respawn:/sbin/getty 38400 hvc0
18:21:52
#ls /etc/
adduser.conf            cron.hourly     environment  hosts           issue         login.defs      mtab           perl       rc6.d         security     sysctl.d
alternatives            cron.monthly    fstab        hosts.allow     issue.net     logrotate.conf  nanorc         profile    rc.local      services     terminfo
apt                     crontab         gai.conf     hosts.deny      ld.so.cache   logrotate.d     network        profile.d  rcS.d         shadow       timezone
bash.bashrc             cron.weekly     groff        init.d          ld.so.conf    lsb-base        networks       protocols  resolv.conf   shadow-      udev
bash_completion         debconf.conf    group        inittab         ld.so.conf.d  manpath.config  nsswitch.conf  rc0.d      rmt           shells       ufw
bash_completion.d       debian_version  group-       inputrc         lilalo        mke2fs.conf     opt            rc1.d      rpc           skel         vim
bindresvport.blacklist  default         gshadow      insserv         locale.alias  modprobe.d      pam.conf       rc2.d      rsyslog.conf  ssh          wgetrc
calendar                deluser.conf    gshadow-     insserv.conf    locale.gen    modules         pam.d          rc3.d      rsyslog.d     sudoers
cron.d                  dhcp            host.conf    insserv.conf.d  localtime     motd            passwd         rc4.d      screenrc      sudoers.d
cron.daily              dpkg            hostname     iproute2        logcheck      motd.tail       passwd-        rc5.d      securetty     sysctl.conf
18:22:52
#heaD ETC/INITTAB
l3script: heaD: команда не найдена
18:23:38
#head -30 /etc/inittab
# /etc/inittab: init(8) configuration.
# $Id: inittab,v 1.91 2002/01/25 13:35:21 miquels Exp $
# The default runlevel.
id:2:initdefault:
# Boot-time system configuration/initialization script.
# This is run first except when booting in emergency (-b) mode.
si::sysinit:/etc/init.d/rcS
# What to do in single-user mode.
~~:S:wait:/sbin/sulogin
# /etc/init.d executes the S and K scripts upon change
...
# Runlevel 6 is reboot.
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l4:4:wait:/etc/init.d/rc 4
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# Normally not reached, but fallthrough in case of emergency.
z6:6:respawn:/sbin/sulogin
18:24:03
#ls-l /etc/rc0.d/
l3script: ls-l: команда не найдена
18:26:04
#ls -l /etc/rc0.d/
итого 4
lrwxrwxrwx 1 root root  18 Июн 11 10:02 K01sendsigs -> ../init.d/sendsigs
lrwxrwxrwx 1 root root  17 Июн 11 10:02 K01urandom -> ../init.d/urandom
lrwxrwxrwx 1 root root  17 Июн 11 10:03 K02rsyslog -> ../init.d/rsyslog
lrwxrwxrwx 1 root root  20 Июн 11 10:03 K03hwclock.sh -> ../init.d/hwclock.sh
lrwxrwxrwx 1 root root  22 Июн 11 10:03 K03umountnfs.sh -> ../init.d/umountnfs.sh
lrwxrwxrwx 1 root root  20 Июн 11 10:03 K04networking -> ../init.d/networking
lrwxrwxrwx 1 root root  18 Июн 11 10:03 K05ifupdown -> ../init.d/ifupdown
lrwxrwxrwx 1 root root  18 Июн 11 10:03 K06umountfs -> ../init.d/umountfs
lrwxrwxrwx 1 root root  20 Июн 11 10:03 K07umountroot -> ../init.d/umountroot
lrwxrwxrwx 1 root root  14 Июн 11 10:03 K08halt -> ../init.d/halt
-rw-r--r-- 1 root root 353 Мар 24 20:09 README
18:26:11
#ls -l /etc/rc1.d/
итого 4
lrwxrwxrwx 1 root root  17 Июн 11 10:03 K02rsyslog -> ../init.d/rsyslog
-rw-r--r-- 1 root root 369 Мар 24 20:09 README
lrwxrwxrwx 1 root root  18 Июн 11 10:02 S01bootlogs -> ../init.d/bootlogs
lrwxrwxrwx 1 root root  19 Июн 11 10:02 S01killprocs -> ../init.d/killprocs
lrwxrwxrwx 1 root root  16 Июн 11 10:02 S02single -> ../init.d/single
18:26:20
#ls -l /etc/rc2.d/
итого 4
-rw-r--r-- 1 root root 677 Мар 27 01:50 README
lrwxrwxrwx 1 root root  18 Июн 11 10:02 S01bootlogs -> ../init.d/bootlogs
lrwxrwxrwx 1 root root  17 Июн 11 10:03 S01rsyslog -> ../init.d/rsyslog
lrwxrwxrwx 1 root root  14 Июн 11 17:52 S01sudo -> ../init.d/sudo
lrwxrwxrwx 1 root root  14 Июн 11 10:03 S02cron -> ../init.d/cron
lrwxrwxrwx 1 root root  13 Июн 11 12:57 S02ssh -> ../init.d/ssh
lrwxrwxrwx 1 root root  18 Июн 11 10:03 S03rc.local -> ../init.d/rc.local
lrwxrwxrwx 1 root root  19 Июн 11 10:03 S03rmnologin -> ../init.d/rmnologin
lrwxrwxrwx 1 root root  23 Июн 11 10:03 S03stop-bootlogd -> ../init.d/stop-bootlogd
18:26:28
#grep getty
^C
18:28:53
#^C

18:28:53
#grep getty
^C
18:29:16
#whereis login
login: /bin/login /etc/login.defs /usr/share/man/man1/login.1.gz /usr/share/man/man3/login.3.gz
18:37:06
#whereis psswd
psswd:
18:37:54
#grep root /etc/passwd
root:x:0:0:root:/root:/bin/bash
18:41:21
#grep root /etc/passwd /etc/shadow
/etc/passwd:root:x:0:0:root:/root:/bin/bash
/etc/shadow:root:$6$4PSCFZEO$y.5fPXEbAokZKAweL1gniUpZcdbpSUQNJIDJ/uFi5Vmt12Fyo2LQkg9cFxweI3BkLpBtlR.0r.D.RbR7R5BWh.:15502:0:99999:7:::
18:41:36
#ls -l /var/log/btmp
-rw-rw---- 1 root utmp 768 Июн 11 12:37 /var/log/btmp
18:48:28
#less -l /var/log/btmp
18:48:43
#last b /var/log/btmp
wtmp begins Mon Jun 11 12:26:40 2012
18:49:13
#who
root     pts/0        2012-07-12 16:11 (195.238.93.36)
18:49:55
#lastfb /var/log/btmp
l3script: lastfb: команда не найдена
18:50:15
#last f /var/log/btmp
wtmp begins Mon Jun 11 12:26:40 2012
18:50:21
#last
root     pts/1        195.238.93.36    Thu Jul 12 16:12 - 16:29  (00:17)
root     pts/0        195.238.93.36    Thu Jul 12 16:11   still logged in
reboot   system boot  2.6.32-5-xen-686 Thu Jul 12 15:14 - 16:52  (01:38)
root     pts/2        195.238.93.36    Tue Jul  3 16:08 - 12:06 (1+19:57)
root     pts/0        195.238.93.36    Tue Jul  3 16:00 - 18:08  (02:07)
reboot   system boot  2.6.32-5-xen-686 Tue Jul  3 14:15 - 15:38 (7+01:22)
root     pts/1        195.238.93.36    Tue Jun 26 15:56 - 18:00  (02:03)
root     pts/0        195.238.93.36    Tue Jun 26 15:55 - crash (6+22:20)
reboot   system boot  2.6.32-5-xen-686 Tue Jun 26 11:51 - 15:38 (14+03:46)
root     pts/2        195.238.93.36    Thu Jun 21 16:11 - 18:12  (02:00)
...
root     pts/0        192.168.7.254    Mon Jun 11 14:00 - 14:01  (00:01)
root     hvc0                          Mon Jun 11 13:54 - 13:54  (00:00)
root     hvc0                          Mon Jun 11 13:54 - 13:54  (00:00)
root     pts/0        192.168.7.254    Mon Jun 11 12:59 - 12:59  (00:00)
root     hvc0                          Mon Jun 11 12:40 - 12:59  (00:18)
root     hvc0                          Mon Jun 11 12:40 - 12:40  (00:00)
reboot   system boot  2.6.32-5-xen-686 Mon Jun 11 12:39 - 16:40  (04:00)
reboot   system boot  2.6.32-5-xen-686 Mon Jun 11 12:36 - 12:37  (00:01)
reboot   system boot  2.6.18-5-xen-686 Mon Jun 11 12:26 - 12:27  (00:00)
wtmp begins Mon Jun 11 12:26:40 2012
18:52:50
#lastloc
l3script: lastloc: команда не найдена
18:52:56
#lastlog
Пользователь     Порт     С                Последний раз
root             pts/1    195.238.93.36    Чтв Июл 12 16:12:17 +0000 2012
daemon                                     **Никогда не входил в систему**
bin                                        **Никогда не входил в систему**
sys                                        **Никогда не входил в систему**
sync                                       **Никогда не входил в систему**
games                                      **Никогда не входил в систему**
man                                        **Никогда не входил в систему**
lp                                         **Никогда не входил в систему**
mail                                       **Никогда не входил в систему**
...
proxy                                      **Никогда не входил в систему**
www-data                                   **Никогда не входил в систему**
backup                                     **Никогда не входил в систему**
list                                       **Никогда не входил в систему**
irc                                        **Никогда не входил в систему**
gnats                                      **Никогда не входил в систему**
nobody                                     **Никогда не входил в систему**
libuuid                                    **Никогда не входил в систему**
user             hvc0                      Пнд Июн 11 20:34:57 +0000 2012
sshd                                       **Никогда не входил в систему**
18:53:01
#cat /etc/groupe
cat: /etc/groupe: Нет такого файла или каталога
18:56:38
#cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
...
sasl:x:45:
plugdev:x:46:
staff:x:50:
games:x:60:
users:x:100:
nogroup:x:65534:
libuuid:x:101:
crontab:x:102:
user:x:1000:
ssh:x:103:
18:56:40
#adduser
adduser: Можно указать только одно или два имени.
19:01:08
#ls -id /tmp
211 /tmp
прошло 22 минуты
19:23:56
#ls -ld /tmp
drwxrwxrwt 2 root root 48 Июл 12 17:17 /tmp
19:24:18
#whereis passwd
passwd: /usr/bin/passwd /etc/passwd /usr/share/man/man1/passwd.1.gz /usr/share/man/man5/passwd.5.gz
19:34:11
#ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 34740 Фев 15  2011 /usr/bin/passwd
19:34:49
#ssh root@192.168.7.10
root@debian0:~# l3script
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
[root@debian0:~]#
--------------------------------------------------------------------------------

Файлы

  • /etc/group
  • /etc/group
    >
    root:x:0:
    daemon:x:1:
    bin:x:2:
    sys:x:3:
    adm:x:4:
    tty:x:5:
    disk:x:6:
    lp:x:7:
    mail:x:8:
    news:x:9:
    uucp:x:10:
    man:x:12:
    proxy:x:13:
    kmem:x:15:
    dialout:x:20:
    fax:x:21:
    voice:x:22:
    cdrom:x:24:
    floppy:x:25:
    tape:x:26:
    sudo:x:27:
    audio:x:29:
    dip:x:30:
    www-data:x:33:
    backup:x:34:
    operator:x:37:
    list:x:38:
    irc:x:39:
    src:x:40:
    gnats:x:41:
    shadow:x:42:
    utmp:x:43:
    video:x:44:
    sasl:x:45:
    plugdev:x:46:
    staff:x:50:
    games:x:60:
    users:x:100:
    nogroup:x:65534:
    libuuid:x:101:
    crontab:x:102:
    user:x:1000:
    ssh:x:103:
    

    Статистика

    Время первой команды журнала19:02:07 2012- 6-26
    Время последней команды журнала19:34:49 2012- 7-12
    Количество командных строк в журнале41
    Процент команд с ненулевым кодом завершения, %12.20
    Процент синтаксически неверно набранных команд, %12.20
    Суммарное время работы с терминалом *, час 1.37
    Количество командных строк в единицу времени, команда/мин 0.50
    Частота использования команд
    ls8|===================| 19.51%
    grep6|==============| 14.63%
    whereis4|=========| 9.76%
    cat4|=========| 9.76%
    last3|=======| 7.32%
    echo3|=======| 7.32%
    ssh2|====| 4.88%
    lastlog1|==| 2.44%
    lastfb1|==| 2.44%
    echo$$1|==| 2.44%
    ls-l1|==| 2.44%
    head1|==| 2.44%
    who1|==| 2.44%
    less1|==| 2.44%
    ^C1|==| 2.44%
    heaD1|==| 2.44%
    lastloc1|==| 2.44%
    adduser1|==| 2.44%
    ____
    *) Интервалы неактивности длительностью 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$