Linux 常用命令练习二 实验二

PART 1

  1. 以root账号登录:

    shell 复制代码
    su root
  2. 查看CentOS根目录下有哪些内容:

    shell 复制代码
    cd /
    ls -a
  3. 进入/tmp目录,创建一个名为example的目录,并进入该目录。

    shell 复制代码
    cd tmp
    mkdir example
    cd example
  4. 显示当前所在目录:

    shell 复制代码
    pwd
  5. 在当前目录下,建立权限为741的目录test:

    shell 复制代码
    mkdir test
    chmod 741 test 
  6. 将root用户家目录下的.bashrc复制到/tmp/example目录下。

    我现在位于example目录中,如果你现在不是root用户,命令前面加上sudo

    shell 复制代码
    cp /root/.bashrc ./
  7. 重复步骤6,要求在覆盖前询问是否覆盖

    shell 复制代码
    cp /root/.bashrc ./ -i
  8. 用touch命令,在当前目录下建立文件abc

    shell 复制代码
    touch abc
  9. 查看文件abc的权限,大小,创建时间。

    shell 复制代码
    ls -l abc
  10. 强制删除该文件

    shell 复制代码
    rm -f abc

PART 2

  1. 使用cat命令加行号显示文件/etc/issue的内容。

    我现在位于/根目录下

    shell 复制代码
    cat -n etc/issue 
  2. 使用more命令查看文件/etc/man_db.conf 的内容。

    shell 复制代码
    more etc/man_db.conf
  3. 使用less命令查看文件/etc/man_db.conf的内容

    shell 复制代码
    less etc/man_db.conf
  4. 使用head命令查看文件/etc/man_db.conf前15行的内容

    shell 复制代码
    head -n 15 etc/man_db.conf
  5. 将/usr/bin/passwd中的内容使用ASCII方式输出。

    shell 复制代码
    od -c /usr/bin/passwd 

PART 3

  1. 将当前目录设为/root.

    在root用户下

    shell 复制代码
    cd /root
  2. 执行 echo pwd>>pwd.sh命令,了解命令产生的结果。

    复制代码
    在当前目录下创建pwd.sh文件并追加pwd内容。
    如果已经存在了pwd.sh文件,那么就是在pwd.sh文件中追加pwd
  3. 查看文件pwd.sh的权限。

    shell 复制代码
    ls -l pwd.sh
  4. 执行./pwd.sh,能否执行,为什么?

    复制代码
    不能,因为没有可执行权限
  5. 将pwd.sh文件权限为可执行,再重新执行./pwd.sh。

    shell 复制代码
    chmod 777 pwd.sh
    ./pwd.sh
  6. 新建用户user1,user2,user3。

    shell 复制代码
    adduser user1
    adduser user2
    adduser user3
  7. 在/tmp下新建文件夹test。

    shell 复制代码
    mkdir /tmp/test
  8. 查看test文件夹的权限是多少?

    shell 复制代码
    ls -ld /tmp/test
  9. 修改test文件夹的权限为777。

    shell 复制代码
    chmod /tmp/test
  10. 分别使用user1、user2和user3在/tmp/test下新建文件:用户名.txt

    以user1为例:

    shell 复制代码
    su user1
    touch /tmp/test/user1.txt
  11. 以user1身份看能否删除user2和user3的文件?

    复制代码
    yes
  12. 如何保证每个用户都可以在/tmp/test中新建文件,但只能删除自己的文件而不能删除别人的文件?

    将test设置sticky特殊权限即可

    shell 复制代码
    chmod o+t /tmp/test
  13. 修改/tmp/test的权限为1777

    这里其实和上面的设置是一样的

    shell 复制代码
    chmod 1777 /tmp/test
  14. 验证user1、user2和user3都可以在/tmp/test下新建、修改、删除自己的文件

    复制代码
    确实可以
  15. 以user1身份看能否删除user2和user3的文件?

    复制代码
    不行,因为设置了sticky特殊权限

PART 4

  1. 用file命令查看/root/.bashrc的类型。

    shell 复制代码
    file /root/.bashrc
    # 为 ASCII text,文本文件
  2. 用file命令查看以下三个文件的类型: /etc/passwd /bin/bash /dev/console 了解这三个文件的作用。

    复制代码
    /etc/passwd 文件:
    类型:文本文件
    作用:/etc/passwd 文件是Linux系统中存储用户账户信息的文件之一。每行代表一个用户账户,包含了有关该用户的各种信息,如用户名、用户ID(UID)、主组ID(GID)、用户的家目录、默认的shell等等。这些信息用于验证用户的身份和权限管理。
    
    /bin/bash 文件:
    类型:可执行文件
    作用:/bin/bash 是Bash Shell的执行文件路径。Bash是一种常用的命令行解释器和脚本语言,它允许用户与Linux系统进行交互,运行命令和脚本。通常,当一个用户登录到系统时,它的默认shell会被设置为Bash,以便用户可以使用Bash的功能。
    
    /dev/console 文件:
    类型:字符设备文件
    作用:/dev/console 是Linux系统的控制台设备文件。它提供了对系统控制台的访问权限,可以用于读取和写入控制台上的信息。这是一个特殊文件,通常不直接由普通用户操作,而是由系统管理员或特权用户使用,用于系统日志和维护目的。
  3. 用which命令查询ifconfig和mkdir命令的完整文件名。

    shell 复制代码
    which ifconfig
    # /usr/sbin/ifconfig
    which mkdir
    # /usr/bin/mkdir
  4. 用find命令查找/下所有名称为man.config的文件。

    shell 复制代码
    find / -type f -name man.config
  5. 用locate命令查找/下所有名称为man.config的文件

    shell 复制代码
    locate man.config
  6. 用find命令找出系统中大于1M的文件

    shell 复制代码
    find / -type f -size +1M

