UCA-Linux系统工程师初级知识(一)【1-3】

目录

一:基础操作

1、实验-控制台切换

(1)shell(命令解释器)

(2)字符终端切换:(快捷打开不同的终端)

2、实验-查看帮助信息

3、实验-基础命令

二:用户和组

1、用户账号的常见分类:

(1)用户账号文件(保存用户名称、宿主目录、登录 Shell 等基本信息,每一行对应一个用户的账号记录)

(2)账号密码文件(保存用户的密码、账号有效期等信息,每一行对应一个用户的密码记录)

(3)useradd-添加用户账号命令

(4)passwd-设置/更改用户密码口令

(5)chage 修改帐号和密码的有效期限

2、实验-检查用户身份

(1)组账号分类:

(2)组账号管理命令:

三:文件管理 

1、实验-基础操作

2、实验-文件类型的检查

(1)文件类型

(2)文件权限

(3)文件访问控制列表

(4)链接


UCA-Linux系统工程师初级知识(二)【4-6】

UCA-Linux系统工程师中级知识(三)【7-9】​​​​​​​

一:基础操作

1、实验-控制台切换

(1)shell(命令解释器)

   shell是C语言编写的脚本语言,是用户和操作系统的桥梁;用于接受用户指令,经过shell解释,将相应的操作传递给内核,内核根据指令做出相应的处理后,再通过Shell将执行结果返回给用户

  - shell前缀
    uos@uos-PC:    ~$
    当前用户名@计算机名:当前工作目录 用户角色($普通用户 #超级用户)

  - 终端管理:
    鼠标右键->在终端中打开(快捷键:Ctrl + Alt + T)

(2)字符终端切换:(快捷打开不同的终端)

        Ctrl + Alt + F1        :图形化桌面
        Ctrl + Alt + F2        :命令行 tty2
        Ctrl + Alt + F3        :命令行 tty3
        Ctrl + Alt + F4        :命令行 tty4
        Ctrl + Alt + F5        :命令行 tty5
        Ctrl + Alt + F6        :命令行 tty6
        Alt + F1            :返回桌面模式
    查看当前控制台:who、w

2、实验-查看帮助信息

  - 命令组成:命令字 [选项] [参数]
    命令字:命令本身
    选项:决定这个命令如何执行
        短选项:单个字符选项,使用‘-’引导,同时使用多个选项用空格分隔,可组合
        长选项:多个个字符选项,使用‘--’引导,同时使用多个选项用空格分隔,不可组合
  - 帮助命令:
    man  date       #手册形式
    date --help    #有中文
    
  - 路径类型
    绝对路径:相对于根目录(/)
    相对路径:相对于当前目录

3、实验-基础命令

  - date +%F    完整日期格式,等价于 %Y(年)-%m(月)-%d(日)
  - pwd 查看当前工作目录
  - cd    /home    绝对路径,切换到/home目录
  - cd    home 相对路径
  - cd -    返回上一次工作目录
  - cd ~    返回当前用户的家目录
  - cd ..   切换上一级目录
            
  - ls  查看当前目录下内容
  - ls /home    查看/home目录下内容
  - ls -l /home 查看/home目录下内容长格式列表显示
  
  - mkdir file_test 创建file_test目录
  - mkdir -p /a/b/c 递归创建/a/b/c
  -v 显示详细
  
  - touch test.txt  创建test.txt文件
  - touch a b c 创建a、b、c三个文件
  - touch a{1..100}        批量创建a1 至 a100 的文件
  
  - cp -r /a/b/c /home  复制目录 c 到 /home
  - cp test.txt /home   复制文件 test.txt 到 /home
  
  - mv /a/b/c /home/c   移动目录 c 到 /home/c
  - mv /a? /home/c  将以a开头后面随机一位字符的文件移动到 /home/c
      
  - rm test.txt        删除test.txt文件
  - rm -f test.txt  强制删除test.txt文件不提醒
  - rm -rf file_test    强制删除file_test目录不提醒
  - rm a?   ?匹配任意一位字符
  - rm a*   * 匹配全部字符  
  
  - cat /etc/passwd        查看 passwd 文件内容
    -n 带行号查看


二:用户和组

1、用户账号的常见分类:

    超级用户:root uid=0 gid=0 权限最大。
    普通用户:uid>=500 做一般权限的系统管理,权限有限。
    程序用户:1=<uid<500 为了提升系统安全性,为了支持所对应服务对系统资源的使用,不能用于登录系统或管理系统。
UID:用户标识

(1)用户账号文件(保存用户名称、宿主目录、登录 Shell 等基本信息,每一行对应一个用户的账号记录)

    cat /etc/passwd
    uos1:x:1002:1002::/home/uos1:/bin/sh
    用户名:密码:uid:gid:用户备注:家目录:shell

(2)账号密码文件(保存用户的密码、账号有效期等信息,每一行对应一个用户的密码记录)

    cat /etc/shadow    
    root:$6$fLUXm989hDSCgPgp$jsVXwoZokQNEaNPUDCHBYR6naJ7C1:18426:0:99999:7:::
    - 用户名:
    - 使用MD5加密的密码字符串信息,*或!!时表示此用户不能登陆到系统,为空表示无密码登陆
    - 账号上次修改时间距1970年1月1日过去多少天:
    - 密码的最短有效天数,0表示不限制
    - 密码最长有效天数,99999表示不限制
    - 提前多少天警告用户口令即将过期,默认为7天
    - 密码过期后多少天禁用此用户
    - 账号失效时间,默认为空,表示永久使用
    - 保留字段

(3)useradd-添加用户账号命令

        -m  创建用户的主目录
        -c  添加备注,显示在/etc/passwd 第五字段
        -d  指定宿主目录,缺省默认为/home/用户名
        -g  指定用户的基本组名(或 gid 号)
        -G  指定用户的附加组名(或 gid 号)
        -N    取消以用户为名的组
        -s    指定用户登录shell
        -u    指定 uid 标记号
示例:
    useradd -m -d /home/haha -s /bin/bash -u 2020 uos1
    id uos1

(4)passwd-设置/更改用户密码口令

示例:
    passwd uos1

    usermod 修改用户属性
    -l:更改用户账号的登录名字
    -c:修改用户备注
    -L:锁定用户账号算计
    -U:解锁用户账户
    以下选项与 useradd 命令中的含义相同:-u、-d、-s、-c
    -s    指定用户登录shell
示例:
usermod -s /usr/sbin/nologin uos1
userdel 删除用户账号         
    -r  删除用户同时删除主目录
userdel -r uos1

(5)chage 修改帐号和密码的有效期限

    -m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。
    -M:密码保持有效的最大天数。
    -w:用户密码到期前,提前收到警告信息的天数。
    -E:帐号到期的日期。过了这天,此帐号将不可用。
     -d:上一次更改的日期。
      -i:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
      -l:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。
示例:
    useradd -m -s /bin/bash uos1
    passwd uos1     
    chage -l uos1   列出当前的设置
    chage -d 0 uos1        #设为0,切换控制台用uos1登录后立刻要求修改密码
    chage -E 2015-10-1 uos1    #切换控制台用qin1无法登陆

2、实验-检查用户身份

who 查询当前在线用户
w   查询当前在线用户的详细信息
id  显示用户ID信息
groups  查询客户所属的组

(1)组账号分类:

    基本组(主组):用户有且只能有一个基本组
    附加组:用户可以有0或n个附加组
    GID:组标识号
    组账号文件
        - /etc/group:    保存组账号基本信息
        - /etc/gshadow:保存组账号的密码信息(较少使用)

(2)组账号管理命令:

    groupadd    添加组账号
    groupdel    删除组账号
    gpasswd     管理组命令(可通过--help查看其选项)
示例:
    groupadd tx1
    groupadd tx2
    useradd -N uos1                #-N取消以用户为名的组
    usermod -g tx1 uos1         指定用户的基本组名(或 gid 号)
    id uos1
    usermod -G tx2 uos1         指定用户的附加组名(或 gid 号)
    id uos1
    groupdel tx1                  #发现不能删除
    usermod -g tx2 uos1     #用户账号移到其他组后再删除


三:文件管理 

在Linux系统中,一切皆文件(目录也是一个特殊的文件);因此对系统的管理,说到底就是对文件进行管理。

1、实验-基础操作

    touch /home/uos/Desktop/.uos    创建隐藏文件,以“.”开头的文件为隐藏文件
    ls -la /home/uos/Desktop/.uos   -a 显示所有子目录和文件信息,包括隐藏文件
    touch /home/uos/Desktop/fi\\e   \ 转义符
    touch /home/uos/Desktop/'fi\e'  双,单引号,表示之内的字符串,没有其他含义
    文件名中不能包括Linux特殊字符如“\”、“/”等(如果在文件中使用这些特殊符号可通过转义符“\”将其转义)。

2、实验-文件类型的检查

    ls -l   查看文件的详细信息
    -rw-r--r-- 1 root lonny 12 Apr 19 19:50 file1
    文件类型、文件权限、硬连接数、文件属主、文件属组、文件大小、更动时间、文件名。    

(1)文件类型

        -:表示一般文件
        d:表示目录
        l:表示软链接
        p:进程间相互通信的文件,Linux拥有一些机制来允许进程间的互相通信,这些机制称为进程间通信机制,管道(pipe)、命名管道(FIFO)、共享缓冲区、信号量、sockets信号等都是进程间常用通信机制,pipe 是用于父进程和子进程之间通信。FIFO是一个文件,允许运行在同一台计算机的进程间进行通信。
        s:表示 socket 通信套接字文件(通常用于网络数据连接)
        c:表示字符设备文件(如:键盘、鼠标、终端等,通常放在/dev下)
        b:表示块设备文件(存储数据设备文件,如:硬盘)

    file /etc/passwd    查看文件类型,text
    file /dev/sda   块设备
    file /boot/vmlinuz-4.19.0-6-amd64   内核启动镜像
    file /usr/bin/touch 可执行文件

    stat test   查看文件详细信息,更改时间等

(2)文件权限

    读权限 r:允许查看文件内容,使用4表示
    写权限 w:允许修改文件内容,使用2表示
    可执行 x:允许运行程序,使用1表示
    无权限 -:使用0表示
例如:
    drwxr-xr-x  意思是一个权限为 755 的目录
    -rw-r--r--  意思是一个权限为 644 的文件
所有权
    属主:拥有该文件的用户账号
    属组:拥有该文件的组账号

更改文件权限
    chmod   设置文件或目录的权限
    格式:
        chmod [-R] [ugoa] [+-=] [rwx] 参数
        chmod [-R] [nnn] 参数

    常用选项:
        -R:表示以递归的方式设置目录及目录下的所有子目录及文件的权限。
        u 属主
        g 属组
        o 其他人
        a 所有人
        + 添加
        - 删除
        = 重置
        nnn 数字权限,如:777 666 644 755 等

示例:
    touch 1234      
    ls -l 1234
    chmod u+x 1234  属主加可执行权限    
    chmod g=rwx 1234    重置属组权限为可读可写可执行
    chmod o+rwx 1234    给除了属主属组的其他人增加可读可写可执行
    chmod 755 1234  给文件改为755权限

更改文件属主数组
    chown   设置文件的归属(只有root用户才可以用“chown”指令来改变文件的拥有者)
    chown 属主:属组 文件名
    chown 属主.属组 文件名

示例:
    groupadd pxb    创建组pxb
    useradd -g pxb uos1 创建用户uos1并指定他的组
    useradd -g pxb uos2
    echo 12345678 > /test   创建一个文件并写入  
    chown uos1:pxb /test    更改属主属组 
    chmod 640 /test 权限修改为640“rw-r-----”,uos1权限可读可写,组权限可读,其他人没有权限

    su - uos1   切换到uos1用户
    cat /test   可查看
    echo 123 >> /test   可写
    su - uos2   切换到uos2用户
    cat /test   能读
    echo 123 >> /test   不能写
    useradd uos3    创建uos3
    su - uos3   切换用户
    cat /test   不能读
    echo 456 >> /test   不能写

管理 Linux 系统中的文件和目录,除了可以设置上述读写执行权限外,还可以使用chattr设置文件/文件夹的隐藏权限,chattr只有root用户可以使用

命令格式为:
    chattr [+-=] [属性] 文件/目录名
    
        + :在原有参数设定基础上,追加参数。
        - :在原有参数设定基础上,移除参数。
        = :更新为指定参数设定。
    属性:
        i:如果对文件设置 i 属性,那么不允许对文件进行删除、改名,也不能添加和修改数据;如果对目录设置 i 属性,那么只能修改目录下文件中的数据,但不允许建立和删除文件
        a:如果对文件设置 a 属性,那么只能在文件中増加数据,但是不能删除和修改数据;
如果对目录设置 a 属性,那么只允许在目录中建立和修改文件,但是不允许删除文件
        u:设置此属性的文件或目录,在删除时,其内容会被保存,以保证后期能够恢复,常用来防止意外删除文件或目录
        s:和 u 相反,删除文件或目录时,会被彻底删除(直接从硬盘上删除,然后用 0 填充所占用的区域),不可恢复
    
    lsattr 文件/目录    查看文件或目录的隐藏属性

示例
    touch uosfile
    lsattr uosfile

    chattr +i uosfile   不能修改,不能删除
    lsattr uosfile

    chattr -i +a uosfile
    lsattr uosfile
    echo 123 > uosfile
    echo 123 >> uosfile        只能追加,不能删除

    chattr -a uosfile 
    rm uosfile

(3)文件访问控制列表

   ACL可以为某个文件单独设置该文件具体的某用户或组的权限。

命令格式为:
    getfacl <文件名>   获取文件的访问控制信息
    setfacl 设置文件的acl
        -m 修改文件的acl
        -x 取消用户或组对文件的权限

示例:
    setfacl –m u:用户名:权限 <文件名> //设置某用户名的访问权限
    setfacl –m g:组名:权限 <文件名> //设置某个组的访问权限
    setfacl –x u:用户名 <文件名> //取消某用户名的访问权限
    setfacl –x g:组名 <文件名> //取消某个组的访问权限

实验:
    touch /var/log/uos.log
    getfacl /var/log/uos.log
    su - uos
    vim /var/log/uos.log  //不能更改
    setfacl -m u:uos:rwx /var/log/uos.log
    su - uos
    vim /var/log/uos.log  //可以进行更改
    setfacl -x u:uos /var/log/uos.log

(4)链接

1、软链接(符号链接)
    为源文件创建了一个新的指针。当对软链接操作时,系统就会找到原文件并对原文件进行操作(与Windows的快捷方式类似)。

语法:
    ln  –s  <源文件>  <新建链接名>

2、硬链接
    硬链接文件完全等同于原文件,原文件名和连接文件都指向相同的物理地址

语法:
    ln <源文件> <新建链接名>

硬连接的描述
    不可跨文件系统创建硬连接,也不可为目录建立硬链接。
    文件在磁盘中的数据是唯一的,这样就可以节省硬盘空间
    由于只有当删除文件的最后一个节点时,文件才能真正从磁盘空间中消除,因此可以防止不必要的误删除。

实验:
    touch uosfile
    cp uosfile uosfile1
    ln -s uosfile uosfile2   #软连接
    ln uosfile uosfile3         #硬连接
    echo uossystem > uosfile
    



 

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ITC小浪花、

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值