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

Содержание

Журнал

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

/dev/pts/3
18:32:13
#exit
Есть приостановленные задачи.

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

/dev/pts/5
09:33:51
#setxkbmap -option "compose:ralt"

09:34:09
#l3-agent

прошло 11 минут
09:45:46
#apt-get install strace
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Следующие пакеты устанавливались автоматически и больше не требуются:
  update-inetd portmap
Для их удаления используйте 'apt-get autoremove'.
НОВЫЕ пакеты, которые будут установлены:
  strace
обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 161kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 336kB.
Получено:1 http://10.0.35.1 sid/main strace 4.5.18-1 [161kB]
Получено 161kБ за 0s (9511kБ/c)
Выбор ранее не выбранного пакета strace.
(Чтение базы данных ... на данный момент установлено 44681 файлов и каталогов.)
Распаковывается пакет strace (из файла .../strace_4.5.18-1_i386.deb)...
Обрабатываются триггеры для man-db ...
Настраивается пакет strace (4.5.18-1) ...
прошло >2 часов
12:01:24
#str
strace   strfile  strings  strip
12:01:24
#strace
usage: strace [-dffhiqrtttTvVxx] [-a column] [-e expr] ... [-o file]
              [-p pid] ... [-s strsize] [-u username] [-E var=val] ...
              [command [arg ...]]
   or: strace -c [-e expr] ... [-O overhead] [-S sortby] [-E var=val] ...
              [command [arg ...]]
-c -- count time, calls, and errors for each syscall and report summary
-f -- follow forks, -ff -- with output into separate files
-F -- attempt to follow vforks, -h -- print help message
-i -- print instruction pointer at time of syscall
-q -- suppress messages about attaching, detaching, etc.
...
-e expr -- a qualifying expression: option=[!]all or option=[!]val1[,val2]...
   options: trace, abbrev, verbose, raw, signal, read, or write
-o file -- send trace output to FILE instead of stderr
-O overhead -- set overhead for tracing syscalls to OVERHEAD usecs
-p pid -- trace process with process id PID, may be repeated
-s strsize -- limit length of print strings to STRSIZE chars (default 32)
-S sortby -- sort syscall counts by: time, calls, name, nothing (default time)
-u username -- run command as username handling setuid and/or setgid
-E var=val -- put var=val in the environment for command
-E var -- remove var from the environment for command
12:01:49
#ntpdate
ntpdate         ntpdate-debian
12:01:49
#ntpdate -q
28 May 12:14:42 ntpdate[28167]: no servers can be used, exiting
прошло 12 минут
12:14:42
#apt-get install pwgen n
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
E: Не удалось найти пакет n
прошло 17 минут
12:32:24
#apt-get install pwgen
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Следующие пакеты устанавливались автоматически и больше не требуются:
  update-inetd portmap
Для их удаления используйте 'apt-get autoremove'.
НОВЫЕ пакеты, которые будут установлены:
  pwgen
обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 19,2kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 77,8kB.
Получено:1 http://10.0.35.1 sid/main pwgen 2.06-1 [19,2kB]
Получено 19,2kБ за 0s (27,8kБ/c)
Выбор ранее не выбранного пакета pwgen.
(Чтение базы данных ... на данный момент установлено 44691 файлов и каталогов.)
Распаковывается пакет pwgen (из файла .../archives/pwgen_2.06-1_i386.deb)...
Обрабатываются триггеры для man-db ...
Настраивается пакет pwgen (2.06-1) ...
12:32:28
#pwgen
eChu1esh iMues1oe zeiNg9ah ki3Ohwu4 Geez1ie7 Ous6choo ku9Aipho Eu1Chuo4
qui5eB0e ush3Phoo tuiGh3oo Eel1Poh5 ue7eePh2 To2yoWoh Reephaa9 Eihee9ma
aen5iuZo Mee9Eiki aiPhom5s chooTh3E thoTh8Ai adia1Ahf eed7eeMu laigh1Ot
Ahf7nuji Voom4evu Aeh0Aet5 goa6Xoon aahuB5wu aiGha8Ri dee9Ver8 Ohph4ahY
gigh5Di9 ho5Falie Eed3shae osoZae9S Irel5oeB que9paiB aeRutae2 doqu1XaN
acoT2gah kohSh9oo Oruifah2 Ochae5ge aigh7Tu1 Neidohm6 aeroF4ae oLee5sie
iT6emaer ieNai0ye gooXooh2 Ukei1uQu Thoo6aht she7Eech euQu5bio giQuiem3
Aid1uato Thae1Eef eiM7cha4 haiTahl8 Aech4see cuav8eeK eiDee7pa aeZef3sh
ooW8Yo8a maen3aPa good4Yae koGeej1i aCh6aco9 tohWei6K EizeiD5y wah7aeLe
Ohheid7r thaub9Ee Iesh6aef eeB1poof Leish6Xa ohthai5O ieSh3eef Shief8oh
Eic0eiTh queigh4E eer6Shui ahqu6OoG eix1Qui2 Ahzai8La epeiJee8 aeHie2au
shiqu0Ie aiw0Yaga oos3yi2A Liesul5w ahGhij6O ahBe8yi3 loQu3ohk pah5Kegh
thi0oWit Uakidi2G guSho4ei Fae2Chei ooQu5sho eM5ea7ke aap9Iqua hae3Ahj3
iG8phaNg boat5iJ4 Aigoe7ae ieHoew7i Eid4ahth Be7Ma9ae baLohY8t Goo1vai4
haeX7Pie eith1ohB Zi7Ang4j Ahwah9zo oN7eich9 eboh2eiP aeNe3oNg beiJ2Oor
so5Nae1u eeCeib2o Ooshee2i Yie0ooza saec8riR Phook7pu aewa2Aid ohphao2Z
xaiJ3aib KaiKeak9 eeginiL8 Meiwau3i jahKo6Mu Och7tha3 co7Ruipe aeThai0k
iaf8fiWa cahzoo2P ith7Kai5 shiCh8ei ewahSh7i IeDonee1 kahPh1co Aetoong9
quooX4Tu Yei2shae Ahj3Haiv eeNg9euf YohC3ve7 Phaevi0B Pon9ohm9 uNgie1Po
wo5phieT erae6Agh Axa4eeZ4 fe1zieHi Bai8IeNu shooCh2I oLi7laeh uC1oghai
12:32:38
#apt-get install miscfiles
Чтение списков пакетов... Готово
Построение дерева зависимостей
Чтение информации о состоянии... Готово
Уже установлена самая новая версия miscfiles.
miscfiles установлен вручную.
Следующие пакеты устанавливались автоматически и больше не требуются:
  update-inetd portmap
Для их удаления используйте 'apt-get autoremove'.
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
12:36:11
#pro
probes       propertyTag  prove
12:36:11
#which propernames

