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

Содержание

Журнал

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

/dev/pts/2
08:48:18
#vi shell.sh
--- /tmp/l3-saved-31434.28272.10021	2018-07-18 09:48:47.720497904 +0300
+++ shell.sh	2018-07-18 09:52:22.432493919 +0300
@@ -3,3 +3,9 @@
 users=`awk -F: '$3>=1000 && $3!=65534{print $1}' /etc/passwd | \
 	tr '\n' ' '`
 echo $users
+
+for user in users
+	do	
+		echo "Changing shell for user $user"
+		usermod -s /bin/zsh $user
+	done
08:52:22
#./shell.sh
user ivan petr
Changing shell for user users
usermod: пользователь «users» не существует
08:52:24
#vi shell.sh
--- /tmp/l3-saved-31434.11565.13653	2018-07-18 09:52:32.756481301 +0300
+++ shell.sh	2018-07-18 09:53:49.284486674 +0300
@@ -2,9 +2,8 @@
 
 users=`awk -F: '$3>=1000 && $3!=65534{print $1}' /etc/passwd | \
 	tr '\n' ' '`
-echo $users
 
-for user in users
+for user in $users
 	do	
 		echo "Changing shell for user $user"
 		usermod -s /bin/zsh $user
08:53:49
#./shell.sh
Changing shell for user user
Changing shell for user ivan
Changing shell for user petr
08:53:50
#vi shell.sh
--- /tmp/l3-saved-31434.5944.14924	2018-07-18 09:53:55.256495952 +0300
+++ shell.sh	2018-07-18 09:55:30.080498256 +0300
@@ -6,5 +6,5 @@
 for user in $users
 	do	
 		echo "Changing shell for user $user"
-		usermod -s /bin/zsh $user
+		usermod -s /bin/$1 $user
 	done
08:55:38
#~
Changing shell for user user
Changing shell for user ivan
Changing shell for user petr
08:55:47
#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
...
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
Debian-exim:x:101:103::/var/spool/exim4:/bin/false
user:x:1000:1000:user,,,:/home/user:/bin/bash
sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin
ivan:x:1001:1001::/home/ivan:/bin/bash
petr:x:1002:1002::/home/petr:/bin/bash
08:56:17
#vi shell.sh
--- /tmp/l3-saved-31434.4758.22813	2018-07-18 09:56:30.544478840 +0300
+++ shell.sh	2018-07-18 09:57:48.356494839 +0300
@@ -1,10 +1,11 @@
 #!/bin/bash
 
+shell=$1
 users=`awk -F: '$3>=1000 && $3!=65534{print $1}' /etc/passwd | \
 	tr '\n' ' '`
 
 for user in $users
 	do	
-		echo "Changing shell for user $user"
-		usermod -s /bin/$1 $user
+		echo "Changing shell $shell for user $user"
+		usermod -s /bin/$shell $user
 	done
08:57:48
#./shell.sh bash
Changing shell bash for user user
usermod: изменения не внесены
Changing shell bash for user ivan
usermod: изменения не внесены
Changing shell bash for user petr
usermod: изменения не внесены
08:57:51
#./shell.sh sh
Changing shell sh for user user
Changing shell sh for user ivan
Changing shell sh for user petr
08:58:05
#./shell.sh bash
Changing shell bash for user user
Changing shell bash for user ivan
Changing shell bash for user petr
08:58:07
#vi shell.sh
--- /tmp/l3-saved-31434.15707.28527	2018-07-18 10:01:12.236494036 +0300
+++ shell.sh	2018-07-18 10:02:08.904486124 +0300
@@ -1,6 +1,6 @@
 #!/bin/bash
 
-shell=$1
+shell=${1:-bash}
 users=`awk -F: '$3>=1000 && $3!=65534{print $1}' /etc/passwd | \
 	tr '\n' ' '`
 
09:02:08
#./shell.sh
Changing shell bash for user user
usermod: изменения не внесены
Changing shell bash for user ivan
usermod: изменения не внесены
Changing shell bash for user petr
usermod: изменения не внесены
09:02:12
#./shell.sh bash
Changing shell bash for user user
usermod: изменения не внесены
Changing shell bash for user ivan
usermod: изменения не внесены
Changing shell bash for user petr
usermod: изменения не внесены
09:02:19
#test 5 -eq 5

прошло 15 минут
09:17:42
#echo $?
0
09:18:49
#test 5 -eq 7

