当前位置:   article > 正文

Linux-2

Linux-2

主要内容

        常用命令

        vim编辑器

        用户权限管理

1-常用命令

        什么是命令?

                指在Linux终端(命令行)中输入的内容就称之为命令.

        命令的格式:

                一个完整的命令的标准格式:Linux通用的格式

                #指令主体(空格) [选项](空格) [操作对象]

        一个指令可以包含多个选项

        操作对象也可以是多个

        1.文件处理命令

                功能描述:显示文件目录

                语法: ls 选项 【-ald】

                -a 显示所有文件,包括隐藏文件 (all)

                -l 详细信息显示

                -d 查看目录属性 (一般和l连用 可以查看详细信息)

                -h 以可读性较高的形式显示 一般和l连用 ls -lh

        2. 文件处理命令 cd(change directory)

                功能描述:切换目录

                范例: cd / 切换到根目录

                cd .. 回到上一级目录

                路径可以是相对路径也可以是绝对路径 ~代表的是当前用户的家目录

        3. 文件处理命令 pwd(print working directory)

                功能描述:显示当前所在的工作目录

                范例: pwd

        4. 文件处理命令 touch(touch)

                功能描述:创建空文件

                范例: touch newfile

                newfile可以是一个文件名也可以是一个包含文件路径的文件名

                使用touch来同时创建多个文件 touch 文件1 文件2

                注意:不能创建多层文件

        5.文件处理命令 mkdir(make directory)

                功能描述:创建新目录

                范例: mkdir newdir

                创建多层文件夹的时候使用的是 mkdir -p 文件夹/文件夹1

                当一次性创建多层不存在的目录的时候,添加-p参数,否则会报错

                一次性创建多个目录 mkdir 目录1 目录2 目录3 ….

                注意:文件颜色的含义

        6.文件处理命令 cp(copy)

                功能描述:复制文件或目录

                ​语法: cp -R [源文件或目录][目的目录]

                ​-R 复制目录

                cp [被复制的文档路径] [文档被复制到的路径]

                当使用cp命令进行文件夹复制操作的时候需要添加选项“-r”【-r表示递归复制】,

                否则目录将被忽略

                复制的时候文件可以重新命名 但是如果非必须 不建议

        7.文件处理命令 mv(move)

                功能描述:移动文件 更名

  1. 语法: mv [源文件或目录][目的目录]
  2. 范例: mv file1 file
  3. 将当前目录下文件file1更名为file
  4. $ mv file2 dir2
  5. 将文件file2 移动到目录dir2下
  6. mv 重新命名
  7. mv 【原文件名】【新文件名】
  8. -------
        8.文件处理命令 rm(remove)

                f force 强制

                功能描述:删除文件

  1. 语法: rm -r [文件或目录]
  2. -r 删除目录
  3. 范例:$ rm file3
  4. 删除文件file3
  5. $ rm -r dir1
  6. 删除目录dir1
        9.文件处理命令 cat(concatenate and display files)

                功能描述:显示文件内容

  1. 语法: cat [文件名]
  2. 范例:$ cat /etc/issue
  3. $ cat /etc/services
  4. cat还可以对文件进行合并
  5. 语法2:#cat 待合并的文件路径1 待合并的文件路径2 …. 文件路径n > 合并之后的文件路径
  6. cat testyyl.txt test2.txt > ./test3.txt
        10.文件处理命令 more

                功能描述:分页显示文件内容

  1. 语法: more[文件名]
  2. (空格)或f 显示下一页
  3. (Enter)显示下一行
  4. Q或q退出
  5. 范例:$ more /etc/issue
        11.文件处理命令 head

                功能描述: 查看文件的前几行

  1. 语法: head -num [文件名]
  2. -num 显示文件的前num行
  3. 范例:$ head -20 /etc/issue
        12.文件处理命令 tail

                功能描述:查看文件的后几行

  1. 语法: tail -num [文件名]
  2. -num 显示文件的后num行
  3. -f 动态显示文件内容
  4. 范例:$ tail -30 /etc/issue
        13.文件处理命令 wc(word count)

                功能描述:统计文本的行数、字数、字符数

  1. 语法: wc -mwl [文件名]
  2. -m 统计文本字符数
  3. -w 统计空格字数
  4. -l 统计文本行数
        14.文件处理命令 ln(link)

                        功能描述:产生链接文件

  1. 语法: ln -s [源文件][目标文件]
  2. -s 创建软链接 (soft)
  3. 范例:$ ln -s /etc/issue /issue.soft
  4. 创建文件/etc/issue的软连接/issue.soft
  5. 硬连接 (hard)
  6. $ ln /etc/issue /issue.hard
  7. 创建文件/etc/issue的硬连接/issue.hard
        15.文件搜索命令 find

                功能描述:查找文件或目录

  1. 语法:find [搜索路径] [选择项] [搜寻关键字]
  2. 范例:$ find /etc -name init
  3. 在目录/etc中查找文件init
  4. $ find / -size +104800
  5. 在根目录下查找大于100MB的文件
  6. $ find / -user root
  7. 在根目录下查找所有者为root的文件
  8. $ find /etc -ctime -1
  9. 在/etc查找24小时内被修改过属性的文件和目录
  10. $find /etc -size +163840 -a -size -204800
  11. 在/etc查找大于80MB小于100MB的文件
  12. $find /etc -name init -exec ls -l {} \;
  13. 在/etc下查找init文件并显示其详细信息
  14. -type:按照文档的类型进行搜索
  15. 文档类型:“-”表示文件(在使用find的时候需要用f来替换),“d”表示文件夹
  16. find /etc/sane.d/ -type f
  17. 搜索/etc/sane.d/目录下所有的文件
        16.文件搜索命令 grep

                功能描述:在文件中搜寻字符串匹配的行并输出

  1. 语法:grep [指定字串] [源文件]
  2. 范例:grep ftp /etc/service
  3. grep -i aaa不区分大小写aaa
  4. grep -v aaa排除关键字aaa
  5. grep -w aaa 完全匹配aaa关键字
        17.压缩解压命令 (GUN zip)

                功能描述:压缩文件

                语法:gzip 选项 [文件]

                压缩后文件格式: .gz

        18.压缩解压命令 gunzip(GUN unzip)

                功能描述:解压缩 .gz 的压缩文件

                语法:gunzip 选项 [压缩文件]

                范例: $ gunzip file1.gz

        19.压缩解压命令 tar

                功能描述:打包目录

  1. 语法:tar 选项[zcvf] [压缩文件的名字] [目录]
  2. tar -zcvf nginx.tar.gz ./
  3. -c 产生.tar打包文件
  4. -v 显示详细信息
  5. -z 打包同时压缩
  6. -f 指定压缩后的文件名
  7. 解压缩语法 tar -zxvf [指定的压缩文件] -C [目的目录]
  8. -x 解压.tar文件
  9. -v 显示详细信息
  10. -f 指定解压文件
  11. -z 解压缩
  12. 压缩后文件格式: .tar.gz
  13. 指定文件夹 -C
  14. tar -zxvf 压文件的名字 -C 指定的目录
        20.压缩解压命令 zip

                功能描述:压缩文件或目录

  1. 语法:zip 选项[-r][压缩后文件名称][文件或目录]
  2. -r 压缩目录
  3. 压缩后文件格式: .zip
        21.压缩解压命令 unzip

                功能描述:解压.zip的压缩文件

                语法:unzip [压缩文件]

                范例:$ unzip test.zip

        

        22.压缩解压命令 bzip2

                功能描述:压缩文件

                语法:bzip2 选项-k

                -k 产生压缩文件后保留原文件

                压缩后文件格式: .bz2

        23.压缩解压命令 bunzip2

                功能描述:解压缩文件

                语法:bunzip2 选项-k

                -k 解压缩文件后保留原文件

        24.权限管理命令 chmod(change the permissions mode of a file)

                功能描述:改变文件或目录权限

  1. 语法:chmod [{ugo}{+-=}{rwx}] [文件或目录]
  2. [mode=421][文件或目录]
  3. r 4 读 read
  4. w 2 写 write
  5. x 1 执行 execute
  6. 范例:$ chmod g+w file1
  7. 赋予文件file1所属组写权限
  8. $chmod 777 dir1
  9. 第一位表示文件类型。如果是—表示文件,d表示是文件夹。。。
  10. 第2-4表示当前用户对该文件具有的权限r是read读,w是write写,x表示可以执行
  11. root root
  12. 第5-7表示当前用户所在组对该文件/文件夹的权限
  13. 第8-10表示出了这个组以外的人对该文件的权限
  14. 775
        25.帮助命令 man(manual)

                功能描述:获得帮助信息

                语法:man [命令或配置文件]

                范例:$ man ls

        26.帮助命令 info(information)

                功能描述:获得帮助信息

                语法:man [任何关键字]

                范例:$ info ls

        25.帮助命令 whatis(search the whatis database for strings)

                功能描述:获得索引的简短说明信息

                语法:whatis apropos[任何关键字]

                范例:$ whatis ls

                $ apropos fstab 相当于 man -k

                ### makewhatis

                建立whatis和apropos搜索使用的数据库,当使用这两个命令发生错误时,就是数据库没有建立

         27.rpm命令

        

  1. rpm (Redhat Package Manager)
  2. -a:查询所有套件;
  3. -b<完成阶段><套件档>+或-t <完成阶段><套件档>+:设置包装套件的完成阶段,并指定套件档的文件名称;
  4. -c:只列出组态配置文件,本参数需配合"-l"参数使用;
  5. -d:只列出文本文件,本参数需配合"-l"参数使用;
  6. -e<套件档>或--erase<套件档>:删除指定的套件;
  7. -f<文件>+:查询拥有指定文件的套件;
  8. -h或--hash:套件安装时列出标记;
  9. -i:显示套件的相关信息;
  10. -i<套件档>或--install<套件档>:安装指定的套件档;
  11. -l:显示套件的文件列表;
  12. -p<套件档>+:查询指定的RPM套件档;
  13. -q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户;
  14. -R:显示套件的关联性信息;
  15. -s:显示文件状态,本参数需配合"-l"参数使用;
  16. -U<套件档>或--upgrade<套件档>:升级指定的套件档;
  17. -v:显示指令执行过程;
  18. -vv:详细显示指令执行过程,便于排错。
  19. 安装
  20. rpm -ivh xxx.rpm # 直接安装
  21. rpmrpm --force -ivh xxx.rpm # 忽略报错,强制安装
  22. 卸载
  23. [root@localhost ~]# rpm -ql tree # 查询
  24. [root@localhost ~]# rpm -e tree # 卸载
  25. [root@localhost ~]# rpm -ql tree # 查询
  26. 列出所有安装过的包
  27. [root@localhost ~]# rpm -qa
  28. 如何获得某个软件包的文件全名
  29. [root@localhost ~]# rpm -q tree
  30. rpm包中的文件安装的位置
  31. [root@localhost ~]# rpm -ql tree
  32. 哪个软件包包含这个程序
  33. [root@localhost ~]#rpm -qf `程序名` #返回软件包的全名
  34. [root@localhost ~]#rpm -qif `程序名` #返回软件包的有关信息
  35. [root@localhost ~]#rpm -qlf `程序名` #返回软件包的文件列表
  36. [root@localhost ~]# rpm -qf `shd`

        

        28.输出重定向

                一般命令的输出都会显示在终端中,有些时候需要将一些命令的执行结果想要保存到文件中进行后续的分析/统计,则这时候需要使用到的输出重定向技术。

                >:覆盖输出,会覆盖掉原先的文件内容

                >>:追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加

                语法:#正常执行的指令 > / >> 文件的路径

                注意:文件可以不存在,不存在则新建

                案例:使用覆盖重定向,保存ls -la 的执行结果,保存到当前目录下的ls.txt

        29.ps -ef 指令(重点)

                指令:ps

                作用:主要是查看服务器的进程信息

                选项含义:

                -e:等价于“-A”,表示列出全部的进程

                -f:显示全部的列(显示全字段)

