/l3/users/16-07-2018/NT-Ladm/debian4.net.nt/root :1 :2 :3 :4 |
|
#~
install test |
#ls -a
. .. .aptitude .bash_history .bash_profile .bashrc install .l3rc .lesshst .lilalo .profile test .vim .viminfo .vimrc |
#ls -la
итого 72 drwx------ 5 root root 4096 Июл 17 09:31 . drwxr-xr-x 24 root root 4096 Окт 15 2014 .. drwx------ 2 root root 4096 Июн 27 2014 .aptitude -rw------- 1 root root 2987 Июл 16 17:12 .bash_history -rw-r--r-- 1 root root 10 Июн 27 2014 .bash_profile -rw-r--r-- 1 root root 653 Июл 17 09:31 .bashrc -rw-r--r-- 1 root root 5268 Окт 13 2014 install -rw-r--r-- 1 root root 51 Июл 13 14:53 .l3rc -rw------- 1 root root 35 Июл 16 13:45 .lesshst drwxr-xr-x 2 root root 4096 Июл 17 09:31 .lilalo -rw-r--r-- 1 root root 140 Ноя 19 2007 .profile -rw-r--r-- 1 root root 5268 Июл 16 15:20 test drwxr-xr-x 2 root root 4096 Июн 27 2014 .vim -rw------- 1 root root 5296 Июл 17 09:31 .viminfo -rw-r--r-- 1 root root 64 Июл 16 16:16 .vimrc |
#bash
root@debian4:~# ls -a . .. .aptitude .bash_history .bash_profile .bashrc install .l3rc .lesshst .lilalo .profile test .vim .viminfo .vimrc root@debian4:~# ls -al итого 72 drwx------ 5 root root 4096 Июл 17 09:31 . drwxr-xr-x 24 root root 4096 Окт 15 2014 .. drwx------ 2 root root 4096 Июн 27 2014 .aptitude -rw------- 1 root root 2987 Июл 16 17:12 .bash_history -rw-r--r-- 1 root root 10 Июн 27 2014 .bash_profile -rw-r--r-- 1 root root 653 Июл 17 09:31 .bashrc -rw-r--r-- 1 root root 5268 Окт 13 2014 install -rw-r--r-- 1 root root 51 Июл 13 14:53 .l3rc -rw------- 1 root root 35 Июл 16 13:45 .lesshst drwxr-xr-x 2 root root 4096 Июл 17 09:31 .lilalo -rw-r--r-- 1 root root 140 Ноя 19 2007 .profile -rw-r--r-- 1 root root 5268 Июл 16 15:20 test drwxr-xr-x 2 root root 4096 Июн 27 2014 .vim -rw------- 1 root root 5296 Июл 17 09:31 .viminfo -rw-r--r-- 1 root root 64 Июл 16 16:16 .vimrc root@debian4:~# exit exit |
#ls -la
итого 72 drwx------ 5 root root 4096 Июл 17 09:31 . drwxr-xr-x 24 root root 4096 Окт 15 2014 .. drwx------ 2 root root 4096 Июн 27 2014 .aptitude -rw------- 1 root root 3005 Июл 17 09:35 .bash_history -rw-r--r-- 1 root root 10 Июн 27 2014 .bash_profile -rw-r--r-- 1 root root 653 Июл 17 09:31 .bashrc -rw-r--r-- 1 root root 5268 Окт 13 2014 install -rw-r--r-- 1 root root 51 Июл 13 14:53 .l3rc -rw------- 1 root root 35 Июл 16 13:45 .lesshst drwxr-xr-x 2 root root 4096 Июл 17 09:31 .lilalo -rw-r--r-- 1 root root 140 Ноя 19 2007 .profile -rw-r--r-- 1 root root 5268 Июл 16 15:20 test drwxr-xr-x 2 root root 4096 Июн 27 2014 .vim -rw------- 1 root root 5296 Июл 17 09:31 .viminfo -rw-r--r-- 1 root root 64 Июл 16 16:16 .vimrc |
#source .bash
.bash_history .bash_profile .bashrc |
#source .bashrc
|
#ls -la
итого 72 drwx------ 5 root root 4096 Июл 17 09:31 . drwxr-xr-x 24 root root 4096 Окт 15 2014 .. drwx------ 2 root root 4096 Июн 27 2014 .aptitude -rw------- 1 root root 3005 Июл 17 09:35 .bash_history -rw-r--r-- 1 root root 10 Июн 27 2014 .bash_profile -rw-r--r-- 1 root root 653 Июл 17 09:31 .bashrc -rw-r--r-- 1 root root 5268 Окт 13 2014 install -rw-r--r-- 1 root root 51 Июл 13 14:53 .l3rc -rw------- 1 root root 35 Июл 16 13:45 .lesshst drwxr-xr-x 2 root root 4096 Июл 17 09:31 .lilalo -rw-r--r-- 1 root root 140 Ноя 19 2007 .profile -rw-r--r-- 1 root root 5268 Июл 16 15:20 test drwxr-xr-x 2 root root 4096 Июн 27 2014 .vim -rw------- 1 root root 5296 Июл 17 09:31 .viminfo -rw-r--r-- 1 root root 64 Июл 16 16:16 .vimrc |
#echo $HIST
$HISTCMD $HISTFILE $HISTFILESIZE $HISTSIZE |
#echo $HISTSIZE
500 |
#echo $HISTFILE
/root/.bash_history |
#echo $HISTFILESIZE
500 |
#vim /etc/profile
--- /tmp/l3-saved-7422.2026.11442 2018-07-17 09:41:44.002494612 +0300 +++ /etc/profile 2018-07-17 09:49:37.842483799 +0300 @@ -35,3 +35,8 @@ done unset i fi + +HISTSIZE=2000 +HISTFILESIZE=2000 +export HISTSIZE HISTFILESIZE + |
#vim /etc/profile
|
#echo $HISTFILESIZE
2000 |
#cp ~ivan/.bashrc ~petr
|
#ls -la /etc/skel/
итого 20 drwxr-xr-x 2 root root 4096 Окт 13 2014 . drwxr-xr-x 69 root root 4096 Июл 17 09:51 .. -rw-r--r-- 1 root root 220 Дек 30 2012 .bash_logout -rw-r--r-- 1 root root 3392 Дек 30 2012 .bashrc -rw-r--r-- 1 root root 675 Дек 30 2012 .profile |
#vim /etc/skel/.bashrc
--- /tmp/l3-saved-8199.21244.10624 2018-07-17 10:10:36.266497893 +0300 +++ /etc/skel/.bashrc 2018-07-17 10:10:56.706506890 +0300 @@ -16,8 +16,8 @@ shopt -s histappend # for setting history length see HISTSIZE and HISTFILESIZE in bash(1) -HISTSIZE=1000 -HISTFILESIZE=2000 +#HISTSIZE=1000 +#HISTFILESIZE=2000 # check the window size after each command and, if necessary, # update the values of LINES and COLUMNS. |
#history
1 ifconfig 2 vim /etc/network/interfaces 3 nano /etc/network/interfaces 4 /etc/init.d/networking restart 5 ifconfig 6 route 7 ping 192.168.13.253 8 shutdown -r now 9 exit 10 ping ya.ru ... 234 vim /etc/profile 235 exit 236 l3script 237 exit 238 echo $HISTSIZE 239 echo $HISTFILESIZE 240 cp ~ivan/.bashrc ~petr 241 ls -la /etc/skel/ 242 vim /etc/skel/.bashrc 243 history |
#!227
ls -la итого 72 drwx------ 5 root root 4096 Июл 17 10:10 . drwxr-xr-x 24 root root 4096 Окт 15 2014 .. drwx------ 2 root root 4096 Июн 27 2014 .aptitude -rw------- 1 root root 3288 Июл 17 09:51 .bash_history -rw-r--r-- 1 root root 10 Июн 27 2014 .bash_profile -rw-r--r-- 1 root root 653 Июл 17 09:31 .bashrc -rw-r--r-- 1 root root 5268 Окт 13 2014 install -rw-r--r-- 1 root root 51 Июл 13 14:53 .l3rc -rw------- 1 root root 35 Июл 16 13:45 .lesshst drwxr-xr-x 2 root root 4096 Июл 17 10:10 .lilalo -rw-r--r-- 1 root root 140 Ноя 19 2007 .profile -rw-r--r-- 1 root root 5268 Июл 16 15:20 test drwxr-xr-x 2 root root 4096 Июн 27 2014 .vim -rw------- 1 root root 5484 Июл 17 10:10 .viminfo -rw-r--r-- 1 root root 64 Июл 16 16:16 .vimrc |
#cd
|
#echo "Hello $LOGNAME"
Hello root |
#echo 'Hello $LOGNAME'
Hello $LOGNAME |
#cd /bin/
|
#ls -la
итого 7420 drwxr-xr-x 2 root root 4096 Июл 17 09:16 . drwxr-xr-x 24 root root 4096 Окт 15 2014 .. -rwxr-xr-x 1 root root 975488 Сен 25 2014 bash -rwxr-xr-x 1 root root 697656 Сен 20 2012 busybox -rwxr-xr-x 1 root root 51856 Янв 26 2013 cat -rwxr-xr-x 1 root root 60000 Янв 26 2013 chgrp -rwxr-xr-x 1 root root 55872 Янв 26 2013 chmod -rwxr-xr-x 1 root root 64112 Янв 26 2013 chown -rwxr-xr-x 1 root root 10352 Апр 29 2012 chvt ... -rwxr-xr-x 1 root root 5766 Июн 20 2012 zdiff -rwxr-xr-x 1 root root 121 Июн 20 2012 zegrep -rwxr-xr-x 1 root root 121 Июн 20 2012 zfgrep -rwxr-xr-x 1 root root 2133 Июн 20 2012 zforce -rwxr-xr-x 1 root root 5914 Июн 20 2012 zgrep -rwxr-xr-x 1 root root 2039 Июн 20 2012 zless -rwxr-xr-x 1 root root 2802 Июн 20 2012 zmore -rwxr-xr-x 1 root root 5049 Июн 20 2012 znew lrwxrwxrwx 1 root root 21 Июл 17 09:16 zsh -> /etc/alternatives/zsh -rwxr-xr-x 1 root root 696880 Фев 29 2012 zsh4 |
#ls -l
итого 7412 -rwxr-xr-x 1 root root 975488 Сен 25 2014 bash -rwxr-xr-x 1 root root 697656 Сен 20 2012 busybox -rwxr-xr-x 1 root root 51856 Янв 26 2013 cat -rwxr-xr-x 1 root root 60000 Янв 26 2013 chgrp -rwxr-xr-x 1 root root 55872 Янв 26 2013 chmod -rwxr-xr-x 1 root root 64112 Янв 26 2013 chown -rwxr-xr-x 1 root root 10352 Апр 29 2012 chvt -rwxr-xr-x 1 root root 130128 Янв 26 2013 cp -rwxr-xr-x 1 root root 137336 Дек 30 2012 cpio ... -rwxr-xr-x 1 root root 5766 Июн 20 2012 zdiff -rwxr-xr-x 1 root root 121 Июн 20 2012 zegrep -rwxr-xr-x 1 root root 121 Июн 20 2012 zfgrep -rwxr-xr-x 1 root root 2133 Июн 20 2012 zforce -rwxr-xr-x 1 root root 5914 Июн 20 2012 zgrep -rwxr-xr-x 1 root root 2039 Июн 20 2012 zless -rwxr-xr-x 1 root root 2802 Июн 20 2012 zmore -rwxr-xr-x 1 root root 5049 Июн 20 2012 znew lrwxrwxrwx 1 root root 21 Июл 17 09:16 zsh -> /etc/alternatives/zsh -rwxr-xr-x 1 root root 696880 Фев 29 2012 zsh4 |
#ls
bash cp dmesg fgconsole gzip less login more nc pidof rm setupcon sync uname zcmp zmore busybox cpio dnsdomainname fgrep hostname lessecho ls mount nc.traditional ping rmdir sh tailf uncompress zdiff znew cat dash domainname findmnt ip lessfile lsblk mountpoint netcat ping6 rnano sh.distrib tar unicode_start zegrep zsh chgrp date dumpkeys fuser kbd_mode lesskey lsmod mt netstat ps run-parts sleep tempfile vdir zfgrep zsh4 chmod dd echo grep kill lesspipe mkdir mt-gnu nisdomainname pwd rzsh ss touch which zforce chown df egrep gunzip kmod ln mknod mv open rbash sed stty true ypdomainname zgrep chvt dir false gzexe ksh loadkeys mktemp nano openvt readlink setfont su umount zcat zless |
#ls k*
kbd_mode kill kmod ksh |
#ls g{zu}
ls: невозможно получить доступ к g{zu}: Нет такого файла или каталога |
#ls g{zu}*
ls: невозможно получить доступ к g{zu}*: Нет такого файла или каталога |
#ls g[zu]*
gunzip gzexe gzip |
#cd
|
#touch 321321 3165 545 322323 5454 65dd545 54s s554554dd 5sss5 d5456s
|
#ls
3165 321321 322323 545 5454 54s 5sss5 65dd545 d5456s install s554554dd test |
#shopt
autocd off cdable_vars off cdspell off checkhash off checkjobs off checkwinsize on cmdhist on compat31 off compat32 off compat40 off ... no_empty_cmd_completion off nocaseglob off nocasematch off nullglob off progcomp on promptvars on restricted_shell off shift_verbose off sourcepath on xpg_echo off |
#ls +([[:digit:]])
l3script: syntax error near unexpected token `(' |
#shopt -s extglob
|
#ls +([[:digit:]])
3165 321321 322323 545 5454 |
#rm +([[:digit:]])
|
#ls
54s 5sss5 65dd545 d5456s install s554554dd test |
#find . -mmin -5
. ./.lilalo/31484268162194212920-1531810314.script ./.lilalo/.report.dat ./.lilalo/31484268162194212920-1531810314.info ./.lilalo/report.xml |
#find . -mmin -15
. ./65dd545 ./d5456s ./.lilalo/31484268162194212920-1531810314.script ./.lilalo/.report.dat ./.lilalo/31484268162194212920-1531810314.info ./.lilalo/report.xml ./s554554dd ./54s ./5sss5 |
#find . -maxdepth 1 -mmin -15
. ./65dd545 ./d5456s ./s554554dd ./54s ./5sss5 |
#find . -maxdepth 1 -mmin -20 -type f
./65dd545 ./d5456s ./s554554dd ./54s ./5sss5 |
#find . -maxdepth 1 -mmin -20 -type f | xargs rm
|
#echo $[2+2]
4 |
#ps ax
PID TTY STAT TIME COMMAND 1 ? Ss 0:02 init [2] 2 ? S 0:00 [kthreadd] 3 ? S 0:01 [ksoftirqd/0] 5 ? S 0:00 [kworker/u:0] 6 ? S 0:00 [migration/0] 7 ? S 0:00 [watchdog/0] 8 ? S< 0:00 [cpuset] 9 ? S< 0:00 [khelper] 10 ? S 0:00 [kdevtmpfs] ... 7515 pts/5 Ss+ 0:00 l3script 8120 ? Ss 0:00 sshd: root@pts/0 8122 pts/0 Ss 0:00 -bash 8167 pts/0 S+ 0:00 script -f -c l3script -q /root/.lilalo//31484268162194212920-1531810314.script 8198 pts/0 S+ 0:00 script -f -c l3script -q /root/.lilalo//31484268162194212920-1531810314.script 8199 pts/4 Ss 0:00 l3script 8324 ? Ss 0:00 sshd: ivan [priv] 8326 ? S 0:00 sshd: ivan@pts/1 8327 pts/1 Ss+ 0:00 -bash 8680 pts/4 R+ 0:00 ps ax |
#ps ax | wc -l
67 |
#top
top - 11:17:03 up 1 day, 2:03, 4 users, load average: 0,01, 0,03, 0,05 Tasks: 65 total, 1 running, 64 sleeping, 0 stopped, 0 zombie %Cpu(s): 0,3 us, 0,3 sy, 0,0 ni, 99,0 id, 0,3 wa, 0,0 hi, 0,0 si, 0,0 st KiB Mem: 507368 total, 314220 used, 193148 free, 92588 buffers KiB Swap: 0 total, 0 used, 0 free, 113764 cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2322 root 20 0 47700 10m 1684 S 5,6 2,0 4:24.25 l3-agent 120 root 20 0 0 0 0 S 0,3 0,0 0:05.46 kworker/0:3 8198 root 20 0 18168 464 308 S 0,3 0,1 0:00.04 script 8697 root 20 0 25292 1556 1128 R 0,3 0,3 0:00.01 top ... 373 root 20 0 21244 876 468 S 0,0 0,2 0:00.00 udevd 374 root 20 0 21244 836 428 S 0,0 0,2 0:00.00 udevd 397 root 0 -20 0 0 0 S 0,0 0,0 0:00.00 kpsmoused 1861 root 20 0 115m 1556 1216 S 0,0 0,3 0:00.02 rsyslogd 1891 root 20 0 4116 652 512 S 0,0 0,1 0:00.00 acpid 1933 root 20 0 22492 896 688 S 0,0 0,2 0:00.12 cron 2209 root 20 0 49932 1252 640 S 0,0 0,2 0:00.01 sshd 2236 Debian-e 20 0 46808 1040 584 S 0,0 0,2 0:00.02 exim4 2263 root 20 0 18368 964 812 S 0,0 0,2 0:00.01 getty 2264 root 20 0 18368 972 812 S 0,0 0,2 0:00.00 getty |
#echo ${ps ax | wc -l -3}
l3script: ${ps ax | wc -l -3}: bad substitution |
#echo $[ps ax | wc -l -3]
l3script: ps ax | wc -l -3: синтаксическая ошибка в выражение (error token is "ax | wc -l -3") |
#echo $[`ps ax | wc -l` -3]
65 |
#lsattr ~ivan/files
-------------e-- /home/ivan/files |
#chattr +a ~ivan/files
|
#chattr -a ~ivan/files
|
#chattr +i ~ivan/files
|
#chattr -i ~ivan/files
|
#cd
|
#cat install
#!/bin/sh hostname=`hostname` uname -a | egrep -qi '(freebsd|darwin)' || hostname=`hostname -f` ############################################################################### # # Set this variables before installation: lilalo_user=13-10-2014 lab=NT-LNet install_l3bashrc_for_this_users=${users:-"root user"} # users who will use l3agent and l3script lilalo_context="/users/${lilalo_user}/${lab}/${hostname}" ... step "Downloading l3prompt" ${wget} ${url_l3prompt} step "Downloading l3-agent" '${wget} ${url_l3agent}; ${wget} ${url_l3config_pm}; ${wget} ${url_l3config}' step "Downloading perl modules for l3-agent" '{ for i in ${perl_modules}; do ${wget} ${url_perl_modules}/$i.tar.gz; done; }' step "Installing perl modules for l3-agent" '{ for i in ${perl_modules}; do tar xvfz $i.tar.gz; cd $i*[^z]; perl Makefile.PL; make; make install; cd ..; done; }' step "Installing l3bashrc to users home directories" install_to_users_homes $install_l3bashrc_for_this_users step "Adding l3bashrc invocation to ~/.bashrc " install_to_users_bashrc $install_l3bashrc_for_this_users step "Adding l3-agent invocation to ~/.bash_profile " install_to_users_bash_profile $install_l3bashrc_for_this_users cd / rm -rf ${temp_dir} show_final_message |
#cat install | grep `rm`
rm: пÑопÑÑен опеÑанд ÐопÑобÑйÑе «rm --help» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð±Ð¾Ð»ÐµÐµ подÑобного опиÑаниÑ. ÐÑполÑзование: grep [ÐÐÐ ÐÐÐТР]⦠ШÐÐÐФÐÐÐ rep --help» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð±Ð¾Ð»ÐµÐµ подÑобного опиÑаниÑ. |
#cat install | grep 'rm'
perl_modules="Term-VT102 Text-Iconv" normC='\033[0;39m' printf "${whiteC}""$msg""...${normC}\n" printf "${greenC}""Ok\n""${normC}" printf "${redC}""Failed\n""${normC}" For further information see http://xgu.ru/lilalo/ (in Russian). rm -rf ${temp_dir} |
#cat install | grep -w 'rm'
rm -rf ${temp_dir} |
#vim ip.txt
--- /dev/null 2018-07-16 08:39:34.615999963 +0300 +++ ip.txt 2018-07-17 14:08:40.470506553 +0300 @@ -0,0 +1,6 @@ +192.168.34.67 +172.567.87.76 +111.111.111.111 +999.99.99.9 +76.78.89.90 +1912.1345.678.688 |
#vim ip.txt
--- /tmp/l3-saved-8199.1317.27167 2018-07-17 14:08:44.102512076 +0300 +++ ip.txt 2018-07-17 14:09:33.310505241 +0300 @@ -4,3 +4,8 @@ 999.99.99.9 76.78.89.90 1912.1345.678.688 +34.456.56.1 +115.117.9.1 +000.00.00.0 +78 + |
#cat ip.txt | egrep '^(([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.)(3)'
|
#cat ip.txt | egrep '^([0-9][1,2]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$'
|
#cat ip.txt | egrep '^(([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$'
192.168.34.67 111.111.111.111 76.78.89.90 115.117.9.1 |
#vim words.txt
--- /dev/null 2018-07-16 08:39:34.615999963 +0300 +++ words.txt 2018-07-17 14:30:13.454507841 +0300 @@ -0,0 +1,11 @@ +difficult +very +mediterranian +rotor +uncle +solos +many +big +failower +fit + |
#cat words.txt | egrep '(.)(.).\2\1'
rotor solos |
#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 |
#cat /etc/passwd | awk - F: '$3>+1000'
|
#cat /etc/passwd | awk -F: '$3>+1000'
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh ivan:x:1001:1001::/home/ivan:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash |
#cat /etc/passwd | awk -F: '$3~/^100/'
libuuid:x:100:101::/var/lib/libuuid:/bin/sh user:x:1000:1000:user,,,:/home/user:/bin/bash ivan:x:1001:1001::/home/ivan:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash |
#cat /etc/passwd | awk -F: '$3~/^100[0-9]+/'
user:x:1000:1000:user,,,:/home/user:/bin/bash ivan:x:1001:1001::/home/ivan:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash |
#cat /etc/passwd | awk -F: '$3~/^100[0-9]+/{print $1}'
user ivan petr |
#sed 's/bash$/zsh/' /etc/passwd
root:x:0:0:root:/root:/bin/zsh 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/zsh sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin ivan:x:1001:1001::/home/ivan:/bin/zsh petr:x:1002:1002::/home/petr:/bin/zsh |
#ls -l
итого 24 -rw-r--r-- 1 root root 5268 Окт 13 2014 install -rw-r--r-- 1 root root 126 Июл 17 14:09 ip.txt -rw-r--r-- 1 root root 5268 Июл 16 15:20 test -rw-r--r-- 1 root root 70 Июл 17 14:30 words.txt |
#touch installH
|
#ls -l
итого 24 -rw-r--r-- 1 root root 5268 Окт 13 2014 install -rw-r--r-- 1 root root 0 Июл 17 16:13 installH -rw-r--r-- 1 root root 126 Июл 17 14:09 ip.txt -rw-r--r-- 1 root root 5268 Июл 16 15:20 test -rw-r--r-- 1 root root 70 Июл 17 14:30 words.txt |
#locate passwd
/etc/cron.daily/passwd /etc/exim4/passwd.client /etc/pam.d/chpasswd /etc/pam.d/passwd /etc/passwd /etc/passwd- /etc/security/opasswd /home/user/names/passwd /home/user/names/.passwd /usr/bin/gpasswd ... /usr/share/vim/vim73/syntax/passwd.vim /var/backups/passwd.bak /var/lib/dpkg/info/base-passwd.list /var/lib/dpkg/info/base-passwd.md5sums /var/lib/dpkg/info/base-passwd.postinst /var/lib/dpkg/info/passwd.conffiles /var/lib/dpkg/info/passwd.list /var/lib/dpkg/info/passwd.md5sums /var/lib/dpkg/info/passwd.postinst /var/lib/dpkg/info/passwd.preinst |
#touch install
|
#ls -d /etc/cron*
/etc/cron.d /etc/cron.daily /etc/cron.hourly /etc/cron.monthly /etc/crontab /etc/cron.weekly |
#ls -ld /etc/cron*
drwxr-xr-x 2 root root 4096 Июн 27 2014 /etc/cron.d drwxr-xr-x 2 root root 4096 Окт 13 2014 /etc/cron.daily drwxr-xr-x 2 root root 4096 Июн 27 2014 /etc/cron.hourly drwxr-xr-x 2 root root 4096 Июн 27 2014 /etc/cron.monthly -rw-r--r-- 1 root root 722 Июл 4 2012 /etc/crontab drwxr-xr-x 2 root root 4096 Июн 27 2014 /etc/cron.weekly |
#cd /etc/cron.daily/
|
#ls -l
итого 52 -rwxr-xr-x 1 root root 14985 Ноя 16 2013 apt -rwxr-xr-x 1 root root 314 Ноя 7 2012 aptitude -rwxr-xr-x 1 root root 355 Июн 11 2012 bsdmainutils -rwxr-xr-x 1 root root 256 Окт 1 2013 dpkg -rwxr-xr-x 1 root root 4125 Янв 2 2013 exim4-base -rwxr-xr-x 1 root root 2211 Янв 6 2012 locate -rwxr-xr-x 1 root root 89 Май 17 2012 logrotate -rwxr-xr-x 1 root root 1365 Июн 19 2012 man-db -rwxr-xr-x 1 root root 249 Май 26 2012 passwd |
#./locate
|
#touch installH
|
#ls
apt aptitude bsdmainutils dpkg exim4-base installH locate logrotate man-db passwd |
#rm installH
|
#vim locate
--- /tmp/l3-saved-8199.3917.15899 2018-07-17 16:19:16.766510987 +0300 +++ locate 2018-07-17 16:19:56.070516191 +0300 @@ -25,7 +25,7 @@ # netpaths which are added NETPATHS="" # run find as this user -LOCALUSER="nobody" +LOCALUSER="root" # cron.daily/find: run at this priority -- higher number means lower priority # (this is relative to the default which cron sets, which is usually +5) NICE=10 |
#./locate
|
#locate installH
/root/installH |
#cd ~ivan/
|
#ls -l
итого 20 drwxr-xr-x 2 ivan ivan 4096 Июл 16 12:50 d1 drwxr-xr-x 3 ivan ivan 4096 Июл 16 12:41 d2 -rw-r--r-- 1 ivan ivan 117 Июл 17 11:31 errors lrwxrwxrwx 1 ivan ivan 19 Июл 16 13:56 f1 -> /home/ivan/d2/d1/f2 -rw-r--r-- 1 ivan ivan 0 Июл 16 12:21 f2 -rw-r--r-- 1 ivan ivan 6767 Июл 17 11:33 files |
#tree
. ├── d1 │ └── f2 ├── d2 │ └── d1 │ ├── f2 │ ├── file3 │ ├── file4 │ ├── file5 │ ├── file6 │ └── file7 ├── errors ├── f1 -> /home/ivan/d2/d1/f2 ├── f2 └── files 3 directories, 11 files |
#find . -type f -empty
./f2 ./d2/d1/file4 ./d2/d1/f2 ./d2/d1/file5 ./d2/d1/file7 ./d2/d1/file3 ./d2/d1/file6 ./d1/f2 |
#find . -type f -empty -exec rm [] \;
rm: невозможно удалить «[]»: Нет такого файла или каталога rm: невозможно удалить «[]»: Нет такого файла или каталога rm: невозможно удалить «[]»: Нет такого файла или каталога rm: невозможно удалить «[]»: Нет такого файла или каталога rm: невозможно удалить «[]»: Нет такого файла или каталога rm: невозможно удалить «[]»: Нет такого файла или каталога rm: невозможно удалить «[]»: Нет такого файла или каталога rm: невозможно удалить «[]»: Нет такого файла или каталога |
#find . -type f -empty -exec rm {} \;
|
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::/home/ivan:/bin/bash petr:x:1002:1002::/home/petr:/bin/bash
#!/bin/sh hostname=`hostname` uname -a | egrep -qi '(freebsd|darwin)' || hostname=`hostname -f` ############################################################################### # # Set this variables before installation: lilalo_user=13-10-2014 lab=NT-LNet install_l3bashrc_for_this_users=${users:-"root user"} # users who will use l3agent and l3script lilalo_context="/users/${lilalo_user}/${lab}/${hostname}" # ############################################################################### lilalo_rc=.l3rc lilalo_home=.lilalo url_lilalo="http://xgu.ru/lilalo" url_l3bashrc="${url_lilalo}"/l3bashrc url_l3agent="${url_lilalo}"/l3-agent url_l3config_pm="${url_lilalo}"/l3config.pm url_l3config="${url_lilalo}"/l3-config url_l3prompt="${url_lilalo}"/l3prompt url_perl_modules=${url_lilalo}/ perl_modules="Term-VT102 Text-Iconv" apt_get_install_this="perl make libmodule-build-perl libc6-dev gcc" wget=wget uname -a | egrep -qi '(bsd|darwin)' && wget=fetch normC='\033[0;39m' whiteC='\033[1;37m' redC='\033[0;31m' greenC='\033[0;32m' apt_get_install_deps() { return 0 if which apt-get >& /dev/null then apt-get install -y $apt_get_install_this else echo "Please install this dependencies manually:" echo $apt_get_install_this echo "Have you installed this already (y/n)?" echo y | read answer if echo $answer | grep -q ^[yY] then true else echo Please install the dependencies and rerun the script exit 1 fi fi } step() { msg="$1" shift printf "${whiteC}""$msg""...${normC}\n" # eval "$@" 2>&1 | sed 's/^/|\ \ \ /' && printf "Ok\n" || printf "Failed\n" eval "$@" 2>&1 > log 2>&1 && \ { cat log | sed 's/^/|\ \ \ /' printf "${greenC}""Ok\n""${normC}" } || \ { cat log | sed 's/^/|\ \ \ /' printf "${redC}""Failed\n""${normC}" } } get_user_home() { uname -a | egrep -qi '(freebsd|darwin)' && pw user show "$@"| awk -F: '{print $9}' || getent passwd "$@"| awk -F: '{print $6}' } install_to_users_homes() { . l3bashrc users="$@" set -x for user in $users do user_home=`get_user_home "$user"` mkdir -p ${user_home}/${lilalo_home} mkdir /etc/lilalo/ cp l3config.pm /etc/lilalo/ cp l3-agent /usr/local/bin cp l3-config /usr/local/bin ln -s `which bash` /usr/local/bin/l3script chmod 755 /usr/local/bin/l3-{agent,config} cp l3bashrc ${user_home}/${lilalo_home} cp l3prompt ${user_home}/${lilalo_home} chmod 755 ${user_home}/${lilalo_home}/l3prompt chown -R $user ${user_home}/${lilalo_home} echo l3cd=${lilalo_context}/$user > ${user_home}/${lilalo_rc} chown -R $user ${user_home}/${lilalo_rc} done set +x } install_to_users_bashrc() { users="$@" for user in $users do user_home=`get_user_home "$user"` grep -q lilalo ${user_home}/.bashrc 2> /dev/null\ || echo "[ \$0 == l3script ] && . ${user_home}/.lilalo/l3bashrc && _l3_start" >> ${user_home}/.bashrc; chown -R ${user} ${user_home}/.bashrc done } install_to_users_bash_profile() { users="$@" for user in $users do user_home=`get_user_home "$user"` grep -q l3-agent ${user_home}/.bash_profile 2> /dev/null \ || { echo >> ${user_home}/.bash_profile ; cat ${user_home}/.bash_profile | sed '1s/^/l3-agentX/' | tr X '\n' > /tmp/$$$$l3 ; mv /tmp/$$$$l3 ${user_home}/.bash_profile; chown -R ${user} ${user_home}/.bash_profile; } done } show_usage() { cat <<USAGE Usage: $0 USAGE } show_final_message() { cat <<FINAL_MESSAGE Installation is successfully completed. Now restart your shell or relogin to start script writing. Your current lilalo context is ${lilalo_context}/USER If you use xgu.ru backend, your labs will be available at http://xgu.ru/l3/${lilalo_context} Use commands $ l3cd ${lilalo_context%/*/*}/MY-NEW-CONTEXT/${hostname}/USER $ l3pwd to change and to know your current context. For further information see http://xgu.ru/lilalo/ (in Russian). Thank you gor using LiLaLo. Happy Labbing! (don't forget to restart bash or relogin) FINAL_MESSAGE } temp_dir=/tmp/lilalo-install-temp-$$ mkdir -p ${temp_dir} cd ${temp_dir} step "Installing dependencies" apt_get_install_deps step "Downloading l3bashrc" ${wget} ${url_l3bashrc} step "Downloading l3prompt" ${wget} ${url_l3prompt} step "Downloading l3-agent" '${wget} ${url_l3agent}; ${wget} ${url_l3config_pm}; ${wget} ${url_l3config}' step "Downloading perl modules for l3-agent" '{ for i in ${perl_modules}; do ${wget} ${url_perl_modules}/$i.tar.gz; done; }' step "Installing perl modules for l3-agent" '{ for i in ${perl_modules}; do tar xvfz $i.tar.gz; cd $i*[^z]; perl Makefile.PL; make; make install; cd ..; done; }' step "Installing l3bashrc to users home directories" install_to_users_homes $install_l3bashrc_for_this_users step "Adding l3bashrc invocation to ~/.bashrc " install_to_users_bashrc $install_l3bashrc_for_this_users step "Adding l3-agent invocation to ~/.bash_profile " install_to_users_bash_profile $install_l3bashrc_for_this_users cd / rm -rf ${temp_dir} show_final_message
Время первой команды журнала | 08:31:12 2018- 7-17 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 15:28:00 2018- 7-17 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 101 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 8.91 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 0.00 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 3.41 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 0.49 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду 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