09:18:53
#echo $?
1
09:18:54
#sleep 3600
^C
09:26:06
#sleep 3600&
[1] 32314
09:26:11
#jobs
[1]+  Running                 sleep 3600 &
09:27:27
#sleep 3600
^Z
[2]+  Stopped                 sleep 3600
09:28:18
#jobs
[1]-  Running                 sleep 3600 &
[2]+  Stopped                 sleep 3600
09:28:22
#bg %2
[2]+ sleep 3600 &
09:28:34
#jobs
[1]-  Running                 sleep 3600 &
[2]+  Running                 sleep 3600 &
09:28:38
#fg %1
sleep 3600
^Z
[1]+  Stopped                 sleep 3600
09:30:27
#bg %1
[1]+ sleep 3600 &
09:30:38
#kill %1
[1]-  Завершено      sleep 3600
09:31:06
#kill %2
[2]+  Завершено      sleep 3600
09:31:08
#jobs

09:31:12
#cd /etc/init.d/

прошло 28 минут
09:59:48
#ls
acpid        checkroot-bootclean.sh  cron         hwclock.sh      kmod                   mountdevsubfs.sh       mtab.sh     rc        reboot          sendsigs  sudo       umountnfs.sh
bootlogs     checkroot.sh            exim4        kbd             motd                   mountkernfs.sh         netdiag     rc.local  rmnologin       single    udev       umountroot
bootmisc.sh  console-cyrillic        halt         keyboard-setup  mountall-bootclean.sh  mountnfs-bootclean.sh  networking  rcS       rsyslog         skeleton  udev-mtab  urandom
checkfs.sh   console-setup           hostname.sh  killprocs       mountall.sh            mountnfs.sh            procps      README    screen-cleanup  ssh       umountfs
09:59:51
#less cron
10:02:29
#cd

10:02:47
#ls
install  ip.txt  shell.sh  test  words.txt
10:03:01
#./shell.sh bash
Changing shell bash for user user
usermod: изменения не внесены
Changing shell bash for user ivan
usermod: изменения не внесены
Changing shell bash for user petr
usermod: изменения не внесены
10:05:11
#echo $users

10:05:19
#. ./shell.sh bash
Changing shell bash for user user
usermod: изменения не внесены
Changing shell bash for user ivan
usermod: изменения не внесены
Changing shell bash for user petr
usermod: изменения не внесены
10:05:29
#echo $users
user ivan petr
10:05:31
#nano /etc/nanorc
прошло 58 минут
11:04:19
## Nanorc files
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
...
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
Debian-exim:x:101:103::/var/spool/exim4:/bin/false
user:x:1000:1000:user,,,:/home/user:/bin/bash
sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin
ivan:x:1001:1001::/home/ivan:/bin/bash
petr:x:1002:1002::/home/petr:/bin/bash
прошло 110 минут
12:54:26
#chfn ivan
Изменение информации о пользователе ivan
Введите новое значение или нажмите ENTER для выбора значения по умолчанию
        Полное имя []: Ivan Ivanov
        Номер комнаты []: 9c
        Рабочий телефон []: 111
        Домашний телефон []: 111-11-11
        Другое []:
13:04:04
#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
...
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
Debian-exim:x:101:103::/var/spool/exim4:/bin/false
user:x:1000:1000:user,,,:/home/user:/bin/bash
sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin
ivan:x:1001:1001:Ivan Ivanov,9c,111,111-11-11:/home/ivan:/bin/bash
petr:x:1002:1002::/home/petr:/bin/bash
13:04:08
#finger
l3script: finger: команда не найдена
13:05:13
#apt-get finger
E: Неверная операция finger
13:05:31
#apt-get install finger
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
НОВЫЕ пакеты, которые будут установлены:
  finger
обновлено 0, установлено 1 новых пакетов, для удаления отмечено 0 пакетов, и 3 пакетов не обновлено.
Необходимо скачать 20,5 kБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 31,7 kB.
Получено:1 http://ftp.ua.debian.org/debian/ wheezy/main finger amd64 0.17-15 [20,5 kB]
Получено 20,5 kБ за 0с (272 kБ/c)
Выбор ранее не выбранного пакета finger.
(Чтение базы данных … на данный момент установлено 30128 файлов и каталогов.)
Распаковывается пакет finger (из файла …/finger_0.17-15_amd64.deb) …
Обрабатываются триггеры для man-db …
Настраивается пакет finger (0.17-15) …
13:05:45
#finger
Login     Name          Tty      Idle  Login Time   Office     Office Phone
ivan      Ivan Ivanov   pts/6    3:52  Jul 18 09:14 (192.168.15.162)
petr                    pts/7    4:50  Jul 18 09:14 (192.168.15.162)
root      root          pts/2          Jul 18 09:14 (192.168.15.162)
user      user          pts/4      11  Jul 18 09:14 (192.168.15.162)
13:05:51
#finger ivan
Login: ivan                             Name: Ivan Ivanov
Directory: /home/ivan                   Shell: /bin/bash
Office: 9c, 111                         Home Phone: 111-11-11
On since Wed Jul 18 09:14 (EEST) on pts/6 from 192.168.15.162
   3 hours 53 minutes idle