12:36:44
#zcat /usr/share/doc
doc/      doc-base/
12:36:44
#zcat /usr/share/doc/m
mailx/             man-db/            mawk/              miscfiles/         monit/
make/              manpages/          menu/              mktemp/            mount/
makedev/           manpages-ru/       mime-support/      module-init-tools/
12:36:44
#zcat /usr/share/doc/miscfiles/
abbrevs.gen.gz       changelog.Debian.gz  dict-README.gz       na.phone.gz          README.debian.gz
abbrevs.talk.gz      changelog.gz         inter.phone.gz       na.postalcodes.gz    README.gz
airport.gz           cities.dat.gz        languages.gz         NEWS.gz              unicode.gz
ascii.gz             countries.gz         latin1.gz            operator.gz
birthtoken.gz        currency.gz          mailinglists.gz      ORIGIN.gz
12:36:44
#zcat /usr/share/dict
dict/                dictionaries-common/
12:36:44
#zcat /usr/share/dict/
connectives.gz          propernames.gz          README.select-wordlist  web2a.gz
12:36:44
#zcat /usr/share/dict/propernames.gz | head 200
head: невозможно открыть `200' для чтения: Нет такого файла или каталога
12:40:33
#zcat /usr/share/dict/propernames.gz | head -n 200
Angelica
Angus
Anita
Ann
Anna
Annard
Anne
Annie
Anthea
Anthony
...
Chris
Christian
Christie
Christina
Christofer
Christophe
Christopher
Chuck
Cinderella
Cindie
12:40:42
#zcat /usr/share/dict/propernames.gz | head -n 200 | tr A-Z a-z
angelica
angus
anita
ann
anna
annard
anne
annie
anthea
anthony
...
chris
christian
christie
christina
christofer
christophe
christopher
chuck
cinderella
cindie
12:41:06
#zcat /usr/share/dict/propernames.gz | head -n 200 | tr A-Z a-z > /tmp/200users

12:41:25
#less /tmp/200users
12:41:54
#echo $RANDOM
6127
12:42:21
#cat /dev/urandom | tr -cd 0-9a-zA-Z`\n`| grep -x ........
bash: n: команда не найдена
^C
12:43:20
#cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........
ZA3X7RNz
exx4tjHg
1ePbMlsZ
sJOx5ttB
G58PCeir
UHTbreyf
RhDJvZZo
GSbE75io
7BtwWGHz
qX33KOE3
...
VIzTECGU
BEspDPNV
1K20zPXX
bpWRDaOM
6mlPLp7y
LN6Ilo8W
4Lt4k9h7
Z5lD1Zzk
5Pi5BvmL
^C
12:43:33
#cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 200
LQeXR5Wj
UQctR76Q
Je5efcV7
BVvTcKCu
eFOtt1ck
MScPZGR5
RffGRgeO
PMmL3szX
9oisGmBn
HPu3apyn
...
oxAhyaSC
OzRCbTdL
HDWDcLVw
lL1yAbaR
s6PDySrm
pfZ7Ud20
f8CRXNSb
cwzhE30f
8X6CAScH
^C
12:43:47
#cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 200 > 200passw

12:43:59
#cd /tmp/

12:44:03
#ls
200users  date2.log  date.log  keyring-OOzMLB  orbit-user  ssh-HBFJwm2864
12:44:06
#cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 200 > /tmp/200passw

12:44:26
#ls
200passw  200users  date2.log  date.log  keyring-OOzMLB  orbit-user  ssh-HBFJwm2864
12:44:28
#cat 200
200passw  200users
12:44:28
#cat 200* | wc -l
400
12:51:27
#zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z
aaron
12:51:57
#echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z); echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1)
aaron
W5nKdevk
12:53:08
##(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z); | passwd echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1))

12:56:24
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1)
g5ok9Ajl
12:56:55
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1)
3nyO1Crp
12:57:00
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1); !
bash: syntax error near unexpected token `newline'
12:57:11
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1); !e
echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1); echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1); !
bash: syntax error near unexpected token `newline'
12:57:15
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1); echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1);
A1bUxmXa
PvVusxU8
12:57:30
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1);
SfgK6xIn
12:58:25
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1); | wile read passw
bash: syntax error near unexpected token `|'
12:58:51
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1); | while read passw
bash: syntax error near unexpected token `|'
12:58:58
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1) | while read passw
> do
> echo passw
> done
passw
12:59:34
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1) | while read passw ; do echo i; done
i
12:59:51
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1) | while read $passw ; do echo ; done

прошла 71 минута
14:11:09
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1) | while read $passw ; do echo $passw ; done

14:15:32
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1) = passw | while read $passw ; do echo $passw ; done

14:15:40
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1) | while read passw ; do echo $passw ; done
iP6oaL2j
14:16:43
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1) | while read passw ; do echo $passw ; done
aYaFYdT1
14:16:50
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1) | while read passw ; do echo $passw ; done
s7oEjjaK
14:16:54
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1) | while read passw ; do echo $passw ; done
6HZyOuOd
14:16:58
#echo $(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1) | while read passw ; do echo $passw ; done
XKCSoxx4
14:20:21
#cat addu

14:20:29
#( echo $pass; echo $pass ) | passwd user | echo $pass >> /tmp/addu
Введите новый пароль UNIX: Повторите ввод нового пароля UNIX: passwd: пароль успешно обновлён
14:20:59
#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
...
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
sshd:x:101:65534::/var/run/sshd:/usr/sbin/nologin
messagebus:x:102:104::/var/run/dbus:/bin/false
polkituser:x:103:105:PolicyKit,,,:/var/run/PolicyKit:/bin/false
haldaemon:x:104:106:Hardware abstraction layer,,,:/var/run/hald:/bin/false
gdm:x:105:107:Gnome Display Manager:/var/lib/gdm:/bin/false
user:x:1000:1000::/home/user:/bin/bash
Debian-exim:x:106:108::/var/spool/exim4:/bin/false
14:22:29
#( echo $pass; echo $pass ) | passwd $(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z) | echo $pass >> /tmp/addu;
>
14:23:56
#( echo $pass; echo $pass ) | passwd echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z) | echo $pass #>> /tmp/addu;
elo6fjVU
Использование: passwd [параметры] [имя пользователя]
Параметры:
  -a, --all                     показать состояние паролей всех учётных
                                записей
  -d, --delete                  удалить пароль заданной учётной записи
  -e, --expire                  просрочить пароль заданной учётной записи
  -h, --help                    показать это сообщение и завершить работу
                                программы
  -k, --keep-tokens             изменять пароль только с истёкшим сроком
...
                                сменой пароля в MIN_DAYS
  -q, --quiet                   не показывать сообщений
  -r, --repository REPOSITORY   изменить пароль в репозитории REPOSITORY
  -S, --status                  показать состояние пароля заданной учётной
                                записи
  -u, --unlock                  разблокировать заданную учётную запись
  -w, --warndays WARN_DAYS      установить количество дней с
                                выдачей предупреждения в WARN_DAYS
  -x, --maxdays MAX_DAYS        установить максимальное число дней перед
                                сменой пароля в MAX_DAYS
14:24:17
#( echo $pass; echo $pass ) | passwd 'echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)' | echo $pass #>> /tmp/addu;
elo6fjVU
passwd: пользователь 'echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)' не существует
14:24:39
#( echo $pass; echo $pass ) | passwd user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo $pass #>> /tmp/addu;
elo6fjVU
passwd: пользователь 'user=aaron' не существует
14:26:32
#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
...
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
sshd:x:101:65534::/var/run/sshd:/usr/sbin/nologin
messagebus:x:102:104::/var/run/dbus:/bin/false
polkituser:x:103:105:PolicyKit,,,:/var/run/PolicyKit:/bin/false
haldaemon:x:104:106:Hardware abstraction layer,,,:/var/run/hald:/bin/false
gdm:x:105:107:Gnome Display Manager:/var/lib/gdm:/bin/false
user:x:1000:1000::/home/user:/bin/bash
Debian-exim:x:106:108::/var/spool/exim4:/bin/false
user=aaron:x:1001:1001::/home/user=aaron:/bin/sh
14:27:05
#( echo $pass; echo $pass ) | useradd user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo $pass #>> /tmp/addu;
KJPxYL1t
useradd: пользователь user=aaron уже существует
14:27:22
#( echo $pass; echo $pass ) | passwd user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo $pass >> /tmp/addu;
Введите новый пароль UNIX: Повторите ввод нового пароля UNIX: passwd: пароль успешно обновлён
14:27:38
#cat addu
elo6fjVU
elo6fjVU
elo6fjVU
KJPxYL1t
KJPxYL1t
KJPxYL1t
14:28:41
#( echo $pass; echo $pass ) | passwd user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo '$user $pass' >> /tmp/addu;
Введите новый пароль UNIX: Повторите ввод нового пароля UNIX: passwd: пароль успешно обновлён
14:29:18
#( echo $pass; echo $pass ) | passwd user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo 'echo $user $pass' >> /tmp/addu;
Введите новый пароль UNIX: Повторите ввод нового пароля UNIX: passwd: пароль успешно обновлён
14:29:35
#( echo $pass; echo $pass ) | passwd user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo $user, $pass >> /tmp/addu;
Введите новый пароль UNIX: Повторите ввод нового пароля UNIX: passwd: пароль успешно обновлён
14:29:51
#( echo $pass; echo $pass ) | passwd user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo $user , $pass >> /tmp/addu;
Введите новый пароль UNIX: Повторите ввод нового пароля UNIX: passwd: пароль успешно обновлён
14:29:58
#( echo $pass; echo $pass ) | passwd user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo $pass >> /tmp/addu; echo $user >> /tmp/addu
Введите новый пароль UNIX: Повторите ввод нового пароля UNIX: passwd: пароль успешно обновлён
14:30:39
#( echo $pass; echo $pass ) | passwd user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo $pass >> /tmp/addu; echo $user >> /tmp/addu
Введите новый пароль UNIX: Повторите ввод нового пароля UNIX: passwd: пароль успешно обновлён
14:30:57
#( echo $pass; echo $pass ) | adduser user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo $pass >> /tmp/addu; echo $user >> /tmp/addu
adduser: Чтобы не было проблем, имя пользователя должно состоять только из
букв, цифр, подчёркиваний, точек, тире, знаков '@' и не начинаться
с тире (так определено в IEEE Std 1003.1-2001). Для совместимости с Samba
также можно указывать $ в конце имени пользователя
14:31:15
#( echo $pass; echo $pass ) | useradd user=$(echo $(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)) | echo $pass >> /tmp/addu; echo $user >> /tmp/addu
useradd: пользователь user=aaron уже существует
14:31:29
#( echo $pass; echo $pass ) | useradd user=$(echo $(zcat /usr/share/dict/propernames.gz | tail -n 1 | tr A-Z a-z)) | echo $pass >> /tmp/addu; echo $user >> /tmp/addu

/dev/pts/8
14:32:41
#cd /tmp/

14:32:46
#vi /tmp/uuu
--- /dev/null	2009-05-28 09:31:34.505018579 +0300
+++ /tmp/uuu	2009-05-28 14:33:09.000000000 +0300
@@ -0,0 +1,2 @@
+#!/bin/sh
+
14:33:09
#vi /tmp/uuu
--- /tmp/l3-saved-19552.14746.9561	2009-05-28 14:33:10.000000000 +0300
+++ /tmp/uuu	2009-05-28 14:37:18.000000000 +0300
@@ -1,2 +1,9 @@
 #!/bin/sh
+pass=$(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1)
+user=$(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)
+echo $pass
+echo $user
+
+#( echo $pass; echo $pass ) | while read 
+
 
14:37:18
#chmod 644 uuu

14:37:24
#ls
200passw  200users  addu  date2.log  date.log  keyring-OOzMLB  orbit-user  ssh-HBFJwm2864  uuu
14:37:33
#ls -al
итого 72
drwxrwxrwt  7 root root 4096 Май 28 14:37 .
drwxr-xr-x 21 root root 4096 Май 24 21:05 ..
-rw-r--r--  1 root root 1800 Май 28 12:44 200passw
-rw-r--r--  1 root root 1378 Май 28 12:41 200users
-rw-r--r--  1 root root  176 Май 28 14:31 addu
-rw-r--r--  1 user user 4590 Май 28 14:36 date2.log
-rw-r--r--  1 user user 9180 Май 28 14:37 date.log
drwxrwxrwt  2 root root 4096 Май 28 09:31 .ICE-unix
drwx------  2 user user 4096 Май 28 09:31 keyring-OOzMLB
drwx------  2 user user 4096 Май 28 09:37 orbit-user
drwx------  2 user user 4096 Май 28 09:31 ssh-HBFJwm2864
-rw-r--r--  1 root root  224 Май 28 14:37 uuu
-r--r--r--  1 root root   11 Май 28 09:31 .X0-lock
drwxrwxrwt  2 root root 4096 Май 28 09:31 .X11-unix
-rw-------  1 user user  406 Май 28 09:31 .xfsm-ICE-GN66TU
14:37:36
#chmod +x uuu

14:37:55
#ls -al
итого 72
drwxrwxrwt  7 root root 4096 Май 28 14:37 .
drwxr-xr-x 21 root root 4096 Май 24 21:05 ..
-rw-r--r--  1 root root 1800 Май 28 12:44 200passw
-rw-r--r--  1 root root 1378 Май 28 12:41 200users
-rw-r--r--  1 root root  176 Май 28 14:31 addu
-rw-r--r--  1 user user 4590 Май 28 14:36 date2.log
-rw-r--r--  1 user user 9180 Май 28 14:37 date.log
drwxrwxrwt  2 root root 4096 Май 28 09:31 .ICE-unix
drwx------  2 user user 4096 Май 28 09:31 keyring-OOzMLB
drwx------  2 user user 4096 Май 28 09:37 orbit-user
drwx------  2 user user 4096 Май 28 09:31 ssh-HBFJwm2864
-rwxr-xr-x  1 root root  224 Май 28 14:37 uuu
-r--r--r--  1 root root   11 Май 28 09:31 .X0-lock
drwxrwxrwt  2 root root 4096 Май 28 09:31 .X11-unix
-rw-------  1 user user  406 Май 28 09:31 .xfsm-ICE-GN66TU
14:37:56
#./uuu
LICMYBxr
aaron
14:38:05
#vi /tmp/uuu
--- /tmp/l3-saved-19552.15226.19543	2009-05-28 14:38:13.000000000 +0300
+++ /tmp/uuu	2009-05-28 14:38:37.000000000 +0300
@@ -1,7 +1,7 @@
 #!/bin/sh
 pass=$(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1)
 user=$(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)
-echo $pass
+echo $pass '\n\
 echo $user
 
 #( echo $pass; echo $pass ) | while read 
14:38:37
#./uuu
./uuu: line 4: unexpected EOF while looking for matching `''
./uuu: line 10: ошибка синтаксиса: неожиданный конец файла
14:38:42
#vi /tmp/uuu
--- /tmp/l3-saved-19552.25216.1931	2009-05-28 14:38:46.000000000 +0300
+++ /tmp/uuu	2009-05-28 14:38:56.000000000 +0300
@@ -1,7 +1,7 @@
 #!/bin/sh
 pass=$(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1)
 user=$(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)