vim编辑器

        安装vim

                yum -y install vim

                vim是Unix / Linux上最常用的文本编辑器而且功能非常强大。

                vim的这些优势主要体现在以下几个方面:

                1.vim拥有所有vi命令功能;

                2.vi只能在Unix / Linux,vim可以在Unix / Linux,windows系统上使用

                3.vim编辑器,自动根据文件你内容显示不同的颜色

        使用方法

                进入方式 vim filename

                进入编辑模式 i

                从编辑模式退出 按esc 再输入:wq 单击回车键

                基本上vim可以分为三种状态,分别是命令模式 (command mode)、插入模式 (Insert mode) 和底行模 式 (last line mode).

                命令行模式:在该模式下是不能对文件直接编辑,可以输入快捷键进行一些操作(控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last )

                插入模式:也称为编辑文本模式 只有在Insert mode下,才可以做文字输入,按 「ESC」键可回到命令行模式。

                底行模式: 将文件保存或退出vi,也可以设置编辑环境,如搜索、替换、保存、退出、撤销、高亮等等

                不过一般我们在 使用时把vi简化成两个模式,就是将底行模式 (last line mode)也算入命令行模式command mode)。

        插入命令

                i 在光标前插入

                I 在光标当前行开始插入

                a 在光标后插入

                A 在光标当前行末尾插入

                o 在光标当前行的下一行插入新行

                O 在光标当前行的上一行插入新行

        定位命令

                :set nu 显示行号

                :set nonu 取消行号

                gg 到文本的第一行

                G 到文本的最后一行

                :n 到文本的第n行

                $ 当前行的最后一个字符

        替换和取消命令

                u 取消上一步操作 Ctrl+r 返回到undo之前

                r 替换光标所在处字符

                R 从光标所在处开始替换,按esc结束

        删除命令

                x 删除光标所在字符

                nx 删除光标所在处后n个字符

                dd 删除光标所在行,ndd删除n行

                dG 删除光标所在行到末尾行的所有内容

                D 删除光标所在处到行尾的内容

                :5,7d 删除指定范围的行,从第5行到第7行

        常用快捷键

                Shift+ zz 保存退出,与“:wq”作用相同

                v 进入字符可视模式

                V 或 Shift + v 进入行可视模式

                Ctrl + v 进入块可视模式

