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

Содержание

Журнал

Среда (04/04/07)

/dev/ttyp1
15:24:45
$dmesg
Copyright (c) 1992-2006 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 6.2-RC1 #0: Thu Nov 16 05:12:08 UTC 2006
    root@opus.cse.buffalo.edu:/usr/obj/usr/src/sys/SMP
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Celeron(R) CPU 1.80GHz (1800.03-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0xf13  Stepping = 3
  Features=0x3febfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM>
...
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
Timecounter "TSC" frequency 1800031040 Hz quality 800
Timecounters tick every 1.000 msec
ad1: 38166MB <WDC WD400JB-00ENA0 05.03E05> at ata0-slave UDMA100
acd0: DVDROM <JLMS DVD-ROM LTD-166S/DS0B> at ata1-slave UDMA40
Trying to mount root from ufs:/dev/ad1s1a
drmsub0: <Intel i845G GMCH>: (child of agp_i810.c) on agp0
info: [drm] AGP at 0xd0000000 128MB
info: [drm] Initialized i915 1.4.0 20060119
15:25:27
$ls -l
total 48
-rwxr-xr-x  1 user  wheel    209  4 ÁÐÒ 15:21 1
-rw-r--r--  1 user  wheel      0  4 ÁÐÒ 13:08 10
drwx------  2 user  wheel    512  4 ÁÐÒ 11:01 Desktop
drwxr-xr-x  2 user  wheel   4096  3 ÁÐÒ 17:34 Font
-rw-r--r--  1 user  wheel   3845  6 ÄÅË  2003 base
drwxr-xr-x  2 user  wheel    512 11 ÄÅË  2003 bin
-rw-r--r--  1 user  wheel  12718  6 ÄÅË  2003 body
drwxr-xr-x  2 user  wheel    512  6 ÄÅË  2003 c
drwxr-xr-x  3 user  wheel    512 10 ÄÅË  2003 files
drwxr-xr-x  2 user  wheel   1536  3 ÁÐÒ 12:38 names
-rw-r--r--  1 user  wheel      0  4 ÁÐÒ 13:04 no_file
drwxr-xr-x  2 user  wheel    512 11 ÄÅË  2003 pics
drwxr-xr-x  3 user  wheel    512  6 ÄÅË  2003 proj
drwxr-xr-x  2 user  wheel    512  6 ÄÅË  2003 projectX
drwxr-xr-x  2 user  wheel    512  6 ÄÅË  2003 sh
drwxr-xr-x  4 user  wheel    512  6 ÄÅË  2003 test
drwxr-xr-x  2 user  wheel    512  4 ÁÐÒ 10:57 text
-rw-r--r--  1 user  wheel     18  6 ÄÅË  2003 touchlist
-rw-r--r--  1 user  wheel      0  6 ÄÅË  2003 very_long_file_name
15:25:58
$vim 2
15:26:14
$vim 1
2,10c2,9
< echo "Your likely System?"
< read FAV_OS
< 	case $FAV_OS in
< 			"FreeBSD" )
< 	echo "You are the Best (:" ;; 
< 	
< 			"Windows" )
< 	echo "Bill Must Die ^^" ;;
< 			* ) echo "X3 what is thaT?" ;;
---
> echo "÷ÅÄÉÔÅ ÌÀÂÏÅ ÞÉÓÌÏ:"
> 	read digit 
> 	echo "ôÅÐÅÒØ ÓËÏÌØËÏ ÂÕÄÅÔ ×ÁÛÅ ÞÉÓÌÏ ÕÍÎÏÖÉÔØ ÎÁ 2?"
> 		read answer
> 		case $answer in
> 			"&digit * 2" )
> 		echo "You right!"
> ;;
прошло 10 минут
/dev/ttyp5
15:36:39
$echo
2*2
15:36:45
$man wc
15:38:39
$wc 2*2
wc: 2*2: open: No such file or directory
/dev/ttyp1
15:39:33
$sh 1
÷ÅÄÉÔÅ ÌÀÂÏÅ ÞÉÓÌÏ:
5
ôÅÐÅÒØ ÓËÏÌØËÏ ÂÕÄÅÔ ×ÁÛÅ ÞÉÓÌÏ ÕÍÎÏÖÉÔØ ÎÁ 2?
10
15:39:43
$echo $?
0
15:39:51
$vim 1
15:42:07
$ls
1                       c                       sh
10                      files                   test
Desktop                 names                   text
Font                    no_file                 touchlist
base                    pics                    very_long_file_name
bin                     proj
body                    projectX
15:42:09
$rm 1

