RHCSA 5 基础命令3

文章目录

        • 一·文件的压缩与解压缩:
        • 二·文件的归档即打包文件
        • 三·用户管理的配置文件:
        • 四·组管理的配置文件
          • 修改配置文件添加用户:
          • 修改文件的属主和属组:
            • 附加练习题

一·文件的压缩与解压缩:

  • 常见的压缩文件扩展名:

    .gz gzip程序压缩的文件
    bz2 bzip2程序压缩的文件
    tar tar程序打包的数据,并没有经过压缩
    tar.gz tar程序打包的文件,其中经过gzip的压缩
    tar.bz2 tar程序打包的文件,其中经过bzip2的压缩
  • linux上常见的压缩命令就是gzip与bzip2

  1. gzip
分类 压缩文件gzip 解压文件
1 gzip 文件名(原文件不存在) gunzip 文件名.gz
2 gzip -c 文件名1 >文件名1.gz (保留原文件) gzip -cd 文件名2.gz >文件名2(保留原文件)
3 gzip -d 文件名.gz(不保留)
  • 查看压缩过的文本文件内容:zcat 文件名.gz
  1. bzip2
分类 压缩文件bzip2(用法同gzip) 解压文件
1 bzip2 文件名 bzip2 -d 文件名.bz2(不保留原文件)
2 bzip2 -c 文件名1 >文件名1.bz2(保留原文件) bunzip2 文件名.bz2
3 bzip -cd 文件名2.bz2 > 文件名2(保留原文件)
  • 查看压缩过的文件内容:bzcat 文件名.bz2

二·文件的归档即打包文件

  • tar [主选项+辅选项] 文件或目录
主选项 只能出现一个主选项
c— create 创建一个新归档文件
x— 从归档文件中提取文件出来
t— 列出归档文件的内容,查看已经打包了哪些文件,重点在查看文件名
辅选项 解释
z— 通过gzip的支持进行压缩/解压缩,一般格式为*.tar.gz
j— 通过bzip2的支持进行压缩/解压缩,一般格式为*.tar.bz2
v— 归档或解包过程中显示被打包的文件
C— 这个参数用在解压缩时,若要在特定目录解压缩,可以使用这个参数
f— 输出结果到文件,必须写该选项
–exclude FILE :在打包的过程中,不要将 FILE 打包! --排除某个文件打包
  • 两种压缩方式:jcvf zcvf
  1. 打包、压缩文件1和2并重命名:tar zcvf 新文件名 文件名1 文件名2 文件名3 文件名4
  2. 解压:tar xvf 文件名 该命令会自动判断归档文件的压缩格式,自动调用相关程序进行解压缩
  3. 解压到指定路径:tar xvf 文件名 -C 目标路径
    tar -xjv -f filename.tar.bz2 -C 欲解压缩的目录
  4. 查看已压缩文件:tar tf 文件名

三·用户管理的配置文件:

  • -rw-r–r--. 1 root root 2416 Aug 25 10:11 /etc/passwd
    用户名:密码:用户uid号:gid:备注:用户的家目录:和根交互使用的shell用户:

  • 超级用户:root,uid为0

  • 系统用户:用来管理和运行服务,系统用户的shell为/sbin/nologin,不让该用户登录,uid为201-999,添加系统用户,不创建主目录和邮箱:useradd -r 用户名

  • 一般用户:1000-60000,添加一般用户时,系统默认为该用户创建主目录和邮箱(/home/用户名)(/var/mail/用户名)

  1. useradd 用户名=adduser 用户名
  2. 添加用户并添加选项:useradd 用户名 -u uid号 -g gid号/组名 -G 附加组/组名 -c 备注 -s 指定shell -d 指定家目录
  3. id 查看用户的uid、gid以及组 例如 id redhat
  4. 删除用户:userdel -r 用户名
  5. ----------. 1 root root 1434 Aug 25 10:10 /etc/shadow
