首页 > 代码库 > linux基础必备

linux基础必备

*10.1*

[2.vim  用法 ]

 1.命令模式

下临时设定方式

  :set nu          #行号添加

  :set nonu        #取消行号

  :set mouse=a     #添加鼠标选择

  :set cursorline  #行线显示

下永久设定方式

  vim /etc/vimrc   #此文件为vim的配置文件,在此文件最后加入以上参数,且家到文件中的参数不需要:

 2.vim 命令模式下关键字搜索

 /关键字

  n向下匹配

  N向上匹配

 3.vim命令模式下字符的管理

*字符的复制

 yl     #复制一个字母

 y3l    #复制三个字母

 yw     #复制一个单词

 y3w    #复制三个单词

 yy     #复制一行

 y3y    #复制三行

 P      #复制完成后按“p”粘贴

*字符的删除

 dl     #删除一个字母

 d3l    #删除三个字母

 dw     #删除一个单词

 d3w    #删除三个单词

 dd     #删除一行

 d3d    #删除三行

*字符的剪切

 cl     #剪切一个字母

 c3l    #剪切三个字母

 cw     #剪切一个单词

 c3w    #剪切三个单词

 cc     #剪切一行

 c3c    #剪切三行

 esc-->p#剪切过后会进入插入模式,在执行粘贴动作时一定要退出插入模式

 4.vim 的可视化模式

 * 在命令模式下按“ctrl+v”进入到可视模式

 * 在可视模式下可以区域选择字符

 * 可视模式下批量添加字符

  --> ctrl+v 选中要加入字符所在列

  --> 按“I”进入插入模式,写入要加入的字符

  --> 按esc结束

 5.vim 批量修改字符

 :%s/原有字符/替换后字符     #只替换每一行中出现的第一个原有字符

 :%s/原有字符/替换后字符/g   #替换所有

 :%s/\t//g                #把全文的tab键去掉,\t表示tab键

 :%s/^\ *//g              #把全文行首的空格去掉,“^\ *”表示行首的空格

 :%s/^\#\ */#/g           #把全文#后的空格去掉

 cp /etc/kdump.conf /root/Desktop/  ---->vim kdump.conf

 6.vim 分屏功能

 ctrl+w s       #上下分屏

 ctrl+w v       #左右分屏

 ctrl+w c       #关闭光标所在屏幕

 ctrl+w 上下左右 #光标移动到指定屏幕

 7.vim 光标移动

 在命令模式下

 :数字        #移动到指定的行

 G            #文件最后一行

 gg           #文件第一行

 在插入模式下

 i            #光标所在位置插入

 I            #光标所在行行首

 a            #光标所在字符的下一个位置

 A            #光标所在行行尾

 o            #光标所在行的下一行

 O            #光标所在行的上一行

 s            #删除光标所在字符插入

 S            #删除光标所在行插入

 8.vim 退出模式

 :q      #当用vim打开文件但没有对字符作任何操作时可直接退出

 :q!     #当用vim打开文件并对字符作操作,放弃所以操作退出

 :wq     #保存退出

 :wq!    #强行保存退出

 9.vim手册

 vimtutor   #vim的手册

 :q         #退出vimtutor

  

  [3. gedit]

 ctrl n   #在gedit中打开一个新的tab

 ctrl s   #保存文件

 ctrl o   #打开文件

 ctrl x   #剪切字符

 ctrl v   #粘贴字符

 ctrl c   #复制字符

 yelp help:gedit   #gedit的图形手册

 

{第五单元}

  [1.用户理解]

 用户就是系统使用者的身份

 在系统中用户存储为若干串字符+若干个系统配置文件

 用户信息涉及到的系统配置文件:

  /etc/passwd     ##用户信息

  用户:密码:uid:gid: 说明:家目录:用户使用的shell

  /etc/shadow     ##用户认证信息

  用户:密码:最后一次密码修改时间:最短有效期:最长有效期:警告期:非活跃期:帐号到期日

  /etc/group      ##组信息

  组名称:组密码:组id:附加组成员

  /etc/gshadow    ##组认证信息

  /home/username  ##用户家目录

  /etc/skel/.*    ##用户骨架文件

 [2.用户管理]

1.用户建立

 useradd  参数       用户名字

          -u       #指定用户uid

          -g       #指定用户初始组信息,这个组必须已经存在

          -G       #指定附加组,这个组必须存在

          -c       #用户说明

          -d       #用户家目录

          -s       #用户使用的shell,/etc/shells记录了用户能使用shell的名字

2.用户删除

 userdel  -r       用户名称   #-r表示删除用户信息及用户的系统配置

3.组的建立

 groupadd   -g     组名称     #建立组

 groupdel   组名字            #删除组

 

作以上实验的监控命令:

watch -n 1 ‘tail -n 3 /etc/passwd /etc/group;echo ===;ls -l /home;echo ===;ls -l /mnt‘

 

4.用户id信息查看

 id  参数  用户名

      -u          #用户uid

      -g          #用户初始组id

      -G          #用户所有所在组id

      -n          #显示名称而不是id数字

      -a          #显示所有信息

5.用户信息更改

