2018-2019-1 20189204《Linux内核原理与分析》第一周作业
20189204《Linux内核原理与分析》第一次作业
虽然之前在本科上过Linux课程,但是在本周的Linux初级学习阶段,依然遇到了很多问题
一.学习环境的搭建中的问题
1.VMware workstation 和Ubuntu版本不匹配
由于之前电脑上存在VMware,所以这次就没有用老师推荐的基于VirtualBox安装Ubuntu,不过问题也来了
在我下载最新版Ubuntu即Ubuntu-18.04.1-desktop-amd64并安装到虚拟机上的时候,发现报错 Kernal panic-corrupted stack end detected inside scheduler,大意是在调度器内部检测到了损坏的栈,我以为是 虚 拟机内存分配的不够,于是调整内存为2G,4G,6G,但结果还是这样。于是百度了一下,发现报此类错误原因是低版本的VMware兼容不了高版本的Ubuntu!如果是18.04版本的Ubuntu则要用14.1.2版本的VMware如果是16.04版本的Ubuntu就可以用其他版本的VMware而内存不够报错的提示应该是这样的Kernal panic-Out of memory and no killable processes
2.VMware 中安装VM Tools一直是灰色的问题
这个解决方案没有成功 [这个解决方案成功了](https://blog.csdn.net/qq_20307987/article/details/51302005)
二.Linux学习问题
1.关于文件权限的表示问题
简单概括就是文件有三组权限:属主,属组,其他用户,不同权限可以用加和形式统一表示
2.实验三作业
添加一个用户 loutest,使用 sudo 创建文件 /opt/forloutest,设置成用户 loutest 可以读写。截图并把操作过程写入实验报告。提示: 如何创建一个文件呢?可以考虑 touch 命令,这个命令可以创建一个空文件。如果不知道 touch 是什么,我们上一课讲到了哦。
3.实验三目录的表示
- 表示上一次所在目录,~ 通常表示当前用户的 home 目录。使用 pwd 命令可以获取当前所在路径(绝对路径)。
这里特别注意~表示当前用户的home目录,其实是home下的子目录(当前用户)
此处cd ~之后的目录是/home/shiyanlou
4.实验四关于文件复制
实验楼中降到了学习递归复制文件目录,但是没有告诉我们命令的格式或者说表示的含义,那么我们可以从命令结果倒退出复制文件目录的语法格式 即 cp 被复制文件目录名 新文件目录名,结果如图所示
需要注意的是我在执行cp -r father family 之前是没有mkdir family的 最后的结果是./family/son/grandson 这是与实验楼中的不同的实验,所以结果也不一样。
5.实验四作业
1. 创建一个 homework 目录,建立名为 1.txt~10.txt 文件,并删除 1.txt~5.txt 。
2. Linux 的日志文件在哪个目录?
Linux 的日志文件存放在/var/log目录中
6.实验五--变量与环境变量
按变量的生存周期来划分,Linux 变量可分为两类:永久的:需要修改配置文件,变量永久生效;临时的:使用 export 命令行声明即可,变量在关闭 shell 时失效。这里介绍两个重要文件 /etc/bashrc(有的 Linux 没有这个文件) 和 /etc/profile ,它们分别存放的是 shell 变量和环境变量。还有要注意区别的是每个用户目录下的一个隐藏文件:.profile 可以用 ls -a 查看
cd /home/shiyanlou
ls -a
这个 .profile 只对当前用户永久生效。而写在 /etc/profile 里面的是对所有用户永久生效,所以如果想要添加一个永久生效的环境变量,只需要打开 /etc/profile,在最后加上你想添加的环境变量就好啦。
7.实验五作业
利用之前学的正则表达式的知识,批量创建了.list文件然后再查找,一定记得locate前先要sudo updatedb
8.实验六之tar打包压缩
tar 原本只是一个打包工具,只是同时还是实现了对 7z、gzip、xz、bzip2 等工具的支持,这些压缩工具本身只能实现对文件或目录(单独压缩目录中的文件)的压缩,没有实现对文件的打包压缩,而tar实现了对文件的打包压缩,且tar的压缩和解压命令相同只是参数不同
-c 表示创建一个 tar 包文件,-f 用于指定创建的文件名,注意文件名必须紧跟在 -f 参数之后,比如不能写成 tar -fc shiyanlou.tar,可以写成 tar -f shiyanlou.tar -c ~。你还可以加上 -v 参数以可视的的方式输出打包的文件。上面会自动去掉表示绝对路径的 /,你也可以使用 -P 保留绝对路径符。
zip:
打包 :zip something.zip something (目录请加 -r 参数)
解包:unzip something.zip
指定路径:-d 参数
tar:
打包:tar -cf something.tar something
解包:tar -xf something.tar
指定路径:-C 参数
9.实验六作业
10.实验七
dd默认从标准输入中读取,并写入到标准输出中,但可以用选项if(input file,输入文件)和of(output file,输出文件)改变。bs(block size)用于指定块大小(缺省单位为 Byte,也可为其指定如'K','M','G'等单位),count用于指定块数量。如上图所示,我指定只读取总共 10 个字节的数据,当我输入了“hello shiyanlou”之后加上空格回车总共 16 个字节(一个英文字符占一个字节)内容,显然超过了设定大小。使用du和cat命令看到的写入完成文件实际内容确实只有 10 个字节(那个黑底百分号表示这里没有换行符),而其他的多余输入将被截取并保留在标准输入。
11.实验七作业
找出当前目录下面占用最大的前十个文件,这里要用到多个命令,有du -a 显示大小 sort排序 以及head 显示前十,那么这就需要用管道工具来连接这三个命令,逐步收敛查询数据,结果如下
12.管道工具
管道是什么?管道是一种通信机制,通常用于进程间的通信(也可通过socket进行网络通信),它表现出来的形式就是将前面每一个进程的输出(stdout)直接作为下一个进程的输入(stdin)。
我个人的理解就是,通过不同命令的组合,将查询结果逐渐收敛,而管道就是连接前一个命令的输出与后一个命令的输入的工具
总结
之前在大学的时候学习过linux,对于linux一些常用的基本操作有一些基础。在这次的学习过程中,我丰富了原来的知识,例如:查看用户组不但可用group命令还可以用cat /etc/group来做,这样就既学到了新命令,又了解了linux的常用目录结构,增强了linux相关知识的联系。磁盘的操作、Linux简单文本处理、Linux日志系统等对我来说都是比较陌生的知识,特别是正则表达式基础,学起来比较吃力,以后要多看多用,尝试在熟悉的命令中加入正则表达式,例如使用touch bowen{1..10}.txt这样的命令,这样才能尽快掌握这些知识并学以致用。
转载于:https://www.cnblogs.com/bowendky/p/9781824.html
2018-2019-1 20189204《Linux内核原理与分析》第一周作业相关推荐
- Linux内核原理与分析-第二周作业
写之前回看了一遍秒速五厘米:如果?下落的速度正好 那么13年的长度刚好是地球的最远距离!直径两端 在进行实验楼操作之前,先听授了网易云课堂中孟老师关于"计算机是如何工作的?"的介绍 ...
- 2022-2023-1 20222809《Linux内核原理与分析》第一周作业
Linux内核原理与分析第一周作业 配置环境 1.参考Linux(Ubuntu)系统安装图文教程中第二种借助virtualbox成功配置Ubuntu环境 2.升级更新软件包 可以通过调节分辨率和虚拟机 ...
- 2017-2018-1 20179215《Linux内核原理与分析》第二周作业
20179215<Linux内核原理与分析>第二周作业 这一周主要了解了计算机是如何工作的,包括现在存储程序计算机的工作模型.X86汇编指令包括几种内存地址的寻址方式和push.pop.c ...
- 2018-2019-1 20189213《Linux内核原理与分析》第四周作业
<Linux内核原理与分析>第四周学习总结: 1.课本知识总结: 本章内容并不多,首先是介绍了一些Linux内核源代码的目录结构,并基于Linux内核源代码构造一个简单的操作系统MenuO ...
- 实验楼 linux内核原理与分析,《Linux内核原理与分析》第一周作业 20189210
实验一 Linux系统简介 这一节主要学习了Linux的历史,Linux有关的重要人物以及学习Linux的方法,Linux和Windows的区别.其中学到了LInux中的应用程序大都为开源自由的软件, ...
- 20169210《Linux内核原理与分析》课程总结
每周作业链接汇总 第一周作业:对实验楼<Linux 基础入门(新版)>课程的学习,其中有用户及文件权限管理.Linux 目录结构及文件基本操作.环境变量与文件查找.文件打包与解压缩等共17 ...
- 2018-2019-1 20189204《Linux内核原理与分析》第三周作业
OS是如何工作的 学习任务: 阅读学习教材「庖丁解牛Linux 」第2章 学习蓝墨云班课中第三周视频「操作系统是如何工作的?」,并完成实验楼上配套实验二. 云班课学习笔记: 计算机三大法宝 程序存储计 ...
- 《Linux内核原理与分析》第二周作业
反汇编一个简单的C程序 1.实验要求 使用: gcc –S –o test.s test.c -m32 命令编译成汇编代码,对汇编代码进行分析总结.其中test.c的具体内容如下: int g(int ...
- 2018-2019-1 20189206 《Linux内核原理与分析》第六周作业
linux内核分析学习笔记 --第五章 系统调用的三层机制 学习重点--深入理解系统调用的过程 给MenuOS添加命令 添加命令的方式较为简单,在LinuxKernel/menu/test.c目录下, ...
- 20169210《Linux内核原理与分析》第十一周作业
第17章 设备与模块 关于设备驱动和设备管理,讨论四种内核成分. 设备类型:在所有的linux系统中为了统一普遍设备的操作所分的类. 模块:Linux内核中用于按需加载和卸载目标码的机制. 内核对象: ...
最新文章
- python关键字as_python 之 import、from、as 关键字的 白话 解释与例子
- python绘制分组条形图_python中分组值的条形图
- Elastic:为 Elasticsearch 启动 https 访问使数据访问更安全
- 获取某个周在本年的开始日期和结束日期
- AngularJS 使用 Promise
- Linux学习笔记---使用BusyBox创建根文件系统(一)
- 集合的常用方法(增加、删除、并集、交集、差集、对等差分、超集和子集)
- [转]ExtJs中可用的xtype
- SSD 超详细入门(代码+原文)
- codematic2连接mysql失败_动软代码生成器Codematic
- VB.NET实现文件上传下载
- c语言实验作业感想,c语言程序报告实验总结(共10篇).docx
- unity 物体移动方式的一些笔记
- Win10系统下基于Docker构建Appium容器连接Android模拟器Genymotion完成移动端Python自动化测试
- python中__init__.py的用法,执行指定的多个.py文件生成报告。简单粗暴1
- 国内人资企业三大竞争主体
- 抖音多账号零粉直播工具源码实现无人直播
- 蓝牙设备通过手机空中升级固件步骤
- Pytorch提取预训练模型特定中间层的输出
- 数据指标体系之战略指标
热门文章
- HCIE Security 防火墙转发流程及相关知识点 备考笔记(幕布)
- ELK详解(九)——Logstash多日志收集实战
- 一文看懂PPPoE协议——PPPoE协议简介
- 使用Epoch-Based Reclamation(EBR,特定域回收的一种方法)修改 lazy-list
- C++ 练习题(二)计算机存储和数字系统介绍
- Leetcode 刷题笔记(十一) —— 栈与队列篇之 top-K 问题
- NYOJ--6--喷水装置(一)
- HDOJ--1728--逃离迷宫(广搜)
- rabbitmqBat常用指令
- html5 canvas类库 实例