-echo $pass '\n\
+echo $pass '\n'
 echo $user
 
 #( echo $pass; echo $pass ) | while read 
14:38:56
#./uuu
jNWS07uq \n
aaron
14:39:00
#vi /tmp/uuu
--- /tmp/l3-saved-19552.12291.10992	2009-05-28 14:39:02.000000000 +0300
+++ /tmp/uuu	2009-05-28 14:39:10.000000000 +0300
@@ -1,7 +1,7 @@
 #!/bin/sh
 pass=$(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1)
 user=$(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)
-echo $pass '\n'
+echo $pass \n
 echo $user
 
 #( echo $pass; echo $pass ) | while read 
14:39:10
#./uuu
3MTWMVO5 n
aaron
14:39:15
#vi /tmp/uuu
--- /tmp/l3-saved-19552.2518.26810	2009-05-28 14:39:17.000000000 +0300
+++ /tmp/uuu	2009-05-28 14:39:26.000000000 +0300
@@ -1,8 +1,7 @@
 #!/bin/sh
 pass=$(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1)
 user=$(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)
-echo $pass \n
-echo $user
+echo $pass echo $user
 
 #( echo $pass; echo $pass ) | while read 
 
14:39:26
#./uuu
z3uDpwMi echo aaron
14:39:30
#vi /tmp/uuu
--- /tmp/l3-saved-19552.8799.18648	2009-05-28 14:39:36.000000000 +0300
+++ /tmp/uuu	2009-05-28 14:39:44.000000000 +0300
@@ -1,7 +1,7 @@
 #!/bin/sh
 pass=$(cat /dev/urandom | tr -cd 0-9a-zA-Z'\n'| grep -x ........ | head -n 1)
 user=$(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)