用户的密码文件 rabbit:2oxz:17956:0:99999:7:::
第一位 用户名
第二位 密码( i d id idsalt$encrypted,1为md5,2a为Blowfish,5为SHA-256,6为SHA-512。salt是一个最多16字符的随机生成的字符串,用来增加破解难度。encrypted是经过加密算法和salt算出来的密文。!!表示锁定状态)。
第三位 最后一次修改密码的时间,从1970年1月1日到最后一次修改密码所经过的天数。
第四位 密码最短使用期限,为0表示不限制。
第五位 密码最长使用期限,密码使用多长时间之后必须要改密码,99999表示可不更改。
第六位 密码过期警告时间,密码过期前多少天进行警告,提示用户改密码,但是不锁定用户。
第七位 密码过期宽限期限,密码过期后必须改密码的时间,如果还没改,锁定用户,就只能找网管了。
第八位 账号过期精确时间,如果为99999,意味着永不过期。
第九位 保留字段
  1. /etc/login.defs定义了与/etc/passwd和/etc/shadow配套的用户限制设定
    /etc/defualt/useradd 用户添加时会创建的相关信息设置
    /etc/skel 用户家目录下相关隐藏文件

四·组管理的配置文件

  1. -rw-r–r--. 1 root root 998 Aug 25 10:30 /etc/group
  2. 组名:组密码:组id:用户列表
  3. 组:
    私有组:当组里只有它一个成员时,它的基本组也叫做私有组
    基本组:用户的默认组(班级)
    附加组:默认组以外的组(学生会)
    添加组groupadd -g gid 组名
修改组密码 gpasswd
-a 添加用户到组
-d 将指定用户移出本组(从附加组移除)
-M 设置组成员列表
-A 指定组管理员为哪个用户
-r 删除组密码
newgrp 登陆一个新组
使用exit 退出新组
  1. 为一个组更改名字:groupmod -n 新组名 -g gid 原组名
  2. 删除组(只能删除groupadd添加的组,无法删除用户的私有组):groupdel 组名
  3. 组密码的相关信息:
    /etc/gshadow
    student:!!::student

    组名:组密码(!开头,表示无合法密码,无群组管理员):群组管理员账号:用户列表
命令usermod 解释
usermod -c 改变用户的全名或者说描述名称
usermod -d 改变用户的家目录
usermod -e 设置用户账号的过期时间
usermod -g 改变用户的gid
usermod -G 将用户添加入一个新组
usermod -s 改变用户的默认shell
usermod -l 改变用户用户名
usermod -u 改变用户的uid
usermod -L 锁住密码,使账号不能用
usermod -U 为用户密码解锁
  1. 给用户追加附加组:usermod -a -G 组名 用户名
  2. 给用户修改密码:passwd 用户名
    • echo 密码 | passwd --stdin 用户名
      修改rabbit的密码为chihuo。
      echo chihuo | passwd --stdin rabbit
命令passwd 解释
passwd -n 指定密码的最短使用期限
passwd -x 指定密码的最长使用期限
passwd -w 设置过期警告时间
passwd -l 锁定用户账号密码
passwd -u 解锁用户账号
passwd -d 删除用户密码,在redhat中,空密码用户禁止登陆
修改配置文件添加用户:
  1. 修改配置:

/etc/passwd
/etc/shadow
/etc/group

  1. 添加家目录

/home/用户名
su - 用户名
-bash-4.2$
ll -a /etc/skel
cp -a /etc/skel/.bash* /home/用户名
su - haha
[haha@localhost ~]$

修改文件的属主和属组:
chown 属主:属组 文件名
chgrp 属组 文件名
  1. 从服务器上下载普通文件
    scp 用户名@目标IP地址:文件名 目录名
  2. 向服务器上传文件:
    scp 要上传文件的全路径 用户名@目标IP地址:文件名
  3. 从windows向linux上传:
    rz或者xftp
附加练习题
  1. 给fedora加密码,并设定其密码最短使用期限为2天,最长为50天