usermod 参数 用户

         -l      #更改用户名称

         -u      #更改uid

         -g      #更改gid

         -G      #更改附加组

         -aG     #添加附加组

         -c      #更改说明

         -d      #更改家目录指定

         -md     #更改家目录指定及家目录名称

         -s      #更改shell

         -L      #冻结帐号

         -U      #解锁

  [3.用户权力下放]

 1.在系统中超级用户可以下放普通用户不能执行的操作给普通用户

 下放权力配置文件:/etc/sudoers

 2.下放权力的方法

 *超级用户执行visudo进入编辑/etc/sudoers模式

 *格式:

 获得权限用户  主机名称=(获得到的用户身份)  命令

  student      Desktop17=(root)           /usr/bin/useradd

 3.执行下放权限命令

 sudo  命令  #如果第一次执行sudo需要输入当前用户密码

 /etc/sudoers中如果设置如下:

  student     Desktop=(root)   NOPASSWD: /usr/sbin/useradd

 表示用户调用sudo命令的时候不需要自己密码

  [4.用户认证信息的控制]

 chage  参数  用户

        -d        #用户密码组最后一次修改的时间,如果设定成0,用户登陆系统后必须修改自己的密码

        -m        #最短有效期

        -M        #最长有效期

        -W        #警告期

        -I        #用户非活跃天数

        -E        #账户到期日格式 -E “YYYY-MM-DD”

*10.2*

  {文件权限}

 [1.文件属性的查看]

  ls -l filename

  -|rw-r--r--.|1| root| root|  46 |Oct  1 05:03 |filename

  1    2       3    4     5     6       7            8

1.“-”:文件类型

 -     #普通文件

 d     #目录

 c     #字符设备

 s     #套接字

 p     #管道

 b     #快设备

 l     #连接

2.“rw-|r--|r--”:文件读取权限

 rw-|r--|r--

  @   #  $

  @所有人的权限

  #所有组的权限

  $其他人的权限

3.“1”:文件内容被记录的次数

4.“root”:文件所有人

5.“root”:文件所有组

6.“46”:文件内容的大小

7.“Oct  1 05:03”:文件最后一次被修改的时间

8.“filename”:文件名字

 [2.文件所有人所有组的管理]

 chown    username           file|dir  #更改文件所有人

 chown    username:groupname file|dir  #更改文件所有人所有组

 chown -R username           dir       #更改目录本身及里面所有内容的所有人

 chown -R groupname          dir       #更改目录本身及理念所有内容的所有组

监控命令:watch -n l ls -lR /mnt

 

  [3.文件普通权限]

 rw-|r--|r--

  u   g   o

 u:文件所有人对文件可以读写

 g:文件组成员对文件可读

 o:其他人对文件可读

 u优先匹配,g次优先,o当u,g不匹配时匹配

1 "r" 对文件:可查看文件中的字符

      对目录:可查看目录中文件的信息

2 "w" 对文件:可更改文件中的字符

      对目录:可在目录中添加删除文件

3 "x" 对文件:可运行文件内记录的程序动作

      对目录:可以进入目录中

4.字符方式修改该文件权限

 chmod [-R] <u|g|o><+|-|=><r|w|x> file|dir

 chmod u-x file1      #file1拥有者去掉x权限

 chmod g+w file1      #fule1拥有组添加w权限

 chmod u-x,g+w file1  #file1拥有者去掉x权限,fule1拥有组添加w权限

 chmod ugo-r file1    #file1的用户,组,其他人去掉r权限

 chomd ug+x,o-r file1 #file1用户和组添加x权限,其他人去掉r权限

 

5.数字方式修改该文件权限

 chmod 修改后权限值 file

 chmod   777      file

  7=rwx   6=rw-   5=r-x  4=r--  3=-wx  2=-w-  1=--x

 ** r=4   w=2   x=1 **

 rw-|r--|r--

  u   g   o

 u=rw-=4+2+0=6

 g=r--=4+0+0=4

 o=r--=4+0+0=4

 所以文件权限表示为644

  [4.系统默认权限的设定]

 设定方式

 umask     #查看系统保留权限默认为022

 umask 077 #修改该系统保留权限为077,此设定为临时设定,只在当前shell中生效

 永久设定方式:

 vim /etc/bashrc    #shell

 70     if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then

 71        umask 002  #普通用户umask

 72     else

 73        umask 077  #超级用户umask

 74     fi

 vim /etc/profile   #系统

 59     if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then

 60        umask 002  #

 61     else

 62        umask 077

 63     fi

以上两个文件umask设定值必须保持一致

 source /etc/bashrc

 source /etc/profile

让设定立即生效

  [5.特殊权限]

1.suid      #冒险位

 只针对二进制可执行文件

 文件内记录的程序产生的进程的所有人为文件所有人

 和进程发起人身份无关

设定方式:chmod u+s file

        suid=4

        chmod 4xxx file

2.sgid      #粘制位

 对文件:只针对二进制可执行文件,任何人运行二进制文件

        程序时程序产生的所有组都是文件的所有组,和程

        序发起人组的身份无关

 对目录:当目录有sgid权限后,目录中新建的所有文件的

        所有组都自动归属到目录的所有组之中,和文件建

        立者所在的组无关

设定方式:chmod g+s file|dir

        sgid=2

        chmod 2xxx file|dir

3.sticky    #强制位

 t权限:只针对与目录,当一个目录上有t权限,那么目录中的文件只能被所有人删除

设定方式:chmod o+s directory

        t=1

        chmod 777 directory

 

 

 

 

 

 



本文出自 “12106768” 博客,请务必保留此出处http://12116768.blog.51cto.com/12106768/1860264

linux基础必备