No mail.
No Plan.
13:06:43
#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:::
...
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$CkJHVC8E$ykTJUix/7qmcPBJgqnJtCHlWhYfEaImqXcQyeRrwYm6Xi4KaZSfb4FB20ocZ/VlrQzTR2wiEobMxT/OM/FXgd0:16248:0:99999:7:::
sshd:*:16248:0:99999:7:::
ivan:$6$ofhe2h/9$JjJtR8i6zP8OZ.pPVno1jf2ztUtFLTK2qPGPZdHNtgZ8XkXSzO2rLUuPDzSlNidqlHV/0FjwjNNqXeo2/hedZ/:17728:0:99999:7:::
petr:$6$QGgwaa6O$.18rCEuwehx3woKN6H6GRFyw21NU00bEBwwKM7iuL6SWK.aIKA/hjJ7MQMQfWPjI7QzW2ur7v0hc45OMi1j3Q1:17728:0:99999:7:::
13:15:48
#apt-get install john
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
  john-data
Предлагаемые пакеты:
  wordlist
НОВЫЕ пакеты, которые будут установлены:
  john john-data
обновлено 0, установлено 2 новых пакетов, для удаления отмечено 0 пакетов, и 3 пакетов не обновлено.
...
Получено:2 http://ftp.ua.debian.org/debian/ wheezy/main john amd64 1.7.8-1 [194 kB]
Получено 847 kБ за 0с (3 243 kБ/c)
Выбор ранее не выбранного пакета john-data.
(Чтение базы данных … на данный момент установлено 30135 файлов и каталогов.)
Распаковывается пакет john-data (из файла …/john-data_1.7.8-1_all.deb) …
Выбор ранее не выбранного пакета john.
Распаковывается пакет john (из файла …/john_1.7.8-1_amd64.deb) …
Обрабатываются триггеры для man-db …
Настраивается пакет john-data (1.7.8-1) …
Настраивается пакет john (1.7.8-1) …
13:18:22
#cp /etc/shadow .

13:18:54
#cat 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:::
...
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$CkJHVC8E$ykTJUix/7qmcPBJgqnJtCHlWhYfEaImqXcQyeRrwYm6Xi4KaZSfb4FB20ocZ/VlrQzTR2wiEobMxT/OM/FXgd0:16248:0:99999:7:::
sshd:*:16248:0:99999:7:::
ivan:$6$ofhe2h/9$JjJtR8i6zP8OZ.pPVno1jf2ztUtFLTK2qPGPZdHNtgZ8XkXSzO2rLUuPDzSlNidqlHV/0FjwjNNqXeo2/hedZ/:17728:0:99999:7:::
petr:$6$QGgwaa6O$.18rCEuwehx3woKN6H6GRFyw21NU00bEBwwKM7iuL6SWK.aIKA/hjJ7MQMQfWPjI7QzW2ur7v0hc45OMi1j3Q1:17728:0:99999:7:::
13:19:01
#john shadow
Created directory: /root/.john
Loaded 4 password hashes with 4 different salts (generic crypt(3) [?/64])
123              (ivan)
123              (petr)
password         (user)
guesses: 3  time: 0:00:02:46 0% (2)  c/s: 70.78  trying: justin1 - roman
Use the "--show" option to display all of the cracked passwords reliably
Session aborted
13:22:17
#cat /etc/default/useradd
# Default values for useradd(8)
#
# The SHELL variable specifies the default login shell on your
# system.
# Similar to DHSELL in adduser. However, we use "sh" here because
# useradd is a low level utility and should be as general
# as possible
SHELL=/bin/sh
#
# The default group for users
...
# EXPIRE=
#
# The SKEL variable specifies the directory containing "skeletal" user
# files; in other words, files such as a sample .profile that will be
# copied to the new user's home directory when it is created.
# SKEL=/etc/skel
#
# Defines whether the mail spool should be created while
# creating the account
# CREATE_MAIL_SPOOL=yes
прошло 12 минут
13:34:56
#cat /etc/login.defs
#
# /etc/login.defs - Configuration control definitions for the login package.
#
# Three items must be defined:  MAIL_DIR, ENV_SUPATH, and ENV_PATH.
# If unspecified, some arbitrary (and possibly incorrect) value will
# be assumed.  All other items are optional - if not specified then
# the described action or option will be inhibited.
#
# Comment lines (lines beginning with "#") and blank lines are ignored.
#
...
# These options are no more handled by shadow.    #
#                                                 #
# Shadow utilities will display a warning if they #
# still appear.                                   #
#                                                 #
###################################################
# CLOSE_SESSIONS
# LOGIN_STRING
# NO_PASSWORD_CONSOLE
# QMAIL_DIR
13:38:48
#vi /etc/login.defs
13:41:49
#SYS_GID_MIN 100
groff/  group   group-
13:41:49
#cat /etc/gro
groff/  group   group-
13:41:49
#cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
...
games:x:60:
users:x:100:
nogroup:x:65534:
libuuid:x:101:
crontab:x:102:
Debian-exim:x:103:
ssh:x:104:
user:x:1000:
ivan:x:1001:
petr:x:1002:
13:47:05
#groupadd developers

