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

Содержание

Журнал

Понедельник (06/11/12)

20:57:28
#shutdown -h now

прошла 91 минута
/dev/hvc0
22:29:06
#ls -l
итого 8
-rwxr-xr-x 1 root root 5342 Июн 11 18:50 install
22:29:09
#date
Пнд Июн 11 20:29:10 UTC 2012

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

/dev/pts/0
18:54:37
#date
Втр Июн 12 16:55:44 UTC 2012
18:55:44
#date -h
date: неверный ключ -- h
Попробуйте `date --help' для получения более подробного описания.
18:56:12
#date --h
ИспользоваÐate для каждойМАТ]
                            строки ФАЙММДДччмм[[ВВ]ГГ][.сс]]
,  --reference=ФАЙения ФАЙмя в заданном ФОРМАТЕ, или устанавливает системное время.
fc-2822           выводить время в соответствии с RFC-2822
                            Пример: Mon, 07 Aug 2006 12:34:56 -0600ремя, а время, описанное
       --rfc-3339=СПЕЦ      вывести дату/время в формате RFC 3339
                            СПЕЦ=`date', `seconds' или `ns' для получения
                            даты и времени с указанной точностью.
                            Компоненты даты и времени разделяются одним
                            пробелом: 2006-08-07 12:34:56-06:00
...
  # использовать противоположный регистр, если возможно
После любого из флагов идет необязательная ширина поля в виде десятичного числа;
затем необязательный модификатор, один из следующих:
E -- если возможно, использовать альтернативное представление для текущей локали
O -- если возможно, использовать альтернативные числовые символы локали.
Об ошибках в date сообщайте по адресу bug-coreutils@gnu.org.
Домашняя страница GNU coreutils: <http://www.gnu.org/software/coreutils/>
Справка по работе с программами GNU: <http://www.gnu.org/gethelp/>
Об ошибках в переводе date сообщений по адресу <gnu@mx.ru>
Полная документация доступна по команде: info coreutils 'date invocation'
comment
19:06:00
#ssh root@192.168.7.10
root@debian0:~#
root@debian0:~#
root@debian0:~# l3script
root@debian0:~#
root@debian0:~# l3script
[root@debian0:~]#  screen -x
root@debian0:~#
root@debian0:~#
root@debian0:~# l3script
root@debian0:~#
...
root@debian0:~#
root@debian0:~# l3script
root@debian0:~#
root@debian0:~# l3script
[root@debian0:~]#  screen -x
root@debian0:~#
root@debian0:~#
root@debian0:~# l3script
[root@debian0:~]#  screen -x
Убито

Четверг (06/21/12)

/dev/pts/0
18:07:37
#echo $0
l3script
/dev/pts/1
18:07:43
#ssh root@192.168.7.10
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~#
root@debian0:~# l3script
прошло 24 минуты
/dev/pts/0
18:32:32
#echo $PS1

прошла 31 минута
/dev/pts/0
19:04:10
#cat /etc/profile
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
if [ "`id -u`" -eq 0 ]; then
  PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
  PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
fi
export PATH
if [ "$PS1" ]; then
  if [ "$BASH" ]; then
...
# The default umask is now handled by pam_umask.
# See pam_umask(8) and /etc/login.defs.
if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi
19:05:35
#id -u
0
19:06:25
#echo $
$_                    $HISTCMD              $OSTYPE
$BASH                 $HISTFILE             $PATH
$BASH_ALIASES         $HISTFILESIZE         $PIPESTATUS
$BASH_ARGC            $HISTSIZE             $PPID
$BASH_ARGV            $HOME                 $PS1
$BASH_CMDS            $HOSTNAME             $PS2
$BASH_COMMAND         $HOSTTYPE             $PS4
$BASH_LINENO          $IFS                  $PWD
$BASHOPTS             $L3_HOME              $RANDOM
$BASHPID              $L3_PARENT_TTY        $SECONDS
$BASH_SOURCE          $L3_SESSION_ID        $SHELL
$BASH_SUBSHELL        $L3_TAMPERED_EDITORS  $SHELLOPTS
$BASH_VERSINFO        $LANG                 $SHLVL
$BASH_VERSION         $LINENO               $SSH_CLIENT
$COLUMNS              $LINES                $SSH_CONNECTION
$COMP_WORDBREAKS      $LOGNAME              $SSH_TTY
$DIRSTACK             $MACHTYPE             $TERM
$editor_file          $MAIL                 $UID
$editor_name          $MAILCHECK            $USER
$EUID                 $OPTERR
$GROUPS               $OPTIND

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

/dev/pts/1
18:14:04
#apt-get install bc concalc
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
НОВЫЕ пакеты, которые будут установлены:
  bc concalc
обновлено 0, установлено 2 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 166 kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 512 kB.
Получено:1 http://debian.org.ua/debian/ squeeze/main bc i386 1.06.95-2 [104 kB]
Получено:2 http://debian.org.ua/debian/ squeeze/main concalc i386 0.9.2-1 [61,2 kB]
Получено 166 kБ за 0с (356 kБ/c)
Выбор ранее не выбранного пакета bc.
(Чтение базы данных ... на данный момент установлено 17570 файлов и каталогов.)
Распаковывается пакет bc (из файла .../archives/bc_1.06.95-2_i386.deb)...
Выбор ранее не выбранного пакета concalc.
Распаковывается пакет concalc (из файла .../concalc_0.9.2-1_i386.deb)...
Обрабатываются триггеры для install-info ...
Обрабатываются триггеры для man-db ...
Настраивается пакет bc (1.06.95-2) ...
Настраивается пакет concalc (0.9.2-1) ...
18:16:01
#echo 5+6 | bc
11
18:19:37
#echo sin(0.5) | bc
l3script: syntax error near unexpected token `('
18:19:58
#echo 5+6 | concalc
11
18:20:19
#echo 5/6 | concalc
0.833333333333333333
18:20:32
#echo *
2001 2002 2003 2004 install
18:28:09
#ls -l
итого 8
drwxr-xr-x 14 root root  336 Июн 19 16:18 2001
drwxr-xr-x 14 root root  336 Июн 19 16:18 2002
drwxr-xr-x 14 root root  336 Июн 19 16:18 2003
drwxr-xr-x 14 root root  336 Июн 19 16:18 2004
-rwxr-xr-x  1 root root 5342 Июн 11 18:50 install
18:28:25
#ls
2001  2002  2003  2004  install
18:28:37
#ls -a
.   2001  2003  .bash_history  .bashrc            install  .lilalo   .ssh
..  2002  2004  .bash_profile  .concalcvariables  .l3rc    .profile  .viminfo
18:29:12
#echo .*
. .. .bash_history .bash_profile .bashrc .concalcvariables .l3rc .lilalo .profile .ssh .viminfo
18:29:39
#echo * .*
2001 2002 2003 2004 install . .. .bash_history .bash_profile .bashrc .concalcvariables .l3rc .lilalo .profile .ssh .viminfo
18:30:47
#echo * .[^.]*
2001 2002 2003 2004 install .bash_history .bash_profile .bashrc .concalcvariables .l3rc .lilalo .profile .ssh .viminfo
18:32:10
#ls -a
.   2001  2003  .bash_history  .bashrc            install  .lilalo   .ssh
..  2002  2004  .bash_profile  .concalcvariables  .l3rc    .profile  .viminfo
18:36:28
#echo * | ls -l
итого 8
drwxr-xr-x 14 root root  336 Июн 19 16:18 2001
drwxr-xr-x 14 root root  336 Июн 19 16:18 2002
drwxr-xr-x 14 root root  336 Июн 19 16:18 2003
drwxr-xr-x 14 root root  336 Июн 19 16:18 2004
-rwxr-xr-x  1 root root 5342 Июн 11 18:50 install
прошла 21 минута
/dev/pts/4
18:57:43
#> /tmp/file

18:59:32
#cat /tmp/file

18:59:43
#cd /tmp

18:59:50
#ls
16:01:45  2012  26  $(date)  file  UTC  Втр  Втр Июн 26 16:02:49 UTC 2012  Июн
18:59:52
#cat /etc/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
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
user:x:1000:1000::/home/user:/bin/bash
sshd:x:101:65534::/var/run/sshd:/usr/sbin/nologin
19:02:58
#cat -n /etc/passwd
     1  root:x:0:0:root:/root:/bin/bash
     2  daemon:x:1:1:daemon:/usr/sbin:/bin/sh
     3  bin:x:2:2:bin:/bin:/bin/sh
     4  sys:x:3:3:sys:/dev:/bin/sh
     5  sync:x:4:65534:sync:/bin:/bin/sync
     6  games:x:5:60:games:/usr/games:/bin/sh
     7  man:x:6:12:man:/var/cache/man:/bin/sh
     8  lp:x:7:7:lp:/var/spool/lpd:/bin/sh
     9  mail:x:8:8:mail:/var/mail:/bin/sh
    10  news:x:9:9:news:/var/spool/news:/bin/sh
    11  uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
    12  proxy:x:13:13:proxy:/bin:/bin/sh
    13  www-data:x:33:33:www-data:/var/www:/bin/sh
    14  backup:x:34:34:backup:/var/backups:/bin/sh
    15  list:x:38:38:Mailing List Manager:/var/list:/bin/sh
    16  irc:x:39:39:ircd:/var/run/ircd:/bin/sh
    17  gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
    18  nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
    19  libuuid:x:100:101::/var/lib/libuuid:/bin/sh
    20  user:x:1000:1000::/home/user:/bin/bash
    21  sshd:x:101:65534::/var/run/sshd:/usr/sbin/nologin
19:04:23
#head -3 /etc/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
19:04:43
#find /usr
/usr
/usr/bin
/usr/bin/[
/usr/bin/w
/usr/bin/bc
/usr/bin/ar
/usr/bin/as
/usr/bin/cc
/usr/bin/du
/usr/bin/ex
...
/usr/share/man/fr/man1/vimtutor.1.gz
/usr/share/man/fr/man1/dpkg-distaddfile.1.gz
/usr/share/man/fr/man1/sensible-pager.1.gz
/usr/share/man/fr/man1/dpkg-trigger.1.gz
/usr/share/man/fr/man1/faked.1.gz
/usr/share/man/fr/man1/dpkg-scanpackages.1.gz
/usr/share/man/fr/man1/fakeroot-tcp.1.gz
/usr/share/man/fr/man1/sg.1.gz
/usr/share/man/fr/man1/apropos.1.gz
^C
прошло 26 минут
19:30:47
#find /usr -size +10k
/usr/bin
/usr/bin/[
/usr/bin/bc
/usr/bin/ar
/usr/bin/as
/usr/bin/du
/usr/bin/id
/usr/bin/nl
/usr/bin/nm
/usr/bin/od
...
/usr/share/man/es/man1/dpkg.1.gz
/usr/share/man/es/man5/apt.conf.5.gz
/usr/share/man/es/man8/aptitude.8.gz
/usr/share/man/fr/man1/man.1.gz
/usr/share/man/fr/man1/dpkg-source.1.gz
/usr/share/man/fr/man1/dpkg.1.gz
/usr/share/man/fr/man5/apt.conf.5.gz
/usr/share/man/fr/man8/aptitude.8.gz
/usr/share/man/id/man1/man.1.gz
^C
19:31:06
#find /usr -perm 777
/usr/bin/w
/usr/bin/cc
/usr/bin/ex
/usr/bin/hd
/usr/bin/ld
/usr/bin/sg
/usr/bin/vi
/usr/bin/c++
/usr/bin/c89
/usr/bin/c99
...
/usr/share/man/man2/signalfd4.2.gz
/usr/share/man/man2/getegid32.2.gz
/usr/share/man/man2/sched_getscheduler.2.gz
/usr/share/man/man2/epoll_pwait.2.gz
/usr/share/man/man2/ftruncate.2.gz
/usr/share/man/man2/afs_syscall.2.gz
/usr/share/man/man2/lstat64.2.gz
/usr/share/man/man2/outsl.2.gz
/usr/share/man/man2/getresgid.2.gz
^C

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

/dev/pts/0
18:03:30
#ssh root@192.168.7.10
~
~
~
~
~
~
~
~
~
~
...
~
~
~
~
~
~
~
~
~
~

Файлы

  • /etc/passwd
  • /etc/profile
  • /tmp/file
  • /etc/passwd
    >
         1  root:x:0:0:root:/root:/bin/bash
         2  daemon:x:1:1:daemon:/usr/sbin:/bin/sh
         3  bin:x:2:2:bin:/bin:/bin/sh
         4  sys:x:3:3:sys:/dev:/bin/sh
         5  sync:x:4:65534:sync:/bin:/bin/sync
         6  games:x:5:60:games:/usr/games:/bin/sh
         7  man:x:6:12:man:/var/cache/man:/bin/sh
         8  lp:x:7:7:lp:/var/spool/lpd:/bin/sh
         9  mail:x:8:8:mail:/var/mail:/bin/sh
        10  news:x:9:9:news:/var/spool/news:/bin/sh
        11  uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
        12  proxy:x:13:13:proxy:/bin:/bin/sh
        13  www-data:x:33:33:www-data:/var/www:/bin/sh
        14  backup:x:34:34:backup:/var/backups:/bin/sh
        15  list:x:38:38:Mailing List Manager:/var/list:/bin/sh
        16  irc:x:39:39:ircd:/var/run/ircd:/bin/sh
        17  gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
        18  nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
        19  libuuid:x:100:101::/var/lib/libuuid:/bin/sh
        20  user:x:1000:1000::/home/user:/bin/bash
        21  sshd:x:101:65534::/var/run/sshd:/usr/sbin/nologin
    
    /etc/profile
    >
    # /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
    # and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
    if [ "`id -u`" -eq 0 ]; then
      PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
    else
      PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games"
    fi
    export PATH
    if [ "$PS1" ]; then
      if [ "$BASH" ]; then
        # The file bash.bashrc already sets the default PS1.
        # PS1='\h:\w\$ '
        if [ -f /etc/bash.bashrc ]; then
          . /etc/bash.bashrc
        fi
      else
        if [ "`id -u`" -eq 0 ]; then
          PS1='# '
        else
          PS1='$ '
        fi
      fi
    fi
    # The default umask is now handled by pam_umask.
    # See pam_umask(8) and /etc/login.defs.
    if [ -d /etc/profile.d ]; then
      for i in /etc/profile.d/*.sh; do
        if [ -r $i ]; then
          . $i
        fi
      done
      unset i
    fi
    
    /tmp/file
    >

    Статистика

    Время первой команды журнала20:57:28 2012- 6-11
    Время последней команды журнала18:03:30 2012- 7- 3
    Количество командных строк в журнале38
    Процент команд с ненулевым кодом завершения, % 5.26
    Процент синтаксически неверно набранных команд, % 0.00
    Суммарное время работы с терминалом *, час 1.93
    Количество командных строк в единицу времени, команда/мин 0.33
    Частота использования команд
    echo12|==========================| 26.67%
    ls7|===============| 15.56%
    cat4|========| 8.89%
    date4|========| 8.89%
    find3|======| 6.67%
    ssh3|======| 6.67%
    bc2|====| 4.44%
    concalc2|====| 4.44%
    id1|==| 2.22%
    shutdown1|==| 2.22%
    apt-get1|==| 2.22%
    Â#^1|==| 2.22%
    >1|==| 2.22%
    file1|==| 2.22%
    head1|==| 2.22%
    cd1|==| 2.22%
    ____
    *) Интервалы неактивности длительностью 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$