PART 5

  1. 新建组:software

    请确保你在root用户下,如果不是需要再命令前面加上sudo

    shell 复制代码
    groupadd software
  2. 新建账户student_1并设置主组群为software。分别查看/etc/passwd文件、/etc/shadow文件最后一行内容,并记录。

    shell 复制代码
    useradd -m -G software -s /bin/bash student_1
    tail -n 1 /etc/passwd
    tail -n 1 /etc/shadow
    # 结果为:
    # student_1:x:1001:1002::/home/student_1:/bin/bash
    # student_1:!:19622:0:99999:7:::
  3. 验证student_1账户在图形界面下能否登录系统?

    shell 复制代码
    我密码都不知道,咋登录??这题目应该是想让我说不能
  4. 修改账户student_1密码为:123456,查看/etc/shadow文件最后一行内容,并记录。

    shell 复制代码
    passwd student_1
    tail -n 1 /etc/shadow
    # 结果为:student_1:$6$I5.OjvCHxCQP7M2U$nypnVO982w3d4IIgYoL1AmUgg1tGtSZuJpt9N72u9hlx/CDYmsdIMC9kYVTCcSf.CPamPFq6aTtCn1u/0KT130:19622:0:99999:7:::
  5. 验证student_1账户在图形界面下能否登录系统?

    复制代码
    yes
  6. 删除student_1账户的密码

    shell 复制代码
    passwd -d student_1
  7. 验证student_1账户在图形界面下能否登录系统?

    shell 复制代码
    这题目应该是想让我说能,这里我们删除密码之后再看一下shadow,发现那里是空的,应该是如果是!就不可以登录,有显示加密密码或者空密码就可以登录。
  8. 修改账户名为: test

    shell 复制代码
    usermod -l test student_1
  9. 删除账户及主目录和邮箱。

    shell 复制代码
    userdel -r test
  10. 创建一个新组,组名为computer,查看/etc/group文件最后一行内容,并记录。

    shell 复制代码
    groupadd computer
    tail -n 1 /etc/group
    # computer:x:1003:
  11. 创建两个新账户,名为test1,test2,并将其主组群和附属组都设为computer。查看/etc/group文件最后一行内容,并记录。设置computer组密码。

    shell 复制代码
    useradd -m -G computer -s /bin/bash test1
    useradd -m -G computer -s /bin/bash test2
    tail -n 1 /etc/group
    # 我这里显示的是test2:x:1004:
    # 但我感觉题目想让我看到的是computer:x:1003:test1,test2,这是我这里倒数第三行的内容
    gpasswd computer
  12. 将当前用户切换为test1,用touch命令在/home/test1下创建一个新文件,文件名为ex_test1.txt;将当前用户切换为test2,用touch命令在/home/test2下创建一个新文件,文件名为ex_test2.txt;

    shell 复制代码
    su test1
    touch /home/test1/ex_test1.txt
    su test2
    touch /home/test2/ex_test2.txt
  13. 将当前用户切换为root,查找属于用户test1的文件,查找属于组computer的文件。

    shell 复制代码
    su 
    find / -type f -user test1
    find / -type f -group computer
  14. 在computer组中删除用户test2, 查看/etc/group文件最后一行内容,并记录。

    shell 复制代码
    gpasswd -d test2 computer
    tail -n 1 /etc/group
    # 我这里显示的还是test2:x:1004:
    # 但是我感觉题目想让我看到的是computer:x:1003:test1,这是我这里倒数第三行的内容

PART 6

在这里哦,点我传送门~

相关推荐
子琦啊14 分钟前
【算法复习】字符串 | 两个底层直觉,吃透高频题
linux·运维·算法
跨境数据猎手1 小时前
跨境独立站系统技术拆解(附带源码)
服务器·前端·php
AOwhisky1 小时前
Kubernetes 学习笔记:集群管理、命名空间与 Pod 基础
linux·运维·笔记·学习·云原生·kubernetes
小龙在慢慢变强..2 小时前
目录结构(FHS 标准)
linux·运维·服务器
2035去旅行2 小时前
嵌入式开发,如何选择C标准库
linux·arm开发
刘延林.2 小时前
win11系统下通过 WSL2 安装Ubuntu 24.04 使用RTX 5080 GPU
linux·运维·ubuntu
星恒讯工业路由器2 小时前
星恒讯工业生产自动化解决方案
运维·物联网·自动化·智能路由器·信息与通信
a8a3022 小时前
Laravel9.x新特性全解析
运维·spring boot·nginx
beyond阿亮2 小时前
IEC104 Client Simulator - IEC104 主站/客户端模拟器 仿真器免费使用教程
运维·服务器·网络