13:50:38
#cat /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
...
users:x:100:
nogroup:x:65534:
libuuid:x:101:
crontab:x:102:
Debian-exim:x:103:
ssh:x:104:
user:x:1000:
ivan:x:1001:
petr:x:1002:
developers:x:1003:
13:50:50
#gpasswd -M ivan,petr developers

13:52:12
#id ivan
uid=1001(ivan) gid=1001(ivan) группы=1001(ivan),1003(developers)
13:52:57
#mkdir /opt/public

прошло 57 минут
14:50:12
#ls -l
итого 32
-rw-r--r-- 1 root root 5268 Окт 13  2014 install
-rw-r--r-- 1 root root  104 Июл 17 14:08 ip.txt
-rw-r----- 1 root root 1029 Июл 18 14:18 shadow
-rwxr--r-- 1 root root  217 Июл 18 10:02 shell.sh
-rw-r--r-- 1 root root 5268 Июл 16 15:20 test
-rw-r--r-- 1 root root   37 Июл 17 14:31 words.txt
14:50:35
#ls -l /opt/public/
итого 0
14:50:52
#ls -l /opt/
итого 4
drwxr-xr-x 2 root root 4096 Июл 18 15:50 public
14:50:58
#chmod o+w /opt/public/

14:51:18
#cd /opt/public/

14:51:57
#>file1

14:52:11
#ls
file1
14:52:23
#chmod -t .

14:56:35
#cd ..

14:56:40
#ls -l
итого 4
drwxr-xrwx 2 root root 4096 Июл 18 15:53 public
14:56:45
#chmod -t public/

14:57:02
#ls -l
итого 4
drwxr-xrwx 2 root root 4096 Июл 18 15:53 public
14:57:04
#rm public/
rm: невозможно удалить «public/»: Это каталог
14:57:41
#rm -f public/
rm: невозможно удалить «public/»: Это каталог
14:57:48
#clear

14:57:55
#chmod +t /public
chmod: невозможно получить доступ к «/public»: Нет такого файла или каталога
14:58:35
#ls -l
итого 4
drwxr-xrwx 2 root root 4096 Июл 18 15:53 public
14:58:44
#chmod +t /publicclear^C

14:59:53
#clear

14:59:55
#ls -l
итого 4
drwxr-xrwx 2 root root 4096 Июл 18 15:53 public
15:00:04
#chmod u+s `which cat`

15:10:01
#chmod u-s `which cat`

15:11:14
#find / -perm -4000 2> /dev/null
/usr/lib/openssh/ssh-keysign
/usr/lib/pt_chown
/usr/lib/eject/dmcrypt-get-device
/usr/bin/passwd
/usr/bin/sudoedit
/usr/bin/chfn
/usr/bin/gpasswd
/usr/bin/chsh
/usr/bin/newgrp
/usr/bin/sudo
/usr/sbin/exim4
/bin/mount
/bin/su
/bin/ping6
/bin/umount
/bin/ping
15:14:40
#tty
/dev/pts/2
15:18:46
#ls -l /dev/pts
итого 0
crw--w---- 1 root tty  136, 1 Июл 16 17:11 1
crw--w---- 1 root tty  136, 2 Июл 18 16:19 2
crw--w---- 1 root tty  136, 3 Июл 18 16:19 3
crw--w---- 1 user tty  136, 4 Июл 18 13:54 4
crw--w---- 1 user tty  136, 5 Июл 18 13:54 5
crw--w---- 1 ivan tty  136, 6 Июл 18 16:16 6
crw--w---- 1 petr tty  136, 7 Июл 18 09:15 7
c--------- 1 root root   5, 2 Июл 16 08:38 ptmx
15:22:02
#mesg n

15:24:42
#ls -l /dev/pts
итого 0
crw--w---- 1 root tty  136, 1 Июл 16 17:11 1
crw--w---- 1 root tty  136, 2 Июл 18 16:25 2
crw------- 1 root tty  136, 3 Июл 18 16:25 3
crw--w---- 1 user tty  136, 4 Июл 18 13:54 4
crw--w---- 1 user tty  136, 5 Июл 18 13:54 5
crw--w---- 1 ivan tty  136, 6 Июл 18 16:24 6
crw--w---- 1 petr tty  136, 7 Июл 18 09:15 7
c--------- 1 root root   5, 2 Июл 16 08:38 ptmx
15:25:09
#tty
/dev/pts/2
15:25:22
#chmod g-w tty
chmod: невозможно получить доступ к «tty»: Нет такого файла или каталога
15:27:05
#chmod g-w /dev/pts/2

