zoukankan      html  css  js  c++  java
  • 20199323《网络攻防实践》假期作业

    这个作业属于哪个课程 网络攻防假期作业
    这个作业的要求在哪里 [作业要求的链接](https://edu.cnblogs.com/campus/besti/19attackdefense/homework/10228)
    我在这个课程的目标是 安装Linux操作系统,学习Linux的基本命令
    这个作业在哪个具体方面帮助我实现目标 熟悉Linux命令

    作业正文

    作业一

    (1)你对网络攻击和防御了解多少?该课程需要计算机和网络相关的基础知识,你原专业是什么专业,目前你掌握多少基础知识?
    上学期学习了网络系统安全,对网络攻防有一定的了解。原专业是计算机科学与技术,掌握计算机网络、操作系统等。
    (2)作业要使用Markdown格式,Markdown入门参考(需掌握)

    作业二

    你自己动手安装过操作系统吗?如果没有话现在动手学一下吧。
    (1)学习基于VirtualBox虚拟机安装Ubuntu图文教程在自己笔记本上安装Linux操作系统(也可以使用VMWare安装虚拟机,安装方法自己百度)
    上学期Linux内核原理课程上,已经在VM上安装了Linux系统

    (2)通过实践[学习别出心裁的Linux命令学习法](https://www.cnblogs.com/rocedu/p/4902411.html),掌握Linux命令的学习方法
    我们使用的Linux发行版是Ubuntu,使用Ubuntu有几个快捷键要掌握一下,可以提高使用命令行的效率:

    • CTRL+ALT+T:打开终端,天天使用终端,用鼠标打开太低效了;
    • CTRL+SHIFT+T:新建标签页,编程时有重要应用;
    • ALT+数字N:终端中切换到第N个标签页,编程时有重要应用;
    • Tab:终端中命令补全,当输入某个命令的开头的一部分后,按下Tab键就可以得到提示或者帮助完成;
    • 上下键盘:切换命令历史,刚输入一个很长的命令,按上键就可以恢复;
    • CTRL+C:中断程序运行。

    我觉得相对重要的是man命令的用法:

    在安装cheat过程中出现的问题:在执行sudo apt-get install python-pip git后出现


    在百度上搜索了2种方法首先查看是否有apt-get这个程序在运行ps aux|grep apt-get 然后杀死该程序,试了不行
    直接删除锁文件

    sudo rm /var/lib/dpkg/lock-frontend
    sudo rm /var/lib/dpkg/lock
    

    安装时出现了Temporary failure resolving 'us.archive.ubuntu.com'错误,上网搜索得知这是是dns没有配置
    sudo vim /etc/resolv.conf,添加nameserver 8.8.8.8,然后重启系统就好了。

    然后出现了上图的问题

    wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26
    tar -zxvf setuptools-19.6.tar.gz
    cd setuptools-19.6
    python setup.py build
    python setup.py install
    

    安装好setuptools后,继续进行下一步。
    (3)参考上面的学习方法通过实践学习Linux 基础入门(新版)课程,掌握常用的Linux命令,重点是3/4/5/6/7/8节。

    实验三

    who 命令其它常用参数

    -a	打印能打印的全部
    -d	打印死掉的进程
    -m	同am i,mom likes
    -q	打印当前登录用户数及用户名
    -u	打印当前登录用户登录信息
    -r	打印运行等级
    
    • su 可以切换到用户 user,执行时需要输入目标用户的密码;
    • su - 命令也是切换用户,同时环境变量也会跟着改变成目标用户的环境变量;
    • sudo 可以以特权级别运行 cmd 命令,需要当前用户属于 sudo 组,且需要输入当前用户的密码。
    • 查看用户组: groups shiyanlou或者cat /etc/group | sort
    • 删除用户组:sudo deluser lilei

    实验四:

    • touch 新建空白文件
    • mkdir 新建目录
    • cp(copy)命令复制一个文件到指定目录 cp test father/son/grandson复制目录要成功复制目录需要加上 -r 或者 -R 参数,表示递归复制
    • rm(remove files or directories)命令删除一个文件
    • rm -f test 你如果想忽略这提示,直接删除文件,可以使用 -f 参数强制删除:跟复制目录一样,要删除一个目录,也需要加上 -r 或 -R 参数

    实验五

    • declare 命令创建一个变量:declare tmp
    • set 显示当前 Shell 所有变量,包括其内建环境变量(与 Shell 外观等相关),用户自定义变量及导出的环境变量。
    • env 显示与当前用户相关的环境变量,还可以让命令在指定环境中运行。
    • export 显示从 Shell 中导出成环境变量的变量,也能通过它将自定义变量导出为环境变量。
      /etc/bashrc(有的 Linux 没有这个文件) 和 /etc/profile ,它们分别存放的是 shell 变量和环境变量。
      查看 PATH 环境变量的内容:echo $PATH
      在前面我们应该注意到 PATH 里面的路径是以 : 作为分割符的,所以我们可以这样添加自定义路径:
      PATH=$PATH:/home/shiyanlou/mybin
      注意这里一定要使用绝对路径。
      变量的修改有以下几种方式:
    变量设置方式	说明
    ${变量名#匹配字串}	从头向后开始匹配,删除符合匹配字串的最短数据
    ${变量名##匹配字串}	从头向后开始匹配,删除符合匹配字串的最长数据
    ${变量名%匹配字串}	从尾向前开始匹配,删除符合匹配字串的最短数据
    ${变量名%%匹配字串}	从尾向前开始匹配,删除符合匹配字串的最长数据
    ${变量名/旧的字串/新的字串}	将符合旧字串的第一个字串替换为新的字串
    ${变量名//旧的字串/新的字串}	将符合旧字串的全部字串替换为新的字串
    

    变量删除:unset temp
    whereis 只能搜索二进制文件(-b),man 帮助文件(-m)和源代码文件(-s)。
    通过“ /var/lib/mlocate/mlocate.db ”数据库查找,不过这个数据库也不是实时更新的,系统会使用定时任务每天自动执行 updatedb 命令更新一次,所以有时候你刚添加的文件,它可能会找不到,需要手动执行一次 updatedb 命令(在我们的环境中必须先执行一次该命令)。
    which 本身是 Shell 内建的一个命令,我们通常使用 which 来确定是否安装了某个指定的软件,因为它只从 PATH 环境变量指定的路径中去搜索命令
    find 应该是这几个命令中最强大的了,它不但可以通过文件类型、文件名进行查找而且可以根据文件的属性(如文件的时间戳,文件的权限等)进行搜索。

    实验六

    zip:
    打包 :zip something.zip something (目录请加 -r 参数)
    解包:unzip something.zip
    指定路径:-d 参数

    tar:
    打包:tar -cf something.tar something
    解包:tar -xf something.tar
    指定路径:-C 参数

    实验七

    使用 df 命令查看磁盘的容量
    使用 du 命令查看目录的容量
    du -h #同--human-readable 以K,M,G为单位,提高信息的可读性。
    du -a #同--all 显示目录中所有文件的大小。
    du -s #同--summarize 仅显示总计,只列出最后加总的值。
    dd命令用于转换和复制文件,不过它的复制不同于cp。
    使用 mount 命令挂载磁盘到目录树

    实验八

    ls --help
    外部命令基本上都有一个参数--help,这样就可以得到相应的帮助,看到你想要的东西了。
    man ls
    man 没有内建与外部命令的区分,因为 man 工具是显示系统手册页中的内容,也就是一本电子版的字典,这些内容大多数都是对命令的解释信息,还有一些相关的描述。
    man 和 info 就像两个集合,它们有一个交集部分,但与 man 相比,info 工具可显示更完整的 GNU 工具信息。

  • 相关阅读:
    laravel 控制器方法里存get值 和 blade 模板获得闪存值的方法
    获取对象中的值的方法
    python3 语法小结
    集合一些方法陷阱
    文件的读写操作
    字符编码
    数字,字符串,列表,元祖,字典,集合类型内置方法
    if判断,while循环,for循环
    交互,格式化输出,运算符,解压缩!
    python基础知识
  • 原文地址:https://www.cnblogs.com/w741741/p/12314076.html
Copyright © 2011-2022 走看看