-echo $pass echo $user
+echo $pass; echo $user
 
 #( echo $pass; echo $pass ) | while read 
 
14:39:44
#vi /tmp/uuu
14:39:46
#+q436f+q6b75+q6b64+q6b72+q6b6c+q2332+q2334+q2569+q2a37+q6b31
tQmzqwQX
aaron
14:39:50
#./uuu
aVb3sEiD
aaron
14:39:59
#vi /tmp/uuu
--- /tmp/l3-saved-19552.5224.19715	2009-05-28 14:40:01.000000000 +0300
+++ /tmp/uuu	2009-05-28 14:41:12.000000000 +0300
@@ -3,6 +3,6 @@
 user=$(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)
 echo $pass; echo $user
 
-#( echo $pass; echo $pass ) | while read 
+( echo $pass; echo $pass ) | passwd user
 
 
14:41:12
#./uuu
kxQv5F2X
aaron
Введите новый пароль UNIX: Повторите ввод нового пароля UNIX: passwd: пароль успешно обновлён
14:41:16
#vi /tmp/uuu
--- /tmp/l3-saved-19552.27194.11752	2009-05-28 14:41:20.000000000 +0300
+++ /tmp/uuu	2009-05-28 14:42:42.000000000 +0300
@@ -3,6 +3,9 @@
 user=$(zcat /usr/share/dict/propernames.gz | head -n 1 | tr A-Z a-z)
 echo $pass; echo $user
 
