/l3/users/28-09-2015/NT-Ladm/debian5.net.nt/user |
|
$ls
bigfile names bin ogo2.jpg freebsd.jpg ogo.jpg granata.jpg pamyatka.pdf Light_Alloy_4.4.784_RC2_by_FAFNIR.exe press_any_key_to_continue.jpg lpi 1 proj lpi 2 sh man_smb_conf text matrix.jpg touchlist |
$ls -l
итого 2928 -rwxr-xr-x 1 user user 7994 Окт 9 2014 bigfile drwxr-xr-x 2 user user 4096 Окт 9 2014 bin -rwxr-xr-x 1 user user 232966 Окт 9 2014 freebsd.jpg -rwxr-xr-x 1 user user 52884 Окт 9 2014 granata.jpg -rwxr-xr-x 1 user user 1751860 Окт 9 2014 Light_Alloy_4.4.784_RC2_by_FAFNIR.exe drwxr-xr-x 2 user user 4096 Окт 9 2014 lpi 1 drwxr-xr-x 2 user user 4096 Окт 9 2014 lpi 2 -rwxr-xr-x 1 user user 26648 Окт 9 2014 man_smb_conf -rwxr-xr-x 1 user user 755680 Окт 9 2014 matrix.jpg drwxr-xr-x 3 user user 4096 Окт 9 2014 names -rw-r--r-- 1 root root 0 Сен 29 17:08 ogo2.jpg -rwxr-xr-x 1 user user 17622 Окт 9 2014 ogo.jpg -rwxr-xr-x 1 user user 84663 Окт 9 2014 pamyatka.pdf -rwxr-xr-x 1 user user 23048 Окт 9 2014 press_any_key_to_continue.jpg drwxr-xr-x 3 user user 4096 Окт 9 2014 proj drwxr-xr-x 2 user user 4096 Окт 9 2014 sh drwxr-xr-x 2 user user 4096 Окт 9 2014 text -rwxr-xr-x 1 user user 75 Окт 9 2014 touchlist |
$mkdir d1
|
$ls -ld d1
drwxr-xr-x 2 user user 4096 Сен 30 15:31 d1 |
$chmod u-r d1
|
$ls -ld d1
d-wxr-xr-x 2 user user 4096 Сен 30 15:31 d1 |
$ls d1
ls: невозможно открыть каталог d1: Отказано в доступе |
$cd d1
|
$ls
ls: невозможно открыть каталог .: Отказано в доступе |
$date > date.txt
|
$cat date.txt
Срд Сен 30 15:34:33 EEST 2015 |
$cd ..
|
$chmod u+r-w d1
|
$ls d1
date.txt |
$cd d1
|
$touch f1
touch: невозможно выполнить touch для «f1»: Отказано в доступе |
$rm date.txt
rm: невозможно удалить «date.txt»: Отказано в доступе |
$mv date.txt date
mv: невозможно переместить «date.txt» в «date»: Отказано в доступе |
$cd ..
|
$chmod u+w-x d1
|
$cd d1
l3script: cd: d1: Отказано в доступе |
$touch d1/f1
touch: невозможно выполнить touch для «d1/f1»: Отказано в доступе |
$chmod u+x d1
|
$cd d1
|
$ls
date.txt |
$ls -l
итого 4 -rw-r--r-- 1 user user 36 Сен 30 15:34 date.txt |
$chmod u-r date.txt
|
$cat date.txt
cat: date.txt: Отказано в доступе |
$who >> date.txt
|
$vi date.txt
|
$~
итого 4 --w-r--r-- 1 user user 260 Сен 30 15:41 date.txt |
$chmod u+r-w date.txt
|
$cat date.txt
Срд Сен 30 15:34:33 EEST 2015 root pts/0 2015-09-30 11:03 (192.168.16.106) ivan pts/2 2015-09-30 14:56 (192.168.16.106) petr pts/3 2015-09-29 10:05 (192.168.16.106) user pts/5 2015-09-30 15:29 (192.168.16.106) |
$> date.txt
l3script: date.txt: Отказано в доступе |
$vi date.txt
--- /tmp/l3-saved-15129.29947.11171 2015-09-30 15:42:53.164319808 +0300 +++ date.txt 2015-09-30 15:43:20.244319809 +0300 @@ -3,3 +3,4 @@ ivan pts/2 2015-09-30 14:56 (192.168.16.106) petr pts/3 2015-09-29 10:05 (192.168.16.106) user pts/5 2015-09-30 15:29 (192.168.16.106) +swgw4g |
$cat date.txt
Срд Сен 30 15:34:33 EEST 2015 root pts/0 2015-09-30 11:03 (192.168.16.106) ivan pts/2 2015-09-30 14:56 (192.168.16.106) petr pts/3 2015-09-29 10:05 (192.168.16.106) user pts/5 2015-09-30 15:29 (192.168.16.106) swgw4g |
$vi date.txt
--- /tmp/l3-saved-15129.4084.28298 2015-09-30 15:43:40.124319808 +0300 +++ date.txt 2015-09-30 15:43:55.492319809 +0300 @@ -3,4 +3,3 @@ ivan pts/2 2015-09-30 14:56 (192.168.16.106) petr pts/3 2015-09-29 10:05 (192.168.16.106) user pts/5 2015-09-30 15:29 (192.168.16.106) -swgw4g |
$cat date.txt
Срд Сен 30 15:34:33 EEST 2015 root pts/0 2015-09-30 11:03 (192.168.16.106) ivan pts/2 2015-09-30 14:56 (192.168.16.106) petr pts/3 2015-09-29 10:05 (192.168.16.106) user pts/5 2015-09-30 15:29 (192.168.16.106) |
$cp date.txt /tmp
|
$ls
date.txt |
$ls -l
итого 4 -r--r--r-- 1 user user 260 Сен 30 15:43 date.txt |
$cp $(which who) .
|
$ls
date.txt who |
$who
root pts/0 2015-09-30 11:03 (192.168.16.106) ivan pts/2 2015-09-30 14:56 (192.168.16.106) petr pts/3 2015-09-29 10:05 (192.168.16.106) user pts/5 2015-09-30 15:29 (192.168.16.106) |
$./who
root pts/0 2015-09-30 11:03 (192.168.16.106) ivan pts/2 2015-09-30 14:56 (192.168.16.106) petr pts/3 2015-09-29 10:05 (192.168.16.106) user pts/5 2015-09-30 15:29 (192.168.16.106) |
$ls -l
итого 60 -r--r--r-- 1 user user 260 Сен 30 15:43 date.txt -rwxr-xr-x 1 user user 55888 Сен 30 15:45 who |
$chmod u-x who
|
$./who
l3script: ./who: Отказано в доступе |
$echo "echo privet" > privet.sh
|
$./privet.sh
l3script: ./privet.sh: Отказано в доступе |
$chmod u+x privet.sh
|
$./privet.sh
privet |
$chmod u-x privet.sh
|
$bash privet.sh
privet |
$chmod u+x-r privet.sh
|
$./privet.sh
l3script: ./privet.sh: Отказано в доступе |
$cd /opt/public/
|
$ls
f1 |
$> f1
l3script: f1: Отказано в доступе |
$cat f1
cat: f1: Отказано в доступе |
$rm f1
rm: удалить защищенный от записи пустой обычный файл «f1»? y |
$rm f1
rm: удалить защищенный от записи пустой обычный файл «f1»? y rm: невозможно удалить «f1»: Операция не позволяется |
$cat /etc/shadow
cat: /etc/shadow: Отказано в доступе |
$ls -l /etc/shadow
-rw-r----- 1 root shadow 1072 Сен 30 14:43 /etc/shadow |
$ls -l $(which passwd)
-rwsr-xr-x 1 root root 51096 Май 26 2012 /usr/bin/passwd |
$cat /etc/shadow
root:$6$ppY7xZxX$CnutMU4XxetHko6DW5K/ckfiA6CFeC0cbV/d6rrWE6F5iszqxAaQTwekH3.vBTQPNCakvqusvPcBecndLcbX8.:16248:0:99999:7::: daemon:*:16248:0:99999:7::: bin:*:16248:0:99999:7::: sys:*:16248:0:99999:7::: sync:*:16248:0:99999:7::: games:*:16248:0:99999:7::: man:*:16248:0:99999:7::: lp:*:16248:0:99999:7::: mail:*:16248:0:99999:7::: news:*:16248:0:99999:7::: ... gnats:*:16248:0:99999:7::: nobody:*:16248:0:99999:7::: libuuid:!:16248:0:99999:7::: Debian-exim:!:16248:0:99999:7::: user:$6$dUyq7gNS$9IPCPDC7rEWBqLD.plz5FXQovtmiuAgOwlVnU.zchZrRKMjjVkSSGIQViTavc/asUWC6mxGF9un0oMl7wOga9/:16706:0:45:7::: sshd:*:16248:0:99999:7::: ivan:$6$McVe6j6n$SVOGvkZU3BVE8zz10cRROhhW4y4ChLy8qunjFxsX5bm6vlEKdRuFadvmW6kN/rQWHaj63HiQJOz1/HyBqssM20:16706:0:45:7:5:17439: petr:$6$yNddBWF9$mIB5Bc69.PMCNKXasbgFTtbCeZkmYmoYc5C8gMEdVc.L5ud63/qv0KSOoGWXkV102cfgRaRW1VAWVVSdHZSgE.:16706:0:45:7::: test:!:16708:0:45:7::: anna:!:16708:0:45:7::: |
$write root
privet |
$echo privet > /dev/pts/0
l3script: /dev/pts/0: Отказано в доступе |
$ls -l $(which write)
lrwxrwxrwx 1 root root 23 Июн 27 2014 /usr/bin/write -> /etc/alternatives/write |
$ls -l /etc/alternatives/write
lrwxrwxrwx 1 root root 18 Июн 27 2014 /etc/alternatives/write -> /usr/bin/bsd-write |
$ls -l /usr/bin/bsd-write
-rwxr-sr-x 1 root tty 14624 Июн 11 2012 /usr/bin/bsd-write |
$write root
|
$write root
write: root has messages disabled |
$~
^C |
$ldd `which vi`
linux-vdso.so.1 => (0x00007fff103a8000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f7d374e1000) libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f7d372b8000) libselinux.so.1 => /lib/x86_64-linux-gnu/libselinux.so.1 (0x00007f7d37097000) libacl.so.1 => /lib/x86_64-linux-gnu/libacl.so.1 (0x00007f7d36e8e000) libgpm.so.2 => /usr/lib/x86_64-linux-gnu/libgpm.so.2 (0x00007f7d36c88000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f7d368fc000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f7d366f8000) /lib64/ld-linux-x86-64.so.2 (0x00007f7d3776a000) libattr.so.1 => /lib/x86_64-linux-gnu/libattr.so.1 (0x00007f7d364f3000) |
$vi
|
$~
bigfile names bin ogo2.jpg d1 ogo.jpg freebsd.jpg pamyatka.pdf granata.jpg press_any_key_to_continue.jpg Light_Alloy_4.4.784_RC2_by_FAFNIR.exe proj lpi 1 sh lpi 2 text man_smb_conf touchlist matrix.jpg |
$man vi
|
$~
bigfile names bin ogo2.jpg d1 ogo.jpg freebsd.jpg pamyatka.pdf granata.jpg press_any_key_to_continue.jpg Light_Alloy_4.4.784_RC2_by_FAFNIR.exe proj lpi 1 sh lpi 2 text man_smb_conf touchlist matrix.jpg |
$pidof test.sh
|
$ps a
PID TTY STAT TIME COMMAND 2285 tty1 Ss+ 0:00 /sbin/getty 38400 tty1 2286 tty2 Ss+ 0:00 /sbin/getty 38400 tty2 2287 tty3 Ss+ 0:00 /sbin/getty 38400 tty3 2288 tty4 Ss+ 0:00 /sbin/getty 38400 tty4 2289 tty5 Ss+ 0:00 /sbin/getty 38400 tty5 2290 tty6 Ss+ 0:00 /sbin/getty 38400 tty6 13292 pts/4 Ss+ 0:00 l3script 15129 pts/6 Ss+ 0:00 l3script 17271 pts/2 Ss 0:00 -bash 17316 pts/2 S+ 0:00 script -f -c l3script -q /root/.lilalo//3223871002430 17347 pts/2 S+ 0:01 script -f -c l3script -q /root/.lilalo//3223871002430 17348 pts/3 Ss 0:00 l3script 17764 pts/7 Ss 0:00 -bash 17982 pts/7 S+ 0:00 script -f -c l3script -q /home/user/.lilalo//29702295 18053 pts/7 S+ 0:00 script -f -c l3script -q /home/user/.lilalo//29702295 18054 pts/8 Ss 0:00 l3script 18641 pts/3 S+ 0:00 /bin/bash ./test.sh 5 30 18656 pts/3 S+ 0:00 sleep 5 18657 pts/8 R+ 0:00 ps a |
$ps a
PID TTY STAT TIME COMMAND 2285 tty1 Ss+ 0:00 /sbin/getty 38400 tty1 2286 tty2 Ss+ 0:00 /sbin/getty 38400 tty2 2287 tty3 Ss+ 0:00 /sbin/getty 38400 tty3 2288 tty4 Ss+ 0:00 /sbin/getty 38400 tty4 2289 tty5 Ss+ 0:00 /sbin/getty 38400 tty5 2290 tty6 Ss+ 0:00 /sbin/getty 38400 tty6 13292 pts/4 Ss+ 0:00 l3script 15129 pts/6 Ss+ 0:00 l3script 17271 pts/2 Ss 0:00 -bash 17316 pts/2 S+ 0:00 script -f -c l3script -q /root/.lilalo//3223871002430 17347 pts/2 S+ 0:01 script -f -c l3script -q /root/.lilalo//3223871002430 17348 pts/3 Ss+ 0:00 l3script 17764 pts/7 Ss 0:00 -bash 17982 pts/7 S+ 0:00 script -f -c l3script -q /home/user/.lilalo//29702295 18053 pts/7 S+ 0:00 script -f -c l3script -q /home/user/.lilalo//29702295 18054 pts/8 Ss 0:00 l3script 18641 pts/3 T 0:00 /bin/bash ./test.sh 5 30 18694 pts/3 Z 0:00 [sleep] <defunct> 18709 pts/8 R+ 0:00 ps a |
$crontab -e
# daemon's notion of time and timezones.°Ð¿Ð¸ÑÑ Ñайла # # Output of the crontab jobs (including errors) is sent through # email to the user the crontab file belongs to (unless redirected). # # For example, you can run a backup of all your user accounts # at 5 a.m every week with: # 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/ # # For more information see the manual pages of crontab(5) and cron(8)·Ð°Ð¿Ð¸Ñи Ñайла: # # m h dom mon dow command 0 17 2 10 * wall "End of Course" # [ ÐапиÑано 23 ÑÑÑоки ] crontab: installing new crontab |
$crontab -l
# Edit this file to introduce tasks to be run by cron. # # Each task to run has to be defined through a single line # indicating with different fields when the task will be run # and what command to run for the task # # To define the time you can provide concrete values for # minute (m), hour (h), day of month (dom), month (mon), # and day of week (dow) or use '*' in these fields (for 'any').# # Notice that tasks will be started based on the cron's system ... # email to the user the crontab file belongs to (unless redirected). # # For example, you can run a backup of all your user accounts # at 5 a.m every week with: # 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/ # # For more information see the manual pages of crontab(5) and cron(8) # # m h dom mon dow command 0 17 2 10 * wall "End of Course" |
$crontab -e
You (user) are not allowed to use this program (crontab) See crontab(1) for more information |
root:$6$ppY7xZxX$CnutMU4XxetHko6DW5K/ckfiA6CFeC0cbV/d6rrWE6F5iszqxAaQTwekH3.vBTQPNCakvqusvPcBecndLcbX8.:16248:0:99999:7::: daemon:*:16248:0:99999:7::: bin:*:16248:0:99999:7::: sys:*:16248:0:99999:7::: sync:*:16248:0:99999:7::: games:*:16248:0:99999:7::: man:*:16248:0:99999:7::: lp:*:16248:0:99999:7::: mail:*:16248:0:99999:7::: news:*:16248:0:99999:7::: uucp:*:16248:0:99999:7::: proxy:*:16248:0:99999:7::: www-data:*:16248:0:99999:7::: backup:*:16248:0:99999:7::: list:*:16248:0:99999:7::: irc:*:16248:0:99999:7::: gnats:*:16248:0:99999:7::: nobody:*:16248:0:99999:7::: libuuid:!:16248:0:99999:7::: Debian-exim:!:16248:0:99999:7::: user:$6$dUyq7gNS$9IPCPDC7rEWBqLD.plz5FXQovtmiuAgOwlVnU.zchZrRKMjjVkSSGIQViTavc/asUWC6mxGF9un0oMl7wOga9/:16706:0:45:7::: sshd:*:16248:0:99999:7::: ivan:$6$McVe6j6n$SVOGvkZU3BVE8zz10cRROhhW4y4ChLy8qunjFxsX5bm6vlEKdRuFadvmW6kN/rQWHaj63HiQJOz1/HyBqssM20:16706:0:45:7:5:17439: petr:$6$yNddBWF9$mIB5Bc69.PMCNKXasbgFTtbCeZkmYmoYc5C8gMEdVc.L5ud63/qv0KSOoGWXkV102cfgRaRW1VAWVVSdHZSgE.:16706:0:45:7::: test:!:16708:0:45:7::: anna:!:16708:0:45:7:::
Срд Сен 30 15:34:33 EEST 2015 root pts/0 2015-09-30 11:03 (192.168.16.106) ivan pts/2 2015-09-30 14:56 (192.168.16.106) petr pts/3 2015-09-29 10:05 (192.168.16.106) user pts/5 2015-09-30 15:29 (192.168.16.106)
Время первой команды журнала | 14:29:06 2015- 9-30 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 14:08:23 2015-10- 2 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 86 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 24.42 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 0.00 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 1.32 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 1.09 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду 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