/l3/users/16-07-2018/NT-Ladm/debian2.net.nt/root :1 :2 :3 :4 :5 |
|
#useradd ivan
|
#echo $?
0 |
#useradd ivan
useradd: пользователь «ivan» уже существует |
#echo $?
9 |
#useradd --help
ÐÑполÑзование: useradd [паÑамеÑÑÑ] ÐÐÐ seradd -D useradd -D [паÑамеÑÑÑ] ÐаÑамеÑÑÑ: -b, --base-dir ÐÐÐ_ÐÐТ базовÑй каÑалог Ð´Ð»Ñ Ð´Ð¾Ð¼Ð°Ñнего каÑалога новой ÑÑÑÑной запиÑи -c, --comment ÐÐÐÐÐÐТÐÐ ÐРполе GECOS новой ÑÑÑÑной запиÑи -d, --home-dir ÐÐÐ_ÐÐТ домаÑний каÑалог новой ÑÑÑÑной запиÑи -D, --defaults показаÑÑ Ð¸Ð»Ð¸ измениÑÑ Ð½Ð°ÑÑÑойки по ÑмолÑÐ°Ð½Ð¸Ñ Ð´Ð»Ñ useradd ... -p, --password ÐÐÐ ÐÐÑÑной запиÑи -r, --system ÑоздаÑÑ ÑиÑÑемнÑÑ ÑÑÑÑнÑÑ Ð·Ð°Ð¿Ð¸ÑÑ -R, --root ÐÐТ_CHROOT каÑалог, в коÑоÑÑй вÑполнÑеÑÑÑ chroot -s, --shell ÐÐÐРновой ÑÑÑÑной запиÑи -u, --uid UID полÑзоваÑелÑÑкий ID новой ÑÑÑÑной запиÑи -U, --user-group ÑоздаÑÑ Ð³ÑÑÐ¿Ð¿Ñ Ñ Ñем же именем ÑÑо и Ñ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ -Z, --selinux-user SEUSER иÑполÑзоваÑÑ Ñказанного SEUSER Ð´Ð»Ñ Ð¿Ð¾Ð»ÑзоваÑелÑÑкого ÑопоÑÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ SELinux |
#LANG=''
|
#useradd --help
Usage: useradd [options] LOGIN useradd -D useradd -D [options] Options: -b, --base-dir BASE_DIR base directory for the home directory of the new account -c, --comment COMMENT GECOS field of the new account -d, --home-dir HOME_DIR home directory of the new account -D, --defaults print or change default useradd configuration -e, --expiredate EXPIRE_DATE expiration date of the new account ... the user -o, --non-unique allow to create users with duplicate (non-unique) UID -p, --password PASSWORD encrypted password of the new account -r, --system create a system account -R, --root CHROOT_DIR directory to chroot into -s, --shell SHELL login shell of the new account -u, --uid UID user ID of the new account -U, --user-group create a group with the same name as the user -Z, --selinux-user SEUSER use a specific SEUSER for the SELinux user mapping |
#man useradd
|
#passwd ivan
Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully |
#userdel ivan
|
#echo $?
0 |
#useradd -m -s /bin/bash ivan
|
#passwd ivan
Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully |
#useradd -m -s /bin/bash petr
|
#passwd petr
Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully |
#who
root pts/0 Jul 16 09:55 (192.168.15.128) ivan pts/2 Jul 16 10:41 (192.168.15.128) petr pts/3 Jul 16 10:44 (192.168.15.128) |
#cd /
|
#ls
bin boot dev etc home initrd.img lib lib32 lib64 lost+found media mnt opt proc root run sbin selinux srv sys tmp usr var vmlinuz |
#ls -l
total 84 drwxr-xr-x 2 root root 4096 Oct 13 2014 bin drwxr-xr-x 3 root root 4096 Oct 13 2014 boot drwxr-xr-x 12 root root 2960 Jul 16 08:39 dev drwxr-xr-x 68 root root 4096 Jul 16 10:44 etc drwxr-xr-x 5 root root 4096 Jul 16 10:44 home lrwxrwxrwx 1 root root 30 Jun 27 2014 initrd.img -> /boot/initrd.img-3.2.0-4-amd64 drwxr-xr-x 13 root root 4096 Oct 15 2014 lib drwxr-xr-x 2 root root 4096 Oct 15 2014 lib32 drwxr-xr-x 2 root root 4096 Oct 13 2014 lib64 ... drwx------ 5 root root 4096 Jul 16 09:59 root drwxr-xr-x 12 root root 420 Jul 16 08:39 run drwxr-xr-x 2 root root 4096 Oct 13 2014 sbin drwxr-xr-x 2 root root 4096 Jun 10 2012 selinux drwxr-xr-x 2 root root 4096 Jun 27 2014 srv drwxr-xr-x 13 root root 0 Jul 16 08:39 sys drwxrwxrwt 2 root root 4096 Jul 16 10:51 tmp drwxr-xr-x 11 root root 4096 Oct 15 2014 usr drwxr-xr-x 11 root root 4096 Jun 27 2014 var lrwxrwxrwx 1 root root 26 Jun 27 2014 vmlinuz -> boot/vmlinuz-3.2.0-4-amd64 |
#cd ivan
l3script: cd: ivan: No such file or directory |
#cd root/
|
#cd //
|
#ls
bin boot dev etc home initrd.img lib lib32 lib64 lost+found media mnt opt proc root run sbin selinux srv sys tmp usr var vmlinuz |
#ls /
bin boot dev etc home initrd.img lib lib32 lib64 lost+found media mnt opt proc root run sbin selinux srv sys tmp usr var vmlinuz |
#cd /
|
#cd home/
|
#ls
ivan petr user |
#cd ivan/
|
#cd /
|
#cd
|
#cd /
|
#ls -l
total 84 drwxr-xr-x 2 root root 4096 Oct 13 2014 bin drwxr-xr-x 3 root root 4096 Oct 13 2014 boot drwxr-xr-x 12 root root 2960 Jul 16 08:39 dev drwxr-xr-x 68 root root 4096 Jul 16 10:44 etc drwxr-xr-x 5 root root 4096 Jul 16 10:44 home lrwxrwxrwx 1 root root 30 Jun 27 2014 initrd.img -> /boot/initrd.img-3.2.0-4-amd64 drwxr-xr-x 13 root root 4096 Oct 15 2014 lib drwxr-xr-x 2 root root 4096 Oct 15 2014 lib32 drwxr-xr-x 2 root root 4096 Oct 13 2014 lib64 ... drwx------ 5 root root 4096 Jul 16 09:59 root drwxr-xr-x 12 root root 420 Jul 16 08:39 run drwxr-xr-x 2 root root 4096 Oct 13 2014 sbin drwxr-xr-x 2 root root 4096 Jun 10 2012 selinux drwxr-xr-x 2 root root 4096 Jun 27 2014 srv drwxr-xr-x 13 root root 0 Jul 16 08:39 sys drwxrwxrwt 2 root root 4096 Jul 16 11:17 tmp drwxr-xr-x 11 root root 4096 Oct 15 2014 usr drwxr-xr-x 11 root root 4096 Jun 27 2014 var lrwxrwxrwx 1 root root 26 Jun 27 2014 vmlinuz -> boot/vmlinuz-3.2.0-4-amd64 |
#cd
|
#ls -l
total 8 -rw-r--r-- 1 root root 5268 Oct 13 2014 install |
#ls -la
total 56 drwx------ 5 root root 4096 Jul 16 09:59 . drwxr-xr-x 24 root root 4096 Oct 15 2014 .. drwx------ 2 root root 4096 Jun 27 2014 .aptitude -rw------- 1 root root 1896 Oct 15 2014 .bash_history -rw-r--r-- 1 root root 10 Jun 27 2014 .bash_profile -rw-r--r-- 1 root root 630 Jun 27 2014 .bashrc -rw-r--r-- 1 root root 51 Jul 13 14:52 .l3rc drwxr-xr-x 2 root root 4096 Jul 16 10:05 .lilalo -rw-r--r-- 1 root root 140 Nov 19 2007 .profile drwxr-xr-x 2 root root 4096 Jun 27 2014 .vim -rw------- 1 root root 5390 Jul 16 09:59 .viminfo -rw-r--r-- 1 root root 5268 Oct 13 2014 install |
#ls -la --color
total 56 drwx------ 5 root root 4096 Jul 16 09:59 . drwxr-xr-x 24 root root 4096 Oct 15 2014 .. drwx------ 2 root root 4096 Jun 27 2014 .aptitude -rw------- 1 root root 1896 Oct 15 2014 .bash_history -rw-r--r-- 1 root root 10 Jun 27 2014 .bash_profile -rw-r--r-- 1 root root 630 Jun 27 2014 .bashrc -rw-r--r-- 1 root root 51 Jul 13 14:52 .l3rc drwxr-xr-x 2 root root 4096 Jul 16 10:05 .lilalo -rw-r--r-- 1 root root 140 Nov 19 2007 .profile drwxr-xr-x 2 root root 4096 Jun 27 2014 .vim -rw------- 1 root root 5390 Jul 16 09:59 .viminfo -rw-r--r-- 1 root root 5268 Oct 13 2014 install |
#alias ls='ls --color'
|
#ls
install |
#ls -la
total 56 drwx------ 5 root root 4096 Jul 16 09:59 . drwxr-xr-x 24 root root 4096 Oct 15 2014 .. drwx------ 2 root root 4096 Jun 27 2014 .aptitude -rw------- 1 root root 1896 Oct 15 2014 .bash_history -rw-r--r-- 1 root root 10 Jun 27 2014 .bash_profile -rw-r--r-- 1 root root 630 Jun 27 2014 .bashrc -rw-r--r-- 1 root root 51 Jul 13 14:52 .l3rc drwxr-xr-x 2 root root 4096 Jul 16 10:05 .lilalo -rw-r--r-- 1 root root 140 Nov 19 2007 .profile drwxr-xr-x 2 root root 4096 Jun 27 2014 .vim -rw------- 1 root root 5390 Jul 16 09:59 .viminfo -rw-r--r-- 1 root root 5268 Oct 13 2014 install |
#alias
alias ls='ls --color' |
#ls -la /dev/
total 4 drwxr-xr-x 12 root root 2960 Jul 16 08:39 . drwxr-xr-x 24 root root 4096 Oct 15 2014 .. lrwxrwxrwx 1 root root 9 Jul 16 08:39 MAKEDEV -> /bin/true crw------T 1 root root 10, 235 Jul 16 08:39 autofs drwxr-xr-x 2 root root 280 Jul 16 08:39 block drwxr-xr-x 2 root root 60 Jul 16 08:39 bsg crw------T 1 root root 10, 234 Jul 16 08:39 btrfs-control lrwxrwxrwx 1 root root 3 Jul 16 08:39 cdrom1 -> sr0 drwxr-xr-x 2 root root 2320 Jul 16 08:39 char ... crw------- 1 root root 7, 131 Jul 16 08:39 vcsa3 crw------- 1 root root 7, 132 Jul 16 08:39 vcsa4 crw------- 1 root root 7, 133 Jul 16 08:39 vcsa5 crw------- 1 root root 7, 134 Jul 16 08:39 vcsa6 crw------- 1 root root 10, 63 Jul 16 08:39 vga_arbiter prw-r----- 1 root adm 0 Jul 16 11:17 xconsole brw-rw---T 1 root disk 202, 0 Jul 16 08:39 xvda brw-rw---T 1 root disk 202, 1 Jul 16 08:39 xvda1 brw-rw---T 1 root disk 202, 16 Jul 16 08:39 xvdb crw-rw-rw- 1 root root 1, 5 Jul 16 08:39 zero |
#who
root pts/0 Jul 16 09:55 (192.168.15.128) ivan pts/2 Jul 16 10:41 (192.168.15.128) petr pts/3 Jul 16 10:44 (192.168.15.128) user pts/4 Jul 16 10:51 (192.168.15.128) |
#echo privet > /dev/pt
ptmx pts/ |
#echo privet > /dev/pts/2
|
#mailq
|
#which who
/usr/bin/who |
#which mailq
/usr/bin/mailq |
#ls -l /usr/bin/who
-rwxr-xr-x 1 root root 55888 Jan 26 2013 /usr/bin/who |
#ls -l /usr/bin/mail
mail mail-lock mail-touchlock mail-unlock mailq mailx |
#ls -l /usr/bin/mailq
lrwxrwxrwx 1 root root 13 Jan 2 2013 /usr/bin/mailq -> ../sbin/exim4 |
#ls -l /usr/sbin/exim4
-rwsr-xr-x 1 root root 973824 Jan 2 2013 /usr/sbin/exim4 |
#ls -l /dev/cdrom1
lrwxrwxrwx 1 root root 3 Jul 16 08:39 /dev/cdrom1 -> sr0 |
#ls -l /dev/sr0
brw-rw---T 1 root cdrom 11, 0 Jul 16 08:39 /dev/sr0 |
#mkfifo /tmp/test
|
#echo $?
0 |
#ls -l /tmp/test
prw-r--r-- 1 root root 0 Jul 16 12:02 /tmp/test |
#echo prive > /tmp/test
|
#ls -l /dev/log
srw-rw-rw- 1 root root 0 Jul 16 08:39 /dev/log |
#netstat
Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 debian2.net.nt:ssh 192.168.15.128:49323 ESTABLISHED tcp 0 432 debian2.net.nt:ssh 192.168.15.128:49242 ESTABLISHED tcp 0 0 debian2.net.nt:ssh 192.168.15.128:49322 ESTABLISHED tcp 0 0 debian2.net.nt:ssh 192.168.15.128:49312 ESTABLISHED Active UNIX domain sockets (w/o servers) Proto RefCnt Flags Type State I-Node Path unix 7 [ ] DGRAM 5058 /dev/log unix 3 [ ] STREAM CONNECTED 7098 ... unix 3 [ ] STREAM CONNECTED 6904 unix 3 [ ] STREAM CONNECTED 6903 unix 2 [ ] DGRAM 6902 unix 3 [ ] STREAM CONNECTED 6723 unix 3 [ ] STREAM CONNECTED 6722 unix 2 [ ] DGRAM 6721 unix 2 [ ] DGRAM 5486 unix 2 [ ] DGRAM 5098 unix 3 [ ] DGRAM 3254 unix 3 [ ] DGRAM 3253 |
#cd /
bin/ dev/ home/ lib/ lib64/ media/ opt/ root/ sbin/ srv/ tmp/ var/ boot/ etc/ initrd.img lib32/ lost+found/ mnt/ proc/ run/ selinux/ sys/ usr/ vmlinuz |
#cd /home/ivan/
|
#cd /home/petr/
|
#cd -
/home/ivan |
#apt-get install tree
Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: tree 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 43.3 kB of archives. After this operation, 112 kB of additional disk space will be used. Get:1 http://ftp.ua.debian.org/debian/ wheezy/main tree amd64 1.6.0-1 [43.3 kB] Fetched 43.3 kB in 0s (320 kB/s) Selecting previously unselected package tree. (Reading database ... 28835 files and directories currently installed.) Unpacking tree (from .../tree_1.6.0-1_amd64.deb) ... Processing triggers for man-db ... Setting up tree (1.6.0-1) ... |
#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 |
#more install
|
#less install
|
#tail install
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 |
#tac install
show_final_message rm -rf ${temp_dir} cd / step "Adding l3-agent invocation to ~/.bash_profile " install_to_users_bash_profile $install_l3bashrc_for_this_users step "Adding l3bashrc invocation to ~/.bashrc " install_to_users_bashrc $install_l3bashrc_for_this_users step "Installing l3bashrc to users home directories" install_to_users_homes $install_l3bashrc_for_this_users 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 "Downloading perl modules for l3-agent" '{ for i in ${perl_modules}; do ${wget} ${url_perl_modules}/$i.tar.gz; done; }' step "Downloading l3-agent" '${wget} ${url_l3agent}; ${wget} ${url_l3config_pm}; ${wget} ${url_l3config}' step "Downloading l3prompt" ${wget} ${url_l3prompt} ... lilalo_context="/users/${lilalo_user}/${lab}/${hostname}" install_l3bashrc_for_this_users=${users:-"root user"} # users who will use l3agent and l3script lab=NT-LNet lilalo_user=13-10-2014 # Set this variables before installation: # ############################################################################### uname -a | egrep -qi '(freebsd|darwin)' || hostname=`hostname -f` hostname=`hostname` #!/bin/sh |
#ln install install2
|
#ls -l
total 16 -rw-r--r-- 2 root root 5268 Oct 13 2014 install -rw-r--r-- 2 root root 5268 Oct 13 2014 install2 |
#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 ... 172 apt-get install tree 173 cd 174 cat install 175 more install 176 less install 177 tail install 178 tac install 179 ln install install2 180 ls -l 181 history |
#man cp
|
#cp install test
|
#ls
install install2 test |
#which vi
/usr/bin/vi |
#which vim
/usr/bin/vim |
#ls -l /usr/bin/vi
lrwxrwxrwx 1 root root 20 Jun 27 2014 /usr/bin/vi -> /etc/alternatives/vi |
#ls -l /etc/alternatives/vi
lrwxrwxrwx 1 root root 18 Jun 27 2014 /etc/alternatives/vi -> /usr/bin/vim.basic |
#ls -l /usr/bin/vim
vim vim.basic vim.tiny vimdiff vimtutor |
#ls -l /usr/bin/vim.basic
-rwxr-xr-x 1 root root 1876072 Feb 10 2013 /usr/bin/vim.basic |
#ls -l `which vi`
lrwxrwxrwx 1 root root 20 Jun 27 2014 /usr/bin/vi -> /etc/alternatives/vi |
#vi test
|
#vi .vomrc
|
#~
|
#vi .vimrc
|
#vi .vimrc
--- /tmp/l3-saved-2410.17251.2693 2018-07-16 16:17:36.307906310 +0300 +++ .vimrc 2018-07-16 16:18:07.711904657 +0300 @@ -1,4 +1,4 @@ -set munber +set number set mouse=a colorscheme elflord set nowrap |
#vi .vimrc
|
#~
1 set number 2 set mouse=a 3 colorscheme elflord 4 set nowrap 5 syntax on ".vimrc" 5L, 64C |
#~
31 32 wget=wget5268C 33 uname -a | egrep -qi '(bsd|darwin)' && wget=fetch 34 35 normC='\033[0;39m' 36 whiteC='\033[1;37m' 37 redC='\033[0;31m' 38 greenC='\033[0;32m' 39 40 apt_get_install_deps() ... 52 then 53 true 54 else 55 echo Please install the dependencies and rerun the script 56 exit 1 57 fi 58 fi 59 } 60 61 |
# 62 step()
.vim/ .viminfo .vimrc |
#cp .vimrc ~ivan/
|
#cp .vimrc ~user/
|
#ls /etc/
X11 blkid.tab cron.weekly environment host.conf insserv.conf lilalo mailname networks profile.d rc6.d selinux sysctl.d xml acpi blkid.tab.old crontab exim4 hostname insserv.conf.d locale.alias manpath.config nsswitch.conf protocols rcS.d services systemd adduser.conf ca-certificates debconf.conf fstab hosts iproute2 locale.gen mime.types opt python reportbug.conf sgml terminfo adjtime ca-certificates.conf debian_version fstab.d hosts.allow issue localtime mke2fs.conf os-release python2.7 resolv.conf shadow timezone aliases calendar default gai.conf hosts.deny issue.net logcheck modprobe.d pam.conf rc.local rmt shadow- trafshow alternatives console-cyrillic deluser.conf groff init kbd login.defs modules pam.d rc0.d rpc shells ucf.conf apt console-setup dhcp group init.d kernel logrotate.conf motd passwd rc1.d rsyslog.conf skel udev bash.bashrc cron.d discover-modprobe.conf group- initramfs-tools kernel-img.conf logrotate.d mtab passwd- rc2.d rsyslog.d ssh ufw bash_completion cron.daily discover.conf.d grub.d inittab ld.so.cache lynx-cur nail.rc perl rc3.d screenrc ssl vim bash_completion.d cron.hourly dpkg gshadow inputrc ld.so.conf mailcap nanorc ppp rc4.d securetty staff-group-for-usr-local w3m bindresvport.blacklist cron.monthly email-addresses gshadow- insserv ld.so.conf.d mailcap.order network profile rc5.d security sysctl.conf wgetrc |
#ls -la /etc/
total 664 drwxr-xr-x 68 root root 4096 Jul 16 10:44 . drwxr-xr-x 24 root root 4096 Oct 15 2014 .. -rw------- 1 root root 0 Jun 27 2014 .pwd.lock drwxr-xr-x 3 root root 4096 Jun 27 2014 X11 drwxr-xr-x 3 root root 4096 Oct 13 2014 acpi -rw-r--r-- 1 root root 2981 Jun 27 2014 adduser.conf -rw-r--r-- 1 root root 44 Oct 15 2014 adjtime -rw-r--r-- 1 root root 196 Jun 27 2014 aliases drwxr-xr-x 2 root root 4096 Oct 13 2014 alternatives ... drwxr-xr-x 2 root root 4096 Jun 27 2014 terminfo -rw-r--r-- 1 root root 12 Jun 27 2014 timezone -rw-r--r-- 1 root root 1552 Oct 19 2012 trafshow -rw-r--r-- 1 root root 1260 May 30 2008 ucf.conf drwxr-xr-x 4 root root 4096 Jun 27 2014 udev drwxr-xr-x 3 root root 4096 Jun 27 2014 ufw drwxr-xr-x 2 root root 4096 Jun 27 2014 vim drwxr-xr-x 2 root root 4096 Jun 27 2014 w3m -rw-r--r-- 1 root root 4496 Feb 1 2014 wgetrc drwxr-xr-x 2 root root 4096 Jun 27 2014 xml |
#vim /usr/share/vim/vimrc
|
# 54
21 22 " If using a dark background within the editing area and syntax highlighting 23 " turn on this option as well 24 "set background=dark 25 26 " Uncomment the following to have Vim jump to the last position when 27 " reopening a file 28 "if has("autocmd") 29 " au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif 30 "endif ... 50 if filereadable("/etc/vim/vimrc.local") 51 source /etc/vim/vimrc.local 52 endif 53 54 set number 55 set mouse=a 56 colorscheme elflord 57 set nowrap 58 syntax on 58,10 Bot |
#!/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
Время первой команды журнала | 09:05:36 2018- 7-16 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 15:26:42 2018- 7-16 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 100 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 3.00 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 0.00 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 3.19 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 0.52 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду 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