快捷键

                Linux中vi编辑器的使用详解,下面的引号和括号不算啊

                光标的移动除了键盘上的上下左右键.也可以是小写模式下,按键盘上的"h,j,k,l",

                "ctrl+b":屏幕往后移动一页

                "ctrl+f":屏幕往前移动一页

                "ctrl+u":屏幕往后移动半页

                "ctrl+d":屏幕往前移动半页

                输入任何一个整数,然后输入"shift+G" 就可以到这一页的开头了.

                按键盘上的大写"G"移动到文章的最后.

                按"$"符号将光标移动到行尾

                "^"将光标移到行头

                "w":将光标移到下一行头

                b":跟"w"相反.移到上一行行头

                "e":将光标移到下一行尾.

                如果想让文本显示行号.就在【命令行】 模式下,在文本最后输入":set nu"命令.就可以了

        复制

                「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

                「yy」:复制光标所在行到缓冲区。

                「#yy」:例如,「6yy」表示拷贝从光标所在的该行"往下数"6行文字。

                将缓冲区内的字符贴到光标所在位置。

                注意:所有与"y"有关的复制命令都必须与"p"配合才能完成复制与粘贴 功能。

        查找

                用"/"加上要查找的内容.例如"/hello"或者是"?hello"也是可以的.

                替换

                「r」:替换光标所在处的字符。 ,按一下"r"然后输入要即可.

                「R」:替换光标所到之处的字符,直到按下「ESC」键为止。

        恢复上一次操作

                「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。

                按多次"u"可以执行多次恢复.就相当于"CTRL +Z"的操作.

                替换

                在命令模式下使用“s/原字符/新字符/g” 代表当前行所有

                如果想全局替换,s变为%s

        文件内全部替换:

                :%s#abc#123#g (如文件内有#,可用/替换,:%s/abc/123/g)

                --注:把abc替换成123

                (或者: %s/str1/str2/g 用str2替换文件中所有的str1)

        文件内局部替换:

                  :20,30s#abc#123(如文件内有#,可用/替换,:%s/abc/123/g)

                --注:把20行到30行内abc替换成123