15:27:17
#ls -l /dev/pts
итого 0
crw--w---- 1 root tty  136, 1 Июл 16 17:11 1
crw------- 1 root tty  136, 2 Июл 18 16:27 2
crw------- 1 root tty  136, 3 Июл 18 16:27 3
crw--w---- 1 user tty  136, 4 Июл 18 13:54 4
crw--w---- 1 user tty  136, 5 Июл 18 13:54 5
crw--w---- 1 ivan tty  136, 6 Июл 18 16:24 6
crw--w---- 1 petr tty  136, 7 Июл 18 09:15 7
c--------- 1 root root   5, 2 Июл 16 08:38 ptmx
15:27:20
#clear

15:29:56
#cat ~/mymotd
cat: /root/mymotd: Нет такого файла или каталога
15:30:38
#echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" > /etc/motd
echo "cat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotd" > /etc/motd
15:32:07
#cat /etc/motd
cat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotd
15:33:00
#ca
cal        calendar   caller     captoinfo  case       cat        catchsegv  catman
15:33:00
#ls -l
итого 4
drwxr-xrwx 2 root root 4096 Июл 18 15:53 public

Файлы

  • /etc/default/useradd
  • /etc/gro
  • /etc/group
  • /etc/login.defs
  • /etc/motd
  • /etc/passwd
  • /etc/shadow
  • shadow
  • /etc/default/useradd
    >
    # Default values for useradd(8)
    #
    # The SHELL variable specifies the default login shell on your
    # system.
    # Similar to DHSELL in adduser. However, we use "sh" here because
    # useradd is a low level utility and should be as general
    # as possible
    SHELL=/bin/sh
    #
    # The default group for users
    # 100=users on Debian systems
    # Same as USERS_GID in adduser
    # This argument is used when the -n flag is specified.
    # The default behavior (when -n and -g are not specified) is to create a
    # primary user group with the same name as the user being added to the
    # system.
    # GROUP=100
    #
    # The default home directory. Same as DHOME for adduser
    # HOME=/home
    #
    # The number of days after a password expires until the account
    # is permanently disabled
    # INACTIVE=-1
    #
    # The default expire date
    # EXPIRE=
    #
    # The SKEL variable specifies the directory containing "skeletal" user
    # files; in other words, files such as a sample .profile that will be
    # copied to the new user's home directory when it is created.
    # SKEL=/etc/skel
    #
    # Defines whether the mail spool should be created while
    # creating the account
    # CREATE_MAIL_SPOOL=yes
    
    /etc/gro
    >
    groff/  group   group-
    
    /etc/group
    >
    root:x:0:
    daemon:x:1:
    bin:x:2:
    sys:x:3:
    adm:x:4:
    tty:x:5:
    disk:x:6:
    lp:x:7:
    mail:x:8:
    news:x:9:
    uucp:x:10:
    man:x:12:
    proxy:x:13:
    kmem:x:15:
    dialout:x:20:
    fax:x:21:
    voice:x:22:
    cdrom:x:24:user
    floppy:x:25:user
    tape:x:26:
    sudo:x:27:
    audio:x:29:user
    dip:x:30:user
    www-data:x:33:
    backup:x:34:
    operator:x:37:
    list:x:38:
    irc:x:39:
    src:x:40:
    gnats:x:41:
    shadow:x:42:
    utmp:x:43:
    video:x:44:user
    sasl:x:45:
    plugdev:x:46:user
    staff:x:50:
    games:x:60:
    users:x:100:
    nogroup:x:65534:
    libuuid:x:101:
    crontab:x:102:
    Debian-exim:x:103:
    ssh:x:104:
    user:x:1000:
    ivan:x:1001:
    petr:x:1002:
    developers:x:1003:
    
    /etc/login.defs
    >
    #
    # /etc/login.defs - Configuration control definitions for the login package.
    #
    # Three items must be defined:  MAIL_DIR, ENV_SUPATH, and ENV_PATH.
    # If unspecified, some arbitrary (and possibly incorrect) value will
    # be assumed.  All other items are optional - if not specified then
    # the described action or option will be inhibited.
    #
    # Comment lines (lines beginning with "#") and blank lines are ignored.
    #
    # Modified for Linux.  --marekm
    # REQUIRED for useradd/userdel/usermod
    #   Directory where mailboxes reside, _or_ name of file, relative to the
    #   home directory.  If you _do_ define MAIL_DIR and MAIL_FILE,
    #   MAIL_DIR takes precedence.
    #
    #   Essentially:
    #      - MAIL_DIR defines the location of users mail spool files
    #        (for mbox use) by appending the username to MAIL_DIR as defined
    #        below.
    #      - MAIL_FILE defines the location of the users mail spool files as the
    #        fully-qualified filename obtained by prepending the user home
    #        directory before $MAIL_FILE
    #
    # NOTE: This is no more used for setting up users MAIL environment variable
    #       which is, starting from shadow 4.0.12-1 in Debian, entirely the
    #       job of the pam_mail PAM modules
    #       See default PAM configuration files provided for
    #       login, su, etc.
    #
    # This is a temporary situation: setting these variables will soon
    # move to /etc/default/useradd and the variables will then be
    # no more supported
    MAIL_DIR        /var/mail
    #MAIL_FILE      .mail
    #
    # Enable logging and display of /var/log/faillog login failure info.
    # This option conflicts with the pam_tally PAM module.
    #
    FAILLOG_ENAB            yes
    #
    # Enable display of unknown usernames when login failures are recorded.
    #
    # WARNING: Unknown usernames may become world readable.
    # See #290803 and #298773 for details about how this could become a security
    # concern
    LOG_UNKFAIL_ENAB        no
    #
    # Enable logging of successful logins
    #
    LOG_OK_LOGINS           no
    #
    # Enable "syslog" logging of su activity - in addition to sulog file logging.
    # SYSLOG_SG_ENAB does the same for newgrp and sg.
    #
    SYSLOG_SU_ENAB          yes
    SYSLOG_SG_ENAB          yes
    #
    # If defined, all su activity is logged to this file.
    #
    #SULOG_FILE     /var/log/sulog
    #
    # If defined, file which maps tty line to TERM environment parameter.
    # Each line of the file is in a format something like "vt100  tty01".
    #
    #TTYTYPE_FILE   /etc/ttytype
    #
    # If defined, login failures will be logged here in a utmp format
    # last, when invoked as lastb, will read /var/log/btmp, so...
    #
    FTMP_FILE       /var/log/btmp
    #
    # If defined, the command name to display when running "su -".  For
    # example, if this is defined as "su" then a "ps" will display the
    # command is "-su".  If not defined, then "ps" would display the
    # name of the shell actually being run, e.g. something like "-sh".
    #
    SU_NAME         su
    #
    # If defined, file which inhibits all the usual chatter during the login
    # sequence.  If a full pathname, then hushed mode will be enabled if the
    # user's name or shell are found in the file.  If not a full pathname, then
    # hushed mode will be enabled if the file exists in the user's home directory.
    #
    HUSHLOGIN_FILE  .hushlogin
    #HUSHLOGIN_FILE /etc/hushlogins
    #
    # *REQUIRED*  The default PATH settings, for superuser and normal users.
    #
    # (they are minimal, add the rest in the shell startup files)
    ENV_SUPATH      PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    ENV_PATH        PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
    #
    # Terminal permissions
    #
    #       TTYGROUP        Login tty will be assigned this group ownership.
    #       TTYPERM         Login tty will be set to this permission.
    #
    # If you have a "write" program which is "setgid" to a special group
    # which owns the terminals, define TTYGROUP to the group number and
    # TTYPERM to 0620.  Otherwise leave TTYGROUP commented out and assign
    # TTYPERM to either 622 or 600.
    #
    # In Debian /usr/bin/bsd-write or similar programs are setgid tty
    # However, the default and recommended value for TTYPERM is still 0600
    # to not allow anyone to write to anyone else console or terminal
    # Users can still allow other people to write them by issuing
    # the "mesg y" command.
    TTYGROUP        tty
    TTYPERM         0600
    #
    # Login configuration initializations:
    #
    #       ERASECHAR       Terminal ERASE character ('\010' = backspace).
    #       KILLCHAR        Terminal KILL character ('\025' = CTRL/U).
    #       UMASK           Default "umask" value.
    #
    # The ERASECHAR and KILLCHAR are used only on System V machines.
    #
    # UMASK is the default umask value for pam_umask and is used by
    # useradd and newusers to set the mode of the new home directories.
    # 022 is the "historical" value in Debian for UMASK
    # 027, or even 077, could be considered better for privacy
    # There is no One True Answer here : each sysadmin must make up his/her
    # mind.
    #
    # Prefix these values with "0" to get octal, "0x" to get hexadecimal.
    #
    ERASECHAR       0177
    KILLCHAR        025
    UMASK           022
    #
    # Password aging controls:
    #
    #       PASS_MAX_DAYS   Maximum number of days a password may be used.
    #       PASS_MIN_DAYS   Minimum number of days allowed between password changes.
    #       PASS_WARN_AGE   Number of days warning given before a password expires.
    #
    PASS_MAX_DAYS   99999
    PASS_MIN_DAYS   0
    PASS_WARN_AGE   7
    #
    # Min/max values for automatic uid selection in useradd
    #
    UID_MIN                  1000
    UID_MAX                 60000
    # System accounts
    #SYS_UID_MIN              100
    #SYS_UID_MAX              999
    #
    # Min/max values for automatic gid selection in groupadd
    #
    GID_MIN                  1000
    GID_MAX                 60000
    # System accounts
    #SYS_GID_MIN              100
    #SYS_GID_MAX              999
    #
    # Max number of login retries if password is bad. This will most likely be
    # overriden by PAM, since the default pam_unix module has it's own built
    # in of 3 retries. However, this is a safe fallback in case you are using
    # an authentication module that does not enforce PAM_MAXTRIES.
    #
    LOGIN_RETRIES           5
    #
    # Max time in seconds for login
    #
    LOGIN_TIMEOUT           60
    #
    # Which fields may be changed by regular users using chfn - use
    # any combination of letters "frwh" (full name, room number, work
    # phone, home phone).  If not defined, no changes are allowed.
    # For backward compatibility, "yes" = "rwh" and "no" = "frwh".
    #
    CHFN_RESTRICT           rwh
    #
    # Should login be allowed if we can't cd to the home directory?
    # Default in no.
    #
    DEFAULT_HOME    yes
    #
    # If defined, this command is run when removing a user.
    # It should remove any at/cron/print jobs etc. owned by
    # the user to be removed (passed as the first argument).
    #
    #USERDEL_CMD    /usr/sbin/userdel_local
    #
    # If set to yes, userdel will remove the user´s group if it contains no
    # more members, and useradd will create by default a group with the name
    # of the user.
    #
    # Other former uses of this variable such as setting the umask when
    # user==primary group are not used in PAM environments, such as Debian
    #
    USERGROUPS_ENAB yes
    #
    # Instead of the real user shell, the program specified by this parameter
    # will be launched, although its visible name (argv[0]) will be the shell's.
    # The program may do whatever it wants (logging, additional authentification,
    # banner, ...) before running the actual shell.
    #
    # FAKE_SHELL /bin/fakeshell
    #
    # If defined, either full pathname of a file containing device names or
    # a ":" delimited list of device names.  Root logins will be allowed only
    # upon these devices.
    #
    # This variable is used by login and su.
    #
    #CONSOLE        /etc/consoles
    #CONSOLE        console:tty01:tty02:tty03:tty04
    #
    # List of groups to add to the user's supplementary group set
    # when logging in on the console (as determined by the CONSOLE
    # setting).  Default is none.
    #
    # Use with caution - it is possible for users to gain permanent
    # access to these groups, even when not logged in on the console.
    # How to do it is left as an exercise for the reader...
    #
    # This variable is used by login and su.
    #
    #CONSOLE_GROUPS         floppy:audio:cdrom
    #
    # If set to "yes", new passwords will be encrypted using the MD5-based
    # algorithm compatible with the one used by recent releases of FreeBSD.
    # It supports passwords of unlimited length and longer salt strings.
    # Set to "no" if you need to copy encrypted passwords to other systems
    # which don't understand the new algorithm.  Default is "no".
    #
    # This variable is deprecated. You should use ENCRYPT_METHOD.
    #
    #MD5_CRYPT_ENAB no
    #
    # If set to MD5 , MD5-based algorithm will be used for encrypting password
    # If set to SHA256, SHA256-based algorithm will be used for encrypting password
    # If set to SHA512, SHA512-based algorithm will be used for encrypting password
    # If set to DES, DES-based algorithm will be used for encrypting password (default)
    # Overrides the MD5_CRYPT_ENAB option
    #
    # Note: It is recommended to use a value consistent with
    # the PAM modules configuration.
    #
    ENCRYPT_METHOD SHA512
    #
    # Only used if ENCRYPT_METHOD is set to SHA256 or SHA512.
    #
    # Define the number of SHA rounds.
    # With a lot of rounds, it is more difficult to brute forcing the password.
    # But note also that it more CPU resources will be needed to authenticate
    # users.
    #
    # If not specified, the libc will choose the default number of rounds (5000).
    # The values must be inside the 1000-999999999 range.
    # If only one of the MIN or MAX values is set, then this value will be used.
    # If MIN > MAX, the highest value will be used.
    #
    # SHA_CRYPT_MIN_ROUNDS 5000
    # SHA_CRYPT_MAX_ROUNDS 5000
    ################# OBSOLETED BY PAM ##############
    #                                               #
    # These options are now handled by PAM. Please  #
    # edit the appropriate file in /etc/pam.d/ to   #
    # enable the equivelants of them.
    #
    ###############
    #MOTD_FILE
    #DIALUPS_CHECK_ENAB
    #LASTLOG_ENAB
    #MAIL_CHECK_ENAB
    #OBSCURE_CHECKS_ENAB
    #PORTTIME_CHECKS_ENAB
    #SU_WHEEL_ONLY
    #CRACKLIB_DICTPATH
    #PASS_CHANGE_TRIES
    #PASS_ALWAYS_WARN
    #ENVIRON_FILE
    #NOLOGINS_FILE
    #ISSUE_FILE
    #PASS_MIN_LEN
    #PASS_MAX_LEN
    #ULIMIT
    #ENV_HZ
    #CHFN_AUTH
    #CHSH_AUTH
    #FAIL_DELAY
    ################# OBSOLETED #######################
    #                                                 #
    # These options are no more handled by shadow.    #
    #                                                 #
    # Shadow utilities will display a warning if they #
    # still appear.                                   #
    #                                                 #
    ###################################################
    # CLOSE_SESSIONS
    # LOGIN_STRING
    # NO_PASSWORD_CONSOLE
    # QMAIL_DIR
    
    /etc/motd
    >
    cat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotdcat ~/mymotd
    
    /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
    Debian-exim:x:101:103::/var/spool/exim4:/bin/false
    user:x:1000:1000:user,,,:/home/user:/bin/bash
    sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin
    ivan:x:1001:1001:Ivan Ivanov,9c,111,111-11-11:/home/ivan:/bin/bash
    petr:x:1002:1002::/home/petr:/bin/bash
    
    /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:::
    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$CkJHVC8E$ykTJUix/7qmcPBJgqnJtCHlWhYfEaImqXcQyeRrwYm6Xi4KaZSfb4FB20ocZ/VlrQzTR2wiEobMxT/OM/FXgd0:16248:0:99999:7:::
    sshd:*:16248:0:99999:7:::
    ivan:$6$ofhe2h/9$JjJtR8i6zP8OZ.pPVno1jf2ztUtFLTK2qPGPZdHNtgZ8XkXSzO2rLUuPDzSlNidqlHV/0FjwjNNqXeo2/hedZ/:17728:0:99999:7:::
    petr:$6$QGgwaa6O$.18rCEuwehx3woKN6H6GRFyw21NU00bEBwwKM7iuL6SWK.aIKA/hjJ7MQMQfWPjI7QzW2ur7v0hc45OMi1j3Q1:17728:0:99999:7:::
    
    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:::
    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$CkJHVC8E$ykTJUix/7qmcPBJgqnJtCHlWhYfEaImqXcQyeRrwYm6Xi4KaZSfb4FB20ocZ/VlrQzTR2wiEobMxT/OM/FXgd0:16248:0:99999:7:::
    sshd:*:16248:0:99999:7:::
    ivan:$6$ofhe2h/9$JjJtR8i6zP8OZ.pPVno1jf2ztUtFLTK2qPGPZdHNtgZ8XkXSzO2rLUuPDzSlNidqlHV/0FjwjNNqXeo2/hedZ/:17728:0:99999:7:::
    petr:$6$QGgwaa6O$.18rCEuwehx3woKN6H6GRFyw21NU00bEBwwKM7iuL6SWK.aIKA/hjJ7MQMQfWPjI7QzW2ur7v0hc45OMi1j3Q1:17728:0:99999:7:::
    

    Статистика

    Время первой команды журнала08:48:18 2018- 7-18
    Время последней команды журнала15:33:00 2018- 7-18
    Количество командных строк в журнале101
    Процент команд с ненулевым кодом завершения, %11.88
    Процент синтаксически неверно набранных команд, % 0.99
    Суммарное время работы с терминалом *, час 2.98
    Количество командных строк в единицу времени, команда/мин 0.57
    Частота использования команд
    ls14|=============| 13.46%
    cat11|==========| 10.58%
    chmod9|========| 8.65%
    shell.sh8|=======| 7.69%
    vi6|=====| 5.77%
    echo5|====| 4.81%
    cd4|===| 3.85%
    jobs4|===| 3.85%
    sleep3|==| 2.88%
    apt-get3|==| 2.88%
    finger3|==| 2.88%
    clear3|==| 2.88%
    rm2|=| 1.92%
    bg2|=| 1.92%
    tty2|=| 1.92%
    kill2|=| 1.92%
    test2|=| 1.92%
    fg1|| 0.96%
    mkdir1|| 0.96%
    groupadd1|| 0.96%
    mesg1|| 0.96%
    cp1|| 0.96%
    ca1|| 0.96%
    #1|| 0.96%
    chfn1|| 0.96%
    file11|| 0.96%
    nano1|| 0.96%
    .1|| 0.96%
    ~1|| 0.96%
    find1|| 0.96%
    gpasswd1|| 0.96%
    SYS_GID_MIN1|| 0.96%
    null1|| 0.96%
    >1|| 0.96%
    john1|| 0.96%
    /etc/motd1|| 0.96%
    id1|| 0.96%
    less1|| 0.96%
    ____
    *) Интервалы неактивности длительностью 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$