-( echo $pass; echo $pass ) | passwd user
+while read user
+do
+( echo $pass; echo $pass ) | passwd $user 
+done
 
 
14:42:42
#./uuu
tRIcyQG9
aaron
^C

Файлы

  • /etc/passwd
  • 200
  • addu
  • /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
    sshd:x:101:65534::/var/run/sshd:/usr/sbin/nologin
    messagebus:x:102:104::/var/run/dbus:/bin/false
    polkituser:x:103:105:PolicyKit,,,:/var/run/PolicyKit:/bin/false
    haldaemon:x:104:106:Hardware abstraction layer,,,:/var/run/hald:/bin/false
    gdm:x:105:107:Gnome Display Manager:/var/lib/gdm:/bin/false
    user:x:1000:1000::/home/user:/bin/bash
    Debian-exim:x:106:108::/var/spool/exim4:/bin/false
    user=aaron:x:1001:1001::/home/user=aaron:/bin/sh
    
    200
    >
    200passw  200users
    
    addu
    >
    elo6fjVU
    elo6fjVU
    elo6fjVU
    KJPxYL1t
    KJPxYL1t
    KJPxYL1t
    

    Статистика

    Время первой команды журнала18:32:13 2009- 5-27
    Время последней команды журнала14:42:42 2009- 5-28
    Количество командных строк в журнале101
    Процент команд с ненулевым кодом завершения, %17.82
    Процент синтаксически неверно набранных команд, % 0.00
    Суммарное время работы с терминалом *, час 1.70
    Количество командных строк в единицу времени, команда/мин 0.99
    Частота использования команд
    tr43|=============| 13.74%
    head42|=============| 13.42%
    echo36|===========| 11.50%
    grep25|=======| 7.99%
    addu16|=====| 5.11%
    (16|=====| 5.11%
    >16|=====| 5.11%
    passwd13|====| 4.15%
    while11|===| 3.51%
    cat11|===| 3.51%
    vi10|===| 3.19%
    zcat10|===| 3.19%
    do9|==| 2.88%
    done9|==| 2.88%
    uuu8|==| 2.56%
    ls5|=| 1.60%
    apt-get4|=| 1.28%
    useradd3|| 0.96%
    ntpdate2|| 0.64%
    chmod2|| 0.64%
    cd2|| 0.64%
    200passw2|| 0.64%
    Частота использования этих команд < 0.5%pwgen1 , 200users1 , +q436f+q6b75+q6b64+q6b72+q6b6c+q2332+q2334+q2569+q2a37+q6b311 , wile1 , !1 , wc1 , strace1 , pro1 , l3-agent1 , str1 , tail1 , less1 , #(echo1 , exit1 , which1 , setxkbmap1 , adduser1 , !e1
    ____
    *) Интервалы неактивности длительностью 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$