用户权限管理和时间

                Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。

                用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。

                每个用户账号都拥有一个惟一的用户名和各自的密码。

                用户在登录时键入正确的用户名和密码后,就能够进入系统和自己的主目录。

                要想实现用户账号的管理,要完成的工作主要有如下几个方面:

                用户账号的添加、删除、修改以及用户密码的管理。

                用户组的管理。

                注意三个文件:

                /etc/passwd 存储用户的关键信息

                /etc/group 存储用户组的关键信息

                /etc/shadow 存储用户的密码信息

                显示当前登录的用户: whoami

用户管理

查看用户信息

使用cat命令来查看一下保存用户信息的文件 ,保存用户信息的文件保存在 /etc/passwd文件里面

cat /etc/passwd

        : 号代表含意:

                yyl:x:1000:1000:yyl:/home/yyl:/bin/bash

               root 用户名 : x 密码:0 :0 :root :/root :/bin/bash

                域分割符这个文件有7个域分别是:

                用户名:密码:用户ID:用户组ID:注释:家目录:解释器shell

                用户名:创建新用户名称,后期登录的时候需要输入;

                密码位:此密码位置一般情况都是“x”,表示密码的占位;

                用户标示号:用户的识别符

                默认组标示号:该用户所属的主组ID;

                注释:用于描述用户的信息

                家目录:用户登陆系统的默认目录,默认是在/home/下、

                解释器:等待用户进入系统之后,用户输入指令之后,该解释器会收集用户输入的指令,传递给内核处理;

                根用户都是从0开始的(第三个域)

                除了第一行root外,下面的都是操作系统的伪用户(除普通用户外)

                超级用户:(root,UID=0)

                普通用户:(UID在500到60000)

                伪用户:(UID在1到499)

                伪用户不能登录系统,而且没有宿主目录

                为什么需要伪用户:没有用户登录时,linux系统依然要运行,有很多进程在跑着,所以必须需要一些伪用户来执行那些命令

                保存密码的文件:/etc/shadow

                root:$6$SZEY4if7AdQloPZp$qCYvpjK9DQedV.vA/Da7oWciD7BvMJ.gMc7VJ7bDBrIrsawuGAOKZS1CqWQA0Gm3.G45J6iNiALw2Ypu5k422.::0:99999:7:::

                用户名:密码:更改密码的日期:密码不可被更改的天数(0随时可以更改):密码需要更新的时间:

                提前几天进行提醒

                :号的含义

  1. 帐号名称:由于密码也需要与帐号对应啊~因此, 这个档案的第一栏就是帐号,必须要与 /etc/passwd 相同才行!
  2. 密码:这个才是真正的密码,而且是 经过编码过的密码啦!
  3. 最近更动密码的日期:这个栏位记录了‘更动密码的那一天’的日期, 不过,这里展示的是数字18492 那是因为计算 Linux 日期的时间是以 1970 年 1 月 1 日作为 1 ,而 1971 年 1 月 1 日则为 366 啦! 所以这个日期是累加的那么2020年8月19日就是18492
  4. 密码不可被更动的天数: 第四个栏位记录了这个帐号的密码需要经过几天才可以被变更!如果是 0 的话, 表示密码随时可以更动的意思。这的限制是为了怕密码被某些人一改再改而设计的!如果设定为 20 天的话,那么当你设定了密码之后, 20 天之内都无法改变这个密码!
  5. 密码需要重新变更的天数: 由于害怕密码被某些‘有心人士’窃取而危害到整个系统的安全,所以有了这个栏位的设计。 你必须要在这个时间之内重新设定你的密码,否则这个帐号将会暂时失效。 而如果像上面的 99999 的话,那就表示,呵呵,密码不需要重新输入啦! 不过,如果是为了安全性,最好可以设定一段时间之后,严格要求使用者变更密码呢!
  6. 密码需要变更期限前的警告期限:当帐号的密码失效期限快要到的时候, 就是上面那个‘必须变更密码’的那个时间时, 系统会依据这个栏位的设定,发出‘警告’言论给这个帐号,提醒他‘再过 n 天你的密码就要失效了,请尽快重新设定你的密码呦!’,如上面的例子,则是密码到期之前的 7 天之内,系统会警告该用户。
  7. 密码过期的恕限时间:如果用户过了警告期限没有重新输入密码, 使得密码失效了,也就是说,你在‘必须变更密码的期限前,并没有变更你的密码!’ 那么该组密码就称为‘失效的密码’啰~怎么办?没关系,还有这个栏位的天数设计啊 意思就是说,当密码失效后,你还可以用这个密码在 n 天内进行登入的意思。 而如果在这个天数后还是没有变更密码,那么您的帐号就失效了!无法登入!
  8. 帐号失效日期:这个日期跟第三个栏位一样,都是使用 1970 年以来的总日数设定。这个栏位表示: 这个帐号在此栏位规定的日期之后,将无法再使用。 这个栏位会被使用通常应该是在‘收费服务’的系统中, 你可以规定一个日期让该帐号不能再使用啦!

                保留:最后一个栏位是保留的,看以后有没有新功能加入。

                保存用户组的文件:/etc/group

                保存用户组密码的文件:/etc/gshadow

                用户配置文件:/etc/default/useradd

        1.添加用户

                useradd [选项] 用户名

                常用选项:

                -g:表示指定用户的用户主组,选项的值可以是用户组的id,也可以是组名

                -G:表示指定用户的用户附加组,选项的值可以是用户组的id,也可以是组名

                -u:uid,用户的id(用户的标识符),系统默认会从500之后按顺序分配uid,如果不想使用系统分配的,可以通过该选项自定义

                -c comment:添加注释

                案例:创建用户 yyl 不带任何选项

                验证是否成功:

                a. 验证/etc/passwd的最后一行,查看是否有yyl的信息;

                b. 验证是否存在家目录(在Centos下创建好用户之后随之产生一个同名家目录);

                注意:在不添加选项的时候,执行useradd之后会执行一系列的操作

                a. 创建同名的家目录;

                b. 创建同名的用户组;

                创建一个用户 yzh 主组是root 附加组是yyl id是2000 注释是 yzh班级                

                案例:添加选项,创建用户lisi,让lisi属于501主组,附加组500,自选号666,注释是 lisi。

                useradd -g 501 -G 500 -u 666 lisi

                注意:查看用户的主组可以查看passwd文件,查看附加组可以查看group文件。

        2.修改用户

                usermod [选项] 用户名

                Usermod:user modify,用户修改

                常用选项:

                -g:表示指定用户的用户主组,选项的值可以是用户组的id,也可以是组名

                -G:表示指定用户的用户附加组,选项的值可以是用户组的id,也可以是组名

                -u:uid,用户的id(用户的标识符),系统默认会从500之后按顺序分配uid,如果不想使用系统分配的,可以通过该选项自定义号

                -l:修改用户名

                案例:修改yyl用户主组为500,附加组改为501

                usermod -g 500 -G 501 yyl

                案例:修改yyl用户用户名,改为yuyongli

                usermod -l 新的用户名 旧的用户名

                #usermod -l yuyongli yyl

                注意:已经登录的用户不能修改

                groups 用户名 --- 用户所在的组

        3.修改用户密码

                Linux不允许没有密码的用户登录到系统,因此前面创建的用户目前都处于锁定状态,需要设置密码之后才能登录计算机。

                passwd 用户名

                案例:设置yuyongli用户的密码

                设置密码之后在shadow文件中能够看出用户是否有密码。

                在设置用户密码之后可以登录帐号,例如此处需要登录yuyongli

        

        4.切换用户

                切换用户命令:su [用户名] (switch user)

                从root往普通用户切换不需要密码,但是反之则需要root密码;

        5.删除用户

                常用语法:userdel [选项] 用户名

                常用选项:

                -r:表示删除用户的同时,删除其家目录;

                案例:删除yuyongli用户

                注意:已经登录的yuyongli用户删除的时候提示删除失败,但是没有登录的lisi用户可以正常删除

                如果想要删除yuyongli这个用户可以强制删除

                a. ps -ef|grep yuyongli

                b. kill -9 xxx

                提示:所有跟用户操作的命令(除passwd外)只有root超级管理员有权限执行。

        6.查看用户有谁

                ls /home

        7.锁定用户:

                usermod -L 用户名

                usermod -L yyl

        8.解锁用户:

                usermod -U 用户名