15:42:11
$ls
10                      c                       projectX
Desktop                 files                   sh
Font                    names                   test
base                    no_file                 text
bin                     pics                    touchlist
body                    proj                    very_long_file_name
/dev/ttyp1
15:42:56
$vim
/dev/ttyp3
15:50:15
$ssh root@linux1.net.nt
Password:
Last login: Wed Apr  4 16:17:39 2007 from sled.net.nt
l3-agent is already running: pid=2508; pidfile=/root/.lilalo/l3-agent.pid
/dev/ttyp1
15:50:55
$ls
10                      c                       projectX
Desktop                 files                   sh
Font                    names                   test
base                    no_file                 text
bin                     pics                    touchlist
body                    proj                    very_long_file_name
15:51:05
$ls -al
total 440
drwxr-xr-x  28 user  wheel    1536  4 ÁÐÒ 15:50 .
drwxr-xr-x   4 root  wheel     512 30 ÍÁÒ 21:20 ..
lrwxr-xr-x   1 user  wheel      38  4 ÁÐÒ 09:27 .DCOPserver_fbsd2.net.nt_:0 -> /home/user/.DCOPserver_fbsd2.net.nt__0
-rw-r--r--   1 user  wheel      57  4 ÁÐÒ 09:27 .DCOPserver_fbsd2.net.nt__0
-rw-------   1 user  wheel     199  4 ÁÐÒ 09:27 .ICEauthority
-rw-------   1 user  wheel     164  4 ÁÐÒ 09:27 .Xauthority
-rw-------   1 user  wheel    7469  4 ÁÐÒ 15:42 .bash_history
-rw-r--r--   1 user  wheel      24  6 ÄÅË  2003 .bash_logout
-rw-r--r--   1 user  wheel     315  2 ÁÐÒ 07:17 .bash_profile
...
drwxr-xr-x   2 user  wheel    1536  3 ÁÐÒ 12:38 names
-rw-r--r--   1 user  wheel       0  4 ÁÐÒ 13:04 no_file
drwxr-xr-x   2 user  wheel     512 11 ÄÅË  2003 pics
drwxr-xr-x   3 user  wheel     512  6 ÄÅË  2003 proj
drwxr-xr-x   2 user  wheel     512  6 ÄÅË  2003 projectX
drwxr-xr-x   2 user  wheel     512  6 ÄÅË  2003 sh
drwxr-xr-x   4 user  wheel     512  6 ÄÅË  2003 test
drwxr-xr-x   2 user  wheel     512  4 ÁÐÒ 10:57 text
-rw-r--r--   1 user  wheel      18  6 ÄÅË  2003 touchlist
-rw-r--r--   1 user  wheel       0  6 ÄÅË  2003 very_long_file_name
15:51:07
$vim .vimrc
2c2,4
< 
---
> set number
> set list
> set syn on
15:51:48
$vim
15:51:56
$vim .vimrc
4c4
< set syn on
---
> set syntax on
15:52:12
$vim
15:52:19
$vim .vimrc
4c4
< set syntax on
---
> set syntax
15:52:29
$vim
15:52:35
$man vim
15:53:16
$vim .vimrc
4c4
< set syntax
---
> syntax on
15:53:35
$vim
15:54:28
$last
root             ttyp5    sled             ÓÒ  4 ÁÐÒ 09:59 - 12:14  (02:14)
user             :0                        ÓÒ  4 ÁÐÒ 09:27   still logged in
reboot           ~                         ÓÒ  4 ÁÐÒ 09:27
shutdown         ~                         ×Ô  3 ÁÐÒ 17:44
user             :0                        ×Ô  3 ÁÐÒ 17:30 - 17:44  (00:13)
user             ttyv3                     ×Ô  3 ÁÐÒ 17:27 - shutdown  (00:16)
user             ttyv1                     ×Ô  3 ÁÐÒ 17:25 - shutdown  (00:19)
root             ttyv1                     ×Ô  3 ÁÐÒ 17:11 - 17:23  (00:12)
date             {                         ×Ô  3 ÁÐÒ 17:07
date             |                         ×Ô  3 ÁÐÒ 16:07
...
root             ttyv1                     ÐÔ 30 ÍÁÒ 19:16 - shutdown  (00:02)
root             ttyv0                     ÐÔ 30 ÍÁÒ 19:16 - shutdown  (00:03)
reboot           ~                         ÐÔ 30 ÍÁÒ 19:14
shutdown         ~                         ÐÔ 30 ÍÁÒ 18:41
root             ttyv0                     ÐÔ 30 ÍÁÒ 18:41 - shutdown  (00:00)
reboot           ~                         ÐÔ 30 ÍÁÒ 18:32
shutdown         ~                         ÐÔ 30 ÍÁÒ 18:25
root             ttyv0                     ÐÔ 30 ÍÁÒ 18:25 - shutdown  (00:00)
reboot           ~                         ÐÔ 30 ÍÁÒ 18:24
wtmp begins ÐÑÔÎÉÃÁ, 30 ÍÁÒÔÁ 2007 Ç. 18:24:06 (EEST)
прошло 23 минуты
16:17:33
$whoami
user
/dev/ttyp3
16:17:49
#screen -x
16:17:49
#screen -x
/dev/ttyp1
16:24:46
$su
Password:
16:24:52
#whoami
root
16:24:57
#su - user
Removing stale pidfile
/dev/ttyp5
16:25:03
$whoami
user
/dev/ttyp1
16:25:03
$whoami
user
/dev/ttyp5
16:25:11
$echo $OGNAME

/dev/ttyp1
16:25:11
$echo $OGNAME

/dev/ttyp5
16:25:21
$echo $LOGINNE

/dev/ttyp1
16:25:21
$echo $LOGINNE

/dev/ttyp5
16:25:21
$echo $LOGINNE

/dev/ttyp1
16:25:21
$echo $LOGINNE

/dev/ttyp5
16:25:35
$echo $LOGINAME

/dev/ttyp1
16:25:35
$echo $LOGINAME
Password:
/dev/ttyp5
16:25:35
$echo $LOGINAME

/dev/ttyp1
16:25:35
$echo $LOGINAME
Password:
/dev/ttyp5
16:25:39
$echo $LOGNAME

/dev/ttyp1
16:25:39
$echo $LOGNAME

/dev/ttyp5
16:25:39
$echo $LOGNAME

/dev/ttyp1
16:25:39
$echo $LOGNAME

/dev/ttyp5
16:25:46
$su
Password:
/dev/ttyp1
16:25:46
$su
Password:
/dev/ttyp5
16:25:46
$su
Password:
/dev/ttyp1
16:25:46
$su
Password:
/dev/ttyp5
16:25:52
#echo $LOGNAME

/dev/ttyp1
16:25:52
#echo $LOGNAME

/dev/ttyp5
16:25:52
#echo $LOGNAME

/dev/ttyp1
16:25:52
#echo $LOGNAME

/dev/ttyp5
16:25:57
#whoami
root
/dev/ttyp1
16:25:57
#whoami
root
/dev/ttyp5
16:25:57
#whoami
root
/dev/ttyp1
16:25:57
#whoami
root
/dev/ttyp5
16:25:57
#whoami
root
/dev/ttyp1
16:25:57
#whoami
root
/dev/ttyp5
16:26:06
#exit

/dev/ttyp1
16:26:06
#exit

/dev/ttyp5
16:26:06
#exit

/dev/ttyp1
16:26:06
#exit

/dev/ttyp5
16:26:16
$w
16:26  up  6:59, 0 users, load averages: 0,24 0,14 0,09
USER             TTY      FROM              LOGIN@  IDLE WHAT
/dev/ttyp1
16:26:16
$w
16:26  up  6:59, 0 users, load averages: 0,24 0,14 0,09
USER             TTY      FROM              LOGIN@  IDLE WHAT
/dev/ttyp5
16:26:16
$w
16:26  up  6:59, 0 users, load averages: 0,24 0,14 0,09
USER             TTY      FROM              LOGIN@  IDLE WHAT
/dev/ttyp1
16:26:16
$w
16:26  up  6:59, 0 users, load averages: 0,24 0,14 0,09
USER             TTY      FROM              LOGIN@  IDLE WHAT
/dev/ttyp5
16:26:22
$echo $LOGNAME

/dev/ttyp1
16:26:22
$echo $LOGNAME

/dev/ttyp5
16:26:22
$echo $LOGNAME

/dev/ttyp1
16:26:22
$echo $LOGNAME

16:26:40
$exit

16:26:40
$exit

16:26:40
$exit

16:26:50
#exit

16:26:50
#exit

16:26:50
#exit

/dev/ttyp1
16:26:56
$echo $LOGNAME
user
16:26:56
$echo $LOGNAME
user
16:26:56
$echo $LOGNAME
user
16:27:03
$su
Password:
16:27:03
$su
Password:
16:27:20
#echo $LOGNAME
user
16:27:20
#echo $LOGNAME
user
16:27:26
#whoami
root
16:27:26
#whoami
root
16:27:35
#exit

16:27:35
#exit

16:27:37
$lastlog
bash: lastlog: command not found
16:32:29
$last
last       lastcomm   lastlogin
16:32:29
$lastlogin
root              ttyp5    sled.net.nt        Wed Apr  4 09:59:54 2007
user              :0                          Wed Apr  4 09:27:17 2007
16:32:29
$last
last       lastcomm   lastlogin
16:32:29
$lastlogin
root              ttyp5    sled.net.nt        Wed Apr  4 09:59:54 2007
user              :0                          Wed Apr  4 09:27:17 2007
16:32:39
$users
users        users-admin
16:32:39
$users
users        users-admin
16:32:39
$add
adddebug   addftinfo  addr2line  adduser
16:32:39
$users
users        users-admin

Статистика

Время первой команды журнала15:24:45 2007- 4- 4
Время последней команды журнала16:32:39 2007- 4- 4
Количество командных строк в журнале101
Процент команд с ненулевым кодом завершения, % 6.93
Процент синтаксически неверно набранных команд, % 2.97
Суммарное время работы с терминалом *, час 1.13
Количество командных строк в единицу времени, команда/мин 1.49
Частота использования команд
echo29|============================| 28.71%
vim12|===========| 11.88%
whoami12|===========| 11.88%
exit12|===========| 11.88%
su8|=======| 7.92%
ls5|====| 4.95%
w4|===| 3.96%
last3|==| 2.97%
users3|==| 2.97%
screen2|=| 1.98%
man2|=| 1.98%
lastlogin2|=| 1.98%
lastlog1|| 0.99%
rm1|| 0.99%
dmesg1|| 0.99%
wc1|| 0.99%
sh1|| 0.99%
ssh1|| 0.99%
add1|| 0.99%
____
*) Интервалы неактивности длительностью 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$