useradd fedora
echo 1234 | passwd --stdin fedora
passwd -n 2 -x 50 fedora

  1. 创建一个用户xiaoming,其ID号为2002,基本组为one(组ID为3003),附加组为linux。

groupadd -g 3003 one
groupadd linux
useradd xiaoming -u 2002 -g 3003 -G linux

  1. 创建一个用户fedora,其全名为Fedora Community,默认shell为tcsh。

useradd fedora -c ‘Fedora Community’ -s /bin/tcsh

  1. 修改xiaoming的ID号为4004,基本组为linux,附加组为one和fedora。

usermod -u 4004 -G one,fedora -g linux xiaoming

  1. 将mandriva的默认shell改为/bin/bash。

usermod -s /bin/bash mandriva

  1. 添加系统用户hbase,且不允许其登陆系统。

useradd -r -s /sbin/nologin hbase

第二组题

  1. 创建一个rabbit用户,他的uid为2222,animal是他的基本组,他有三个附加组为cabbage,grass(grass的组id为6666)和carrot。

[root@localhost ~]# groupadd animal
[root@localhost ~]# groupadd cabbage
[root@localhost ~]# groupadd -g 6666 grass
[root@localhost ~]# groupadd carrot
[root@localhost ~]# useradd rabbit -u 2222 -g animal -G cabbage,grass,carrot
[root@localhost ~]# id rabbit
uid=2222(rabbit) gid=1001(animal) groups=1001(animal),1002(cabbage),6666(grass),6667(carrot)

  1. 修改rabbit的密码为chihuo。

[root@localhost ~]# echo chihuo | passwd --stdin rabbit
Changing password for user rabbit.
passwd: all authentication tokens updated successfully.

  1. 将rabbit用户的信息和该用户的密码信息保存到该用户的家目录下的secret中。

root@localhost ~]# id rabbit > /home/rabbit/secret
[root@localhost ~]# grep rabbit /etc/shadow >> /home/rabbit/secret
[root@localhost ~]# cat /home/rabbit/secret
uid=2222(rabbit) gid=1001(animal) groups=1001(animal),1002(cabbage),6666(grass),6667(carrot)
rabbit:$ 6$YwYmRJCc $Ldehw/lH48Nr940fIQ7Zpg0Bp6PMIfh1U0nnYaDekK0ZR0k5hUFdVJZ62P2o9ODgSBYPJRAzxHa9b8zqvApxz/:17956:0:99999:7:::

  1. 保留secret文件并以gzip的方式压缩该文件将其放在root用户的家目录。

[root@localhost ~]# gzip -c /home/rabbit/secret >/root/secret.gz
[root@localhost ~]# ll /root/
total 12
-rw-------. 1 root root 1782 Feb 25 15:15 anaconda-ks.cfg
-rw-------. 1 root root 1875 Feb 25 15:24 initial-setup-ks.cfg
-rw-r–r--. 1 root root 211 Mar 1 19:47 secret.gz

  1. 修改rabbit的家目录为rabbits并禁止rabbit用户登录系统。

[root@localhost ~]# usermod -d /home/rabbits rabbit
[root@localhost ~]# usermod -s /sbin/nologin rabbit
[root@localhost ~]# grep rabbit /etc/passwd
rabbit❌2222:1001::/home/rabbits:/sbin/nologin

  1. 将修改过的rabbit用户的信息添加到secret中。

[root@localhost ~]# grep rabbit /etc/passwd >> /home/rabbit/secret
[root@localhost ~]# cat /home/rabbit/secret
uid=2222(rabbit) gid=1001(animal) groups=1001(animal),1002(cabbage),6666(grass),6667(carrot)
rabbit:$ 6$YwYmRJCc $ Ldehw/lH48Nr940fIQ7Zpg0Bp6PMIfh1U0nnYaDekK0ZR0k5hUFdVJZ62P2o9ODgSBYPJRAzxHa9b8zqvApxz/:17956:0:99999:7:::
rabbit❌2222:1001::/home/rabbits:/sbin/nologin

你可能感兴趣的:(rhcsa)