用户组管理

        每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建

        用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。

        文件结构:

        用户组名:密码:用户组ID:组内用户名

        密码:X表示占位符,虽然用户组可以设置密码,但是绝大部分的情况下不设置密码;

组内用户名:表示附加组是该组的用户名称

        1.添加用户组

                常用语法:#groupadd [选项] 用户组名

                常用选项:

                -g:类似用户添加里的“-u”,-g表示选择自己设置一个自定义的用户组ID数字,如果自己不指定,则默认从1000之后递增;

                案例:使用groupadd指令创建一个新的用户组,命名为xxx

                groupadd xxx

        2.更改组名称

                groupmod [选项] 新组名 老组名

                常用选项:

                -g:类似用户修改里的“-u”,-g表示选择自己设置一个自定义的用户组ID数字

                -n:类似于用户修改“-l”,表示设置新的用户组的名称

                案例:修改Administrators用户组,将组ID从502改成520,将名称改为admins

                groupmod -g 520 -n admins Administrators

        3.删除组

                groupdel 组名

                注意:当如果需要删除一个组,但是这个组是某个用户的主组时,则不允许删除;如果确实需要删除,则先从组内移出所有用户。

        4.修改用户的组

                usermod -g 用户组 用户名

                注:-g|–gid,修改用户的gid,该组一定存在

                多组:

                usermod -G 组名,组名 用户名

                usermod -G test,root yyl

        5.给文件授权到组

                -- change group premission

                chgrp 组名 文件名

                chgrp g1 /home/test

        6.设置文件权限

                chmod 770 /home/test

                750

                用数字来表示权限(r=4,w=2,x=1,-=0)

