/l3/users/eb/2009/linux13/root :1 :2 :3 :4 :5 :6 :7 :8 :9 :10 :11 :12 :13 :14 :15 :16 :17 :18 :19 :20 :21 :22 :23 :24 :25 :26 :27 :28 :29 :30 :31 :32 :33 :34 :35 :36 :37 :38 :39 :40 :41 :42 :43 :44 :45 :46 :47 :48 :49 :50 :51 :52 :53 :54 :55 :56 :57 :58 :59 :60 :61 :62 :63 :64 :65 :66 :67 :68 :69 :70 :71 :72 :73 :74 :75 :76 |
|
#ls
all ip_forward~ ip_forwary~ lv-table passswd samba.png scriptall spamsend file ip_forwarw~ ip_forwarz~ Mail passswd1 screen.dot sent usaddscript harddisk.img ip_forwarx~ iptables-save new samba.dot screen.png shtdown vol1 |
#ls
all ip_forward~ ip_forwary~ lv-table passswd samba.png scriptall spamsend file ip_forwarw~ ip_forwarz~ Mail passswd1 screen.dot sent usaddscript harddisk.img ip_forwarx~ iptables-save new samba.dot screen.png shtdown vol1 |
#cat all
#!/bin/sh for i in 192.168.15.{1..5} 192.168.15.{9..16} do ssh $i "$@" | sed "s/^/$i: /" done |
#cat all
#!/bin/sh for i in 192.168.15.{1..5} 192.168.15.{9..16} do ssh $i "$@" | sed "s/^/$i: /" done |
#ls
all ip_forward~ ip_forwary~ lv-table passswd samba.png scriptall spamsend file ip_forwarw~ ip_forwarz~ Mail passswd1 screen.dot sent usaddscript harddisk.img ip_forwarx~ iptables-save new samba.dot screen.png shtdown vol1 |
#ls
all ip_forward~ ip_forwary~ lv-table passswd samba.png scriptall spamsend file ip_forwarw~ ip_forwarz~ Mail passswd1 screen.dot sent usaddscript harddisk.img ip_forwarx~ iptables-save new samba.dot screen.png shtdown vol1 |
#ls
all ip_forward~ ip_forwary~ lv-table passswd samba.png scriptall spamsend file ip_forwarw~ ip_forwarz~ Mail passswd1 screen.dot sent usaddscript harddisk.img ip_forwarx~ iptables-save new samba.dot screen.png shtdown vol1 |
#ls
all ip_forward~ ip_forwary~ lv-table passswd samba.png scriptall spamsend file ip_forwarw~ ip_forwarz~ Mail passswd1 screen.dot sent usaddscript harddisk.img ip_forwarx~ iptables-save new samba.dot screen.png shtdown vol1 |
#ls
all ip_forwarx~ iptables-save new samba.dot screen.png shtdown vol1 ip_forward~ ip_forwary~ lv-table passswd samba.png scriptall spamsend ip_forwarw~ ip_forwarz~ Mail passswd1 screen.dot sent usaddscript |
#ls
all ip_forwarx~ iptables-save new samba.dot screen.png shtdown vol1 ip_forward~ ip_forwary~ lv-table passswd samba.png scriptall spamsend ip_forwarw~ ip_forwarz~ Mail passswd1 screen.dot sent usaddscript |
#cat new
cat: new: Is a directory |
#cd new
|
#ls
all ip_forwarx~ iptables-save passswd samba.png scriptall spamsend ip_forward~ ip_forwary~ lv-table passswd1 screen.dot sent usaddscript ip_forwarw~ ip_forwarz~ Mail samba.dot screen.png shtdown vol1 |
#ls
all ip_forwarx~ iptables-save passswd samba.png scriptall spamsend ip_forward~ ip_forwary~ lv-table passswd1 screen.dot sent usaddscript ip_forwarw~ ip_forwarz~ Mail samba.dot screen.png shtdown vol1 |
#ls
all ip_forwarx~ iptables-save samba.dot screen.png shtdown vol1 ip_forward~ ip_forwary~ lv-table samba.png scriptall spamsend ip_forwarw~ ip_forwarz~ Mail screen.dot sent usaddscript |
#ls
all ip_forwarx~ iptables-save samba.dot screen.png shtdown vol1 ip_forward~ ip_forwary~ lv-table samba.png scriptall spamsend ip_forwarw~ ip_forwarz~ Mail screen.dot sent usaddscript |
#rm samba.*
|
#rm samba.*
|
#cat scriptall
#!/bin/sh for i in 192.168.15.{1..5} 192.168.15.{9..16} do ssh $i "$@" | sed "s/^/$i: /" done |
#cat scriptall
#!/bin/sh for i in 192.168.15.{1..5} 192.168.15.{9..16} do ssh $i "$@" | sed "s/^/$i: /" done |
#ls
ip_forward~ ip_forwarx~ ip_forwarz~ scriptall shtdown usaddscript ip_forwarw~ ip_forwary~ Mail sent spamsend vol1 |
#ls
ip_forward~ ip_forwarx~ ip_forwarz~ scriptall shtdown usaddscript ip_forwarw~ ip_forwary~ Mail sent spamsend vol1 |
#cd /home/user/Documents/
|
#cd /home/user/Documents/
|
#ls
1.txt 3.txt 5-6.txt conference scriptall spamsend 2.txt 4.txt 7-8.txt contacts itcs EB shtdown usaddscript |
#ls
1.txt 3.txt 5-6.txt conference scriptall spamsend 2.txt 4.txt 7-8.txt contacts itcs EB shtdown usaddscript |
#rar a 111.rar *
RAR 3.80 Copyright (c) 1993-2008 Alexander Roshal 16 Sep 2008 Shareware version Type RAR -? for help Evaluation copy. Please register. Creating archive 111.rar Adding 1.txt OK Adding 2.txt OK Adding 3.txt OK Adding 4.txt OK Adding 5-6.txt OK Adding 7-8.txt OK Adding conference OK Adding contacts itcs EB OK Adding scriptall OK Adding shtdown OK Adding spamsend OK Adding usaddscript OK Done |
#rar a 111.rar *
RAR 3.80 Copyright (c) 1993-2008 Alexander Roshal 16 Sep 2008 Shareware version Type RAR -? for help Evaluation copy. Please register. Creating archive 111.rar Adding 1.txt OK Adding 2.txt OK Adding 3.txt OK Adding 4.txt OK Adding 5-6.txt OK Adding 7-8.txt OK Adding conference OK Adding contacts itcs EB OK Adding scriptall OK Adding shtdown OK Adding spamsend OK Adding usaddscript OK Done |
#tar c etc.tar.gz /etc
# MTAs, you may want to disable this. If you are handling both relaying from # MTAs and submissions from MUAs you should probably split them into two # lists, and handle them differently. # Recipient verification is omitted here, because in many cases the clients # are dumb MUAs that don't cope well with SMTP error responses. If you are # actually relaying out from MTAs, you should probably add recipient # verification here. # Note that, by putting this test before any DNS black list checks, you will # always accept from these hosts, even if they end up on a black list. The # assumption is that they are your friends, and if they get onto black ... {${if eq {$runrc}{6}{none}{error}}}}}}}}}} condition = ${if <={$runrc}{6}{yes}{no}} defer message = Temporary DNS error while checking SPF record. Try again later. condition = ${if eq {$runrc}{5}{yes}{no}} .endif # Check against classic DNS "black" lists (DNSBLs) which list # sender IP addresses .ifdef CHECK_RCPT_IP_DNSBLS warn |
#tar c etc.tar.gz /etc
# MTAs, you may want to disable this. If you are handling both relaying from # MTAs and submissions from MUAs you should probably split them into two # lists, and handle them differently. # Recipient verification is omitted here, because in many cases the clients # are dumb MUAs that don't cope well with SMTP error responses. If you are # actually relaying out from MTAs, you should probably add recipient # verification here. # Note that, by putting this test before any DNS black list checks, you will # always accept from these hosts, even if they end up on a black list. The # assumption is that they are your friends, and if they get onto black ... {${if eq {$runrc}{6}{none}{error}}}}}}}}}} condition = ${if <={$runrc}{6}{yes}{no}} defer message = Temporary DNS error while checking SPF record. Try again later. condition = ${if eq {$runrc}{5}{yes}{no}} .endif # Check against classic DNS "black" lists (DNSBLs) which list # sender IP addresses .ifdef CHECK_RCPT_IP_DNSBLS warn |
#ls
bin dev home lib log.ecp media mntflash proc sbin srv tmp var boot etc initrd.img log.eci lost+found mnt opt root selinux sys usr vmlinuz |
#ls
bin dev home lib log.ecp media mntflash proc sbin srv tmp var boot etc initrd.img log.eci lost+found mnt opt root selinux sys usr vmlinuz |
#ls
a2ps.cfg default init.d modprobe.d rc5.d a2ps-site.cfg defoma initramfs-tools modules rc6.d adduser.conf deluser.conf inittab monit rc.local adjtime dhcp3 inputrc motd rcS.d aliases dictionaries-common iproute2 motd.tail resolvconf alternatives dm issue mtab resolv.conf anacrontab doc-base issue.net Muttrc rmt apache2 dpkg john Muttrc.d rpc apm emacs kbd mysql rsyslog.conf apparmor.d email-addresses kde3 nanorc screenrc ... cron.d hal mailcap purple ucf.conf cron.daily hesiod.conf mailcap.order python udev cron.hourly host.conf mailname python2.5 ufw cron.monthly hostname mail.rc qpopper.conf vga crontab hosts manpath.config rarfiles.lst vim cron.weekly hosts.allow mdadm rc0.d wgetrc dbus-1 hosts.deny menu rc1.d X11 debconf.conf htdig menu-methods rc2.d xdg debian_version iceweasel mime.types rc3.d xen debsums-ignore inetd.conf mke2fs.conf rc4.d xml |
#ls
a2ps.cfg default init.d modprobe.d rc5.d a2ps-site.cfg defoma initramfs-tools modules rc6.d adduser.conf deluser.conf inittab monit rc.local adjtime dhcp3 inputrc motd rcS.d aliases dictionaries-common iproute2 motd.tail resolvconf alternatives dm issue mtab resolv.conf anacrontab doc-base issue.net Muttrc rmt apache2 dpkg john Muttrc.d rpc apm emacs kbd mysql rsyslog.conf apparmor.d email-addresses kde3 nanorc screenrc ... cron.d hal mailcap purple ucf.conf cron.daily hesiod.conf mailcap.order python udev cron.hourly host.conf mailname python2.5 ufw cron.monthly hostname mail.rc qpopper.conf vga crontab hosts manpath.config rarfiles.lst vim cron.weekly hosts.allow mdadm rc0.d wgetrc dbus-1 hosts.deny menu rc1.d X11 debconf.conf htdig menu-methods rc2.d xdg debian_version iceweasel mime.types rc3.d xen debsums-ignore inetd.conf mke2fs.conf rc4.d xml |
#apt-get update
Hit http://192.168.15.13 etch Release.gpg Ign http://192.168.15.13 etch/main Translation-en_US Ign http://192.168.15.13 etch/contrib Translation-en_US Ign http://192.168.15.13 etch/non-free Translation-en_US Hit http://192.168.15.13 etch Release Ign http://192.168.15.13 etch/main Packages/DiffIndex Ign http://192.168.15.13 etch/contrib Packages/DiffIndex Ign http://192.168.15.13 etch/non-free Packages/DiffIndex Ign http://192.168.15.13 etch/main Packages Ign http://192.168.15.13 etch/contrib Packages Ign http://192.168.15.13 etch/non-free Packages Hit http://192.168.15.13 etch/main Packages Hit http://192.168.15.13 etch/contrib Packages Hit http://192.168.15.13 etch/non-free Packages Reading package lists... Done |
#apt-get update
Hit http://192.168.15.13 etch Release.gpg Ign http://192.168.15.13 etch/main Translation-en_US Ign http://192.168.15.13 etch/contrib Translation-en_US Ign http://192.168.15.13 etch/non-free Translation-en_US Hit http://192.168.15.13 etch Release Ign http://192.168.15.13 etch/main Packages/DiffIndex Ign http://192.168.15.13 etch/contrib Packages/DiffIndex Ign http://192.168.15.13 etch/non-free Packages/DiffIndex Ign http://192.168.15.13 etch/main Packages Ign http://192.168.15.13 etch/contrib Packages Ign http://192.168.15.13 etch/non-free Packages Hit http://192.168.15.13 etch/main Packages Hit http://192.168.15.13 etch/contrib Packages Hit http://192.168.15.13 etch/non-free Packages Reading package lists... Done |
#apt-get install slapd
Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: slapd: Depends: libperl5.8 (>= 5.8.8) but it is not going to be installed E: Broken packages |
#apt-get install slapd
Reading package lists... Done Building dependency tree Reading state information... Done Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: slapd: Depends: libperl5.8 (>= 5.8.8) but it is not going to be installed E: Broken packages |
#vim /etc/apt/sources.list
--- /tmp/l3-saved-4657.19699.17885 2009-06-06 14:59:47.000000000 +0300 +++ /etc/apt/sources.list 2009-06-06 14:59:57.000000000 +0300 @@ -1,2 +1,2 @@ -deb http://192.168.15.13:9999/debian etch main contrib non-free +deb http://192.168.15.13:9999/debian sid main contrib non-free # deb http://www.debian-multimedia.org sid main |
#ls
kde-user orbit-user slapd.config.100573 ssh-VGSTpC3802 keyring-B9Tshv photo2 ssh-uhNozW3998 zim-user-gui-daemon |
#ls
kde-user orbit-user slapd.config.100573 ssh-VGSTpC3802 keyring-B9Tshv photo2 ssh-uhNozW3998 zim-user-gui-daemon |
#vim /usr/share/
|
#vim /etc/ld
|
#vim /etc/ld
|
#!/bin/sh for i in 192.168.15.{1..5} 192.168.15.{9..16} do ssh $i "$@" | sed "s/^/$i: /" done
#!/bin/sh for i in 192.168.15.{1..5} 192.168.15.{9..16} do ssh $i "$@" | sed "s/^/$i: /" done
Время первой команды журнала | 14:40:42 2009- 6- 6 | ||||||||||||||||||||||||||||||
Время последней команды журнала | 15:03:27 2009- 6- 6 | ||||||||||||||||||||||||||||||
Количество командных строк в журнале | 101 | ||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 13.86 | ||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 0.00 | ||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 0.38 | ||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 4.44 | ||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду w. В поле WHAT, соответствующем текущему терминалу, должна быть указана программа script.
Команды, при наборе которых были допущены синтаксические ошибки, выводятся перечёркнутым текстом:
$ l s-l bash: l: command not found |
Если код завершения команды равен нулю, команда была выполнена без ошибок. Команды, код завершения которых отличен от нуля, выделяются цветом.
$ test 5 -lt 4 |
Команды, ход выполнения которых был прерван пользователем, выделяются цветом.
$ 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 |
Команды, выполненные с привилегиями суперпользователя, выделяются слева красной чертой.
# id uid=0(root) gid=0(root) Gruppen=0(root) |
Изменения, внесённые в текстовый файл с помощью редактора, запоминаются и показываются в журнале в формате ed. Строки, начинающиеся символом "<", удалены, а строки, начинающиеся символом ">" -- добавлены.
$ vi ~/.bashrc
|
Для того чтобы изменить файл в соответствии с показанными в диффшоте изменениями, можно воспользоваться командой patch. Нужно скопировать изменения, запустить программу patch, указав в качестве её аргумента файл, к которому применяются изменения, и всавить скопированный текст:
$ patch ~/.bashrc |
Для того чтобы получить краткую справочную информацию о команде, нужно подвести к ней мышь. Во всплывающей подсказке появится краткое описание команды.
Если справочная информация о команде есть, команда выделяется голубым фоном, например: vi. Если справочная информация отсутствует, команда выделяется розовым фоном, например: notepad.exe. Справочная информация может отсутствовать в том случае, если (1) команда введена неверно; (2) если распознавание команды LiLaLo выполнено неверно; (3) если информация о команде неизвестна LiLaLo. Последнее возможно для редких команд.
Большие, в особенности многострочные, всплывающие подсказки лучше всего показываются браузерами KDE Konqueror, Apple Safari и Microsoft Internet Explorer. В браузерах Mozilla и Firefox они отображаются не полностью, а вместо перевода строки выводится специальный символ.
Время ввода команды, показанное в журнале, соответствует времени начала ввода командной строки, которое равно тому моменту, когда на терминале появилось приглашение интерпретатора
Имя терминала, на котором была введена команда, показано в специальном блоке. Этот блок показывается только в том случае, если терминал текущей команды отличается от терминала предыдущей.
Вывод не интересующих вас в настоящий момент элементов журнала, таких как время, имя терминала и других, можно отключить. Для этого нужно воспользоваться формой управления журналом вверху страницы.
Небольшие комментарии к командам можно вставлять прямо из командной строки. Комментарий вводится прямо в командную строку, после символов #^ или #v. Символы ^ и v показывают направление выбора команды, к которой относится комментарий: ^ - к предыдущей, v - к следующей. Например, если в командной строке было введено:
$ whoami
user
$ #^ Интересно, кто я?в журнале это будет выглядеть так:
$ whoami
user
Интересно, кто я? |
Если комментарий содержит несколько строк, его можно вставить в журнал следующим образом:
$ whoami
user
$ cat > /dev/null #^ Интересно, кто я?
Программа whoami выводит имя пользователя, под которым мы зарегистрировались в системе. - Она не может ответить на вопрос о нашем назначении в этом мире.В журнале это будет выглядеть так:
$ whoami user
|
Комментарии, не относящиеся непосредственно ни к какой из команд, добавляются точно таким же способом, только вместо симолов #^ или #v нужно использовать символы #=
1 2 3 4Группы команд, выполненных на разных терминалах, разделяются специальной линией. Под этой линией в правом углу показано имя терминала, на котором выполнялись команды. Для того чтобы посмотреть команды только одного сенса, нужно щёкнуть по этому названию.
LiLaLo (L3) расшифровывается как Live Lab Log.
Программа разработана для повышения эффективности обучения Unix/Linux-системам.
(c) Игорь Чубин, 2004-2008