/l3/users/11-01-2010/nt-ladm/debian1.net.nt/root :1 :2 :3 :4 :5 :6 :7 :8 :9 :10 :11 :12 :13 :14 |
|
#pidof bash
[root@debian1:~]# killall -l HUP INT QUIT ILL TRAP ABRT IOT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM STKFLT CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH IO PWR SYS UNUSED 19565 6294 4510 2188 2064 2015 1914 |
#top
![]() top - 15:40:26 up 3 days, 20:18, 7 users, load average: 0.04, 0.04, 0.00 Tasks: 73 total, 1 running, 67 sleeping, 5 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0% Mem: 594068k total, 558964k used, 35104k free, 74708k buffers PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND Swap: 0k total, 0k used, 0k free, 368816k cached 1 root 15 0 1960 648 552 S 0.0 0.1 0:00.05 init 2 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 3 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 4 root 10 -5 0 0 0 S 0.0 0.0 0:00.00 events/0 ... 8 root 13 -5 0 0 0 S 0.0 0.0 0:00.00 xenbus 16 root 10 -5 0 0 0 S 0.0 0.0 0:00.00 kblockd/0 18 root 20 -5 0 0 0 S 0.0 0.0 0:00.00 kseriod 55 root 25 0 0 0 0 S 0.0 0.0 0:00.00 pdflush 56 root 15 0 0 0 0 S 0.0 0.0 0:00.09 pdflush 57 root 20 -5 0 0 0 S 0.0 0.0 0:00.00 kswapd0 58 root 20 -5 0 0 0 S 0.0 0.0 0:00.00 aio/0 609 root 20 -5 0 0 0 S 0.0 0.0 0:00.00 kmirrord 707 root 10 -5 0 0 0 S 0.0 0.0 0:00.06 reiserfs/0 1165 root 18 0 1760 640 516 S 0.0 0.1 0:00.00 syslogd |
#date
Wed Jan 13 15:44:01 EET 2010 |
#ps -x
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html PID TTY STAT TIME COMMAND 1 ? Ss 0:00 init [2] 2 ? S 0:00 [migration/0] 3 ? SN 0:00 [ksoftirqd/0] 4 ? S< 0:00 [events/0] 5 ? S< 0:00 [khelper] 6 ? S< 0:00 [kthread] 7 ? S< 0:00 [xenwatch] 8 ? S< 0:00 [xenbus] ... 10922 ttyp1 T 0:00 less file 16357 ? Ss 6:53 l3-agent 19523 ? Ss 0:00 sshd: root@ttyp6 19525 ttyp6 Ss+ 0:00 script -f -q /root/.lilalo//29214322232976717785-1263 19564 ttyp6 S+ 0:00 script -f -q /root/.lilalo//29214322232976717785-1263 19565 ttyp7 Ss 0:00 bash -i 19604 ttyp7 S+ 0:00 screen -x 20522 ? S< 0:00 [rpciod/0] 20523 ? S 0:00 [lockd] 21061 ttyp1 R+ 0:00 ps -x |
#ps U user
PID TTY STAT TIME COMMAND 17154 ? Ss 0:01 l3-agent |
#ps U root
PID TTY STAT TIME COMMAND 1 ? Ss 0:00 init [2] 2 ? S 0:00 [migration/0] 3 ? SN 0:00 [ksoftirqd/0] 4 ? S< 0:00 [events/0] 5 ? S< 0:00 [khelper] 6 ? S< 0:00 [kthread] 7 ? S< 0:00 [xenwatch] 8 ? S< 0:00 [xenbus] 16 ? S< 0:00 [kblockd/0] ... 10922 ttyp1 T 0:00 less file 16357 ? Ss 6:53 l3-agent 19523 ? Ss 0:00 sshd: root@ttyp6 19525 ttyp6 Ss+ 0:00 script -f -q /root/.lilalo//29214322232976717785-1263 19564 ttyp6 S+ 0:00 script -f -q /root/.lilalo//29214322232976717785-1263 19565 ttyp7 Ss 0:00 bash -i 19604 ttyp7 S+ 0:00 screen -x 20522 ? S< 0:00 [rpciod/0] 20523 ? S 0:00 [lockd] 21077 ttyp1 R+ 0:00 ps U root |
#ps U user
PID TTY STAT TIME COMMAND 17154 ? Ss 0:01 l3-agent |
#ps -t tty1
[root@debian1:/]# ps U user1 PID TTY STAT TIME COMMAND PID TTY TIME CMD 1237 tty1 00:00:00 getty |
#ps -t tty0
![]() PID TTY TIME CMD |
#ps -t tty2
PID TTY TIME CMD 1238 tty2 00:00:00 getty |
#ps -t tty3
PID TTY TIME CMD 1239 tty3 00:00:00 getty |
#ps -ax
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html PID TTY STAT TIME COMMAND 1 ? Ss 0:00 init [2] 2 ? S 0:00 [migration/0] 3 ? SN 0:00 [ksoftirqd/0] 4 ? S< 0:00 [events/0] 5 ? S< 0:00 [khelper] 6 ? S< 0:00 [kthread] 7 ? S< 0:00 [xenwatch] 8 ? S< 0:00 [xenbus] ... 19523 ? Ss 0:00 sshd: root@ttyp6 19525 ttyp6 Ss+ 0:00 script -f -q /root/.lilalo//29214322232976717785-1263 19564 ttyp6 S+ 0:00 script -f -q /root/.lilalo//29214322232976717785-1263 19565 ttyp7 Ss 0:00 bash -i 19604 ttyp7 S+ 0:00 screen -x 20355 ? Ss 0:00 /sbin/portmap 20474 ? Ss 0:00 /sbin/rpc.statd 20522 ? S< 0:00 [rpciod/0] 20523 ? S 0:00 [lockd] 21133 ttyp1 R+ 0:00 ps -ax |
#ps -aux
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.1 1960 648 ? Ss Jan09 0:00 init [2] root 2 0.0 0.0 0 0 ? S Jan09 0:00 [migration/0] root 3 0.0 0.0 0 0 ? SN Jan09 0:00 [ksoftirqd/0] root 4 0.0 0.0 0 0 ? S< Jan09 0:00 [events/0] root 5 0.0 0.0 0 0 ? S< Jan09 0:00 [khelper] root 6 0.0 0.0 0 0 ? S< Jan09 0:00 [kthread] root 7 0.0 0.0 0 0 ? S< Jan09 0:00 [xenwatch] root 8 0.0 0.0 0 0 ? S< Jan09 0:00 [xenbus] ... root 19523 0.0 0.3 7712 2368 ? Ss 14:01 0:00 sshd: root@ttyp root 19525 0.0 0.1 4712 680 ttyp6 Ss+ 14:02 0:00 script -f -q /r root 19564 0.0 0.0 4840 472 ttyp6 S+ 14:02 0:00 script -f -q /r root 19565 0.0 0.4 6640 2664 ttyp7 Ss 14:02 0:00 bash -i root 19604 0.0 0.1 5564 1016 ttyp7 S+ 14:02 0:00 screen -x daemon 20355 0.0 0.0 1700 368 ? Ss 14:21 0:00 /sbin/portmap statd 20474 0.0 0.1 1772 740 ? Ss 14:21 0:00 /sbin/rpc.statd root 20522 0.0 0.0 0 0 ? S< 14:22 0:00 [rpciod/0] root 20523 0.0 0.0 0 0 ? S 14:22 0:00 [lockd] root 21141 0.0 0.1 5176 988 ttyp1 R+ 15:51 0:00 ps -aux |
#ps -av
Warning: bad ps syntax, perhaps a bogus '-'? See http://procps.sf.net/faq.html PID TTY STAT TIME MAJFL TRS DRS RSS %MEM COMMAND 1 ? Ss 0:00 17 29 1930 648 0.1 init [2] 2 ? S 0:00 0 0 0 0 0.0 [migration/0] 3 ? SN 0:00 0 0 0 0 0.0 [ksoftirqd/0] 4 ? S< 0:00 0 0 0 0 0.0 [events/0] 5 ? S< 0:00 0 0 0 0 0.0 [khelper] 6 ? S< 0:00 0 0 0 0 0.0 [kthread] 7 ? S< 0:00 0 0 0 0 0.0 [xenwatch] 8 ? S< 0:00 0 0 0 0 0.0 [xenbus] ... 19523 ? Ss 0:00 0 306 7405 2368 0.3 sshd: root@ttyp6 19525 ttyp6 Ss+ 0:00 0 5 4706 680 0.1 script -f -q /root/.lil 19564 ttyp6 S+ 0:00 0 5 4834 472 0.0 script -f -q /root/.lil 19565 ttyp7 Ss 0:00 0 641 5998 2664 0.4 bash -i 19604 ttyp7 S+ 0:00 0 282 5281 1016 0.1 screen -x 20355 ? Ss 0:00 0 10 1689 368 0.0 /sbin/portmap 20474 ? Ss 0:00 0 36 1735 740 0.1 /sbin/rpc.statd 20522 ? S< 0:00 0 0 0 0 0.0 [rpciod/0] 20523 ? S 0:00 0 0 0 0 0.0 [lockd] 21149 ttyp1 R+ 0:00 0 61 4902 804 0.1 ps -avx |
#pstree -p
init(1)─┬─cron(1215) ├─events/0(4) ├─gdm(1203)───gdm(1211)─┬─Xvnc(1214) │ └─gdmlogin(1248) ├─getty(1237) ├─getty(1238) ├─getty(1239) ├─getty(1240) ├─getty(1241) ├─getty(1242) ... ├─sshd(1872)───script(1874)───script(1913)───bash(1914)─┬─ed(8719) │ ├─less(10922) │ ├─man(8364)───p+ │ ├─pstree(21157) │ └─vi(6607) ├─sshd(1957)───script(1979)───script(2063)───bash(2064)───screen(2212) ├─sshd(1959)───script(1961)───script(2014)───bash(2015)───screen(2211) ├─sshd(6252)───script(6254)───script(6293)───bash(6294)───screen(6324) ├─sshd(7433)───sshd(19523)───script(19525)───script(19564)───bash(19565+ └─syslogd(1165) |
#at
![]() bash: at: command not found |
#man at
![]() |
#man cron
|
#date
5 # that none of the other crontabs do. 6 7 SHELL=/bin/sh 8 PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 9 10 # m h dom mon dow user command 11 17 * * * * root cd / && run-parts --report /etc/cron.hourly 12 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-partss --report /etc/cron.daily ) 13 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-partss --report /etc/cron.weekly ) 14 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-partss --report /etc/cron.monthly ) 15 * * * * * root logger -p emerg CRONTAB# 16 17 ~ ~ ~ "/etc/crontab" 17L, 771C written Wed Jan 13 16:50:58 EET 2010 |
#vim /etc/crontab
--- /tmp/l3-saved-2188.25041.1831 2010-01-13 16:51:10.000000000 +0200 +++ /etc/crontab 2010-01-13 16:51:19.000000000 +0200 @@ -12,6 +12,6 @@ 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ) 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly ) -* * * * * root logger -p emerg CRONTAB# +#* * * * * root logger -p emerg CRONTAB# |
#EDITOR=vim crontab -e
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ "crontab.JXNhgX/crontab" 2L, 70C written crontab: installing new crontab |
#date
Wed Jan 13 16:55:06 EET 2010 |
#date
Wed Jan 13 16:55:09 EET 2010 |
#crontab -l -u user
![]() [root@debian1:~]# crontab -l -u root # m h dom mon dow command * * * * * logger -p emerg cron-from-USER no crontab for user |
#grep -r USER /var/spool/
![]() [root@debian1:~]# grep -r USER /var/spool/ cron/ mail/ cron/ mail/ |
#grep -r USER /var/spool/
![]() cron/ mail/ |
#crontab -r -u root
[root@debian1:~]# grep -r USER /var/spool/cron/crontabs/ /var/spool/cron/crontabs/root:* * * * * logger -p emerg cron-from-USER |
#grep -r USER /var/spool/cron/crontabs/
![]() |
#ls -l /var/spool/cron/crontabs/
total 0 |
$EDITOR=vim
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ "crontab.kAmk4h/crontab" 2L, 73C записано crontab: installing new crontab |
$date
Срд Янв 13 16:58:15 EET 2010 |
$exit
exit |
#grep -r USER /var/spool/cron/crontabs/
/var/spool/cron/crontabs/user:* * * * * logger -p emerg USER-TEST-CRONtab |
#date
[root@debian1:~]# crontab -r -u user Wed Jan 13 16:59:18 EET 2010 |
#grep -r USER /var/spool/cron/crontabs/
![]() |
#ls /var/spool/cron/crontabs/
|
#vim /etc/cron.deny
![]() --- /dev/null 2010-01-09 19:22:11.915890422 +0200 +++ /etc/cron.deny 2010-01-13 16:59:48.000000000 +0200 @@ -0,0 +1 @@ +user |
#su - user
l3-agent is already running: pid=17154; pidfile=/home/user/.lilalo/l3-agent.pid |
$EDITOR=vim crontab -e
![]() You (user) are not allowed to use this program (crontab) See crontab(1) for more information |
$exit
exit |
#su - user
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ "/etc/cron.allow" [New] 1L, 5C written l3-agent is already running: pid=17154; pidfile=/home/user/.lilalo/l3-agent.pid |
$exit
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ No modification made exit |
#rm /etc/cron.allow
|
#su - user
l3-agent is already running: pid=17154; pidfile=/home/user/.lilalo/l3-agent.pid |
$EDITOR=vim crontab -e
![]() You (user) are not allowed to use this program (crontab) See crontab(1) for more information |
$date
Срд Янв 13 17:03:04 EET 2010 |
Время первой команды журнала | 14:37:33 2010- 1-13 | |||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 16:00:57 2010- 1-13 | |||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 48 | |||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 25.00 | |||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 2.08 | |||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 0.56 | |||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 1.43 | |||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду 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