四.时间

        查看当前时间

[root@localhost ~]# date

格式化当前的时间

[root@localhost ~]# date "+%Y-%m-%d %H:%M:%S"

2021-02-21 21:57:00

date "+%F %T"

获取之前或者之后的某个时间(备份)

#date -d "-1 day" "+%Y-%m-%d %H:%M:%S"

符号的可选值:+(之后) 或者 - (之前)

单位的可选值:day(天)、month(月份)、year(年)

%F:表示完整的年月日

%T:表示完整的时分秒

%Y:表示四位年份

%m:表示两位月份(带前导0)

%d:表示日期(带前导0)

%H:表示小时(带前导0)

%M:表示分钟(带前导0)

%S:表示秒数(带前导0)

查看硬件时间

[root@localhost ~]# hwclock

Sun 21 Feb 2021 09:59:01 PM PST -0.992879 seconds

设置当前的时间

[root@localhost ~]# date -s "2021-2-22 14:00"

Mon Feb 22 14:00:00 PST 2021

将系统时间同步到硬件时钟

[root@localhost ~]# hwclock --systohc

[root@localhost ~]# date && hwclock

时间不一致的问题:

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

总结

  1. 基础的命令

ls ll (ls -l) cd pwd cp mv rm touch mkdir find grep tar ps -ef head tail

clear kill -9

  1. vim

i 插入模式 命令模式 底行模式

:set nu

:wq

: %s/yu/new/g

G

$

  1. 用户的增删改查

/etc/passwd

useradd

usermod

userdel

/etc/group

groupadd

groupmod

groupdel

  1. 时间
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号