20165203 预备作业3 Linux安装及学习
一、安装虚拟机
1.下载问题:当自己在虚拟机上下载ubuntu时,总是下载好长时间,而且最后下载失败,这让我很苦恼。
解决方案:求助同学后,同学给了我一个中文版官网的网址http://cn.ubuntu.com/desktop/,这才如愿下载。 安装好的界面如图所示
2.安装虚拟机增强功能时出现如下问题:
解决方案:于是我查询百度,终于在一篇博客中找到了解决方案:
进入系统在侧边找到如图加载的虚拟光驱,右击,点击弹出,然后就可正常安装增强功能了
二、Linux学习笔记
我可以说几乎是一个电脑小白,我传统的学习方式还是好记性不如烂笔头,我还是习惯看到的重点的用笔记下来,当然,学习Linux还是要先操作,然后再总结,我也很想把我总结的重点分享给大家:
1.Linux系统简介和基本概念及操作
- 终端模拟器:为了实现在一个窗口中完成用户的输入和输出。本质是Linux上的dev/tty设备。打开终端的方式:[ctrl]+[alt]+T
- Shell(壳):在图形界面中带来实际体验的差异,是提供给使用者使用界面的软件<命令解析器>,可以接受用户输入命令的程序。
- Ubuntu终端默认使用的是bash,桌面环境是GMOME或Unity
- 命令行的操作:
输入:打开终端,按键盘输入
输出:返回想要的结果(没有结果就是最好的结果) - 重要的快捷键:
| 快捷键 | 作用 |
|---|---|
| [Tab] | 命令补全 |
| [ctrl+c] | 强行终止当前程序,但并不会使终端退出 |
| [ctrl+d] | 键盘输入结束或退出终端 |
| [ctrl+s] | 暂停当前程序,暂停后按任意键恢复运行 |
- 通配符:对字符进行模糊匹配,查找文件夹时,使用它代替一个人或多个真正字符;不知道真正字符或者懒的输入完整名字时,使用通配符代替一个或多个真正字符。
- 常用的通配符:
| 常用通配符 | 作用 |
|---|
- | 匹配0或多个字符
? | 匹配任意一个字符
[list] | 匹配list中的任意单一字符
[!list] | 匹配除list中的任意单一字符以外的字符
[c1-c2] | 匹配c1-c3中的任意单一字符,[0-9],[a-z]
{string1,string2,···] | 匹配string1或string2,其一字符串
{c1···c2} | 匹配ci-c2中全部字符,如
- 如何在命令行中获取帮助
使用man命令
查找方法: man l 查找的内容
2.用户及文件权限管理
| 功能 | 命令 |
|---|---|
| 查看用户 | who am i |
| 创建用户 | sudo adduser <用户名> |
| 查看自己属于哪些用户组 | groups <用户名>或cat /etc/group |
| 切换登录用户 | su -l <用户名> |
| 退出当前用户 | exit 或 ctrl+D |
| 删除用户 | sudo deluser <用户名> --remove-<目录> |
| 将其他用户添加到sudo组 | sudo usermod -G sudo <用户名> |
| Linux文件权限 |
- 最高权限:root权限,可以通过sudo命令获得root权限
- 读权限:可以使用cat <文件名> 来读取文件内容
- 写权限:可以编辑和修改某个文件
- 所有者权限:所在的用户组中的所有用户对于该文件的权限
| 功能 | 命令 |
|---|---|
| 以较长的格式输出当前目录下的文件(查看文件权限) | ls -l |
| 显示除了“.”,“..”之外的所有包含隐藏文件 | ls -A |
| 查看一个目录的完整属性 | ls -dl <目录名> |
| 新建一个...文件 | touch ... |
| 显示...文件信息 | ll |
| 修改文件所有者为shiyanlou | sudo chown shiyanlou... |
| 修改权限 | chmod 700(顺序对应rwx)...或chmod go-rw (+/-)... |
| 作业: |
3.Linux目录结构及文件基本操作
- 目录形态

- 路径
| 路径名 | 备注 |
|---|---|
| 绝对路径 | 以根“/”目录为起点的完整路径,以所要到的目录为终点 /user/local/bin |
| 相对路径 | 以当前目录.为起点,以所要到的目录为终点 user/local/bin |
| 命令 | 功能 |
|---|---|
| touch <文件名> | 新建空白文件,不加任何参数下,只指定一个文件名,创建一个指定文件名的空白文件 |
| mkdir <目录名> | 可以创建一个空目录 |
| mkdir -p <目录名> | 创建父目录 |
| cp <文件名> <目录名> | 将文件复制到该目录下 |
| cp -r或-R <目录名> | 复制目录 |
| rm <文件名> | 删除文件 |
| rm -r或-R <目录名> | 删除目录 |
| rm -f <文件名> | 强制删除 |
| mv <文件名> <目录> | 移动文件到目录下 |
| mv <文件名1> <文件名2> | 修改文件名 |
| cat <文件名> | 打印文件内容到终端(正序显示)(加-n显示行号) |
| tac <文件名> | 打印文件内容到终端(倒序显示)(加-n显示行号) |
| nl <文件名> | 添加行号并打印 |
| more和less | 分页查看文件 |
| tail -n <数字> <文件> | 查看文件的尾几行 |
| head -n <数字> <文件> | 查看文件的头几行 |
| 作业 | |
4.环境变量与文件查找
| 命令 | 功能 |
|---|---|
| declare temp | 创建一个名为temp的变量 |
| echo $temp | 读取temp的值 |
| set | 打印所有环境变量 |
| env | 打印与当前用户相关的环境变量 |
| export | 显示从shell中导出或环境变量的变量 |
| zsh | 在实验楼环境中创建子shell |
| gedit hello_shell.sh | 创建一个脚本文件 |
| chmod 755 hello_shell.sh | 为文件添加可执行的权限 |
| .hello_shell.sh | 运行脚本文件 |
| gedit hello world.c | 创建C语言程序 |
| gcc -o hello world hello world.c | 生成可执行文本 |
- 变量修改
| 变量设置方式 | 功能 |
|---|---|
| $ | 从头向后开始匹配,删除符合匹配字串的最短数据 |
| $ | 从头向后开始匹配,删除符合匹配字串的最长数据 |
| $ | 从尾向前开始匹配,删除符合匹配字串的最短数据 |
| $ | 从尾向前开始匹配,删除符合匹配字串的最长数据 |
| $ | 将符合旧字串的第一个字串替换为新的字串 |
| $ | 将符合旧字串的全部字串替换为新的字串 |
| --选自实验楼 |
| 命令 | 功能 |
|---|---|
| unset temp | 删除环境变量temp |
| source .zshrc | 快速使.zshrc脚本文件生效 |
| whereis who | 搜索文件who,只能搜索二进制文件,源代码文件和man帮助文档 |
| locate | 搜索某路径下的所有匹配文件 |
| which | 查找是否安装了某个指定文件 |
| fine | 也是查找文件,命令更强大 |
| sudo find /etc/ -name interfaces | 在/etc/目录下找一个名为interfaces文件 |
| find ~ -mtime 0 | 列出home目录中当天有改动的文件 |
| find ~ -newer /home/shiyanlou/code | 列出用户家目录下比code新的文件 |
| 作业 | |
5.文件打包与解压缩
| 命令 | 作用 |
|---|---|
| zip -r -q -o shiyanlou.zip /home/shiyanlou | 将目录/home/shiyanlou打包成一个文件 |
| du shiyanlou.zip | 具体查看文件shiyanlou.zip的大小 |
| zip -r -9(或-1) -q -o shiyanlou.zip /home/shiyanlou | 将目录/home/shiyanlou打包成压缩级别为9(或1)的压缩文件 |
| du -h -d 0 *.zip ~ | 查看文件的深度 |
| zip -r -e -o shiyanlou.zip /home/shiyanlou | 创建加密压缩包(重点是-e参数的使用) |
| unzip shiyanlou.zip | 将shiyanlou压缩文件解压到当前目录 |
| unzip -q shiyanlou.zip -d ziptest | 将shiyanlou压缩文件解压到指定目录 |
| unzip -l shiyanlou.zip | 查看shiyanlou.zip压缩包 |
| rar a shiyanlou.rar . | 在.目录下创建压缩文件(a是参数) |
| rar d shiyanlou.rar .zshrc | 从shiyanlou.rar压缩包中删除.zshrc |
| unrar x shiyanlou.rar | 全路径解压 |
| unrar e shiyanlou.rar tmp\ | 去掉路径解压 |
| tar -cf shiyanlou.tar ~或tar -f shiyanlou.tar -c ~ | 创建一个tar包 |
| tar ++-x++f shiyanlou.tar ++-c++ tardir | 解包一个文件到指定目录 |
| tar -tf shiyanlou.tar | 只查看不解包文件 |
| tar -czf shiyanlou.tar.gz ~ | 使用gizp来压缩文件 |
| tar -xzf shiyanlou.tar.gz | 解压文件 |
| 作业 | |
6.文件系统操作与磁盘管理
| 命令 | 作用 |
|---|---|
| df | 查看磁盘的容量 |
| du -h | 查看目录的容量,并以更加易读的方式呈现 |
| du -a | 显示目录中所有文件的大小 |
| du -s | 显示最后文件容量的综合 |
| du -h -d 0 ~(只查看1级目录) ;du -h -d 1 ~(只查看2级) | 查看目录 |
| dd of=test bs=10 count=1(或dd if=/dev/stdin of=test bs=10 count=1) | 用dd命令从标准输入输出到文件 |
| dd if=/dev/stdin of=/dev/stdout bs=10 count=1 | 输出到标准输出 |
| dd if=/dev/stdin of=test bs=10 count=1 conv=ucase | 将输出的英文字符转换为大写再写入文件 |
| dd if=/dev/zero of=virtual.img bs=1M count=256 | 从/dev/zero设备创建一个容量为 256M 的空文件 |
| sudo mkfs.ext4 virtual.img | 虚拟磁盘镜像格式化为ext4文件系统 |
| sudo mount | 使用mount来查看已挂载的文件系统 |
| mount -o loop -t virtual.img /mnt | 挂载虚拟磁盘镜像到/mnt目录 |
| mount -o loop --ro virtual.img /mnt(或mount -o loop,ro virtual.img /mnt) | 以只读方式挂载 |
| sudo unmount /mnt | 使用unmount命令卸载已挂载磁盘 sudo fdisk -l |
7.帮助命令
| 命令 | 功能 |
|---|---|
| type <命令> | 查看命令是內建的还是外建的 |
| help <內建命令> | 显示內建命令的简要帮助信息 |
| <外部命令> --help | 显示外部命令的简要帮助信息 |
| man <命令> | 显示帮助的命令信息 |
| info <命令> | 显示帮助的命令信息(更详细) |
三、感想
本次寒假非常充实,根据娄老师给出的安装步骤,我一步一步来,遇到问题自己百度查询,或者请教助教和同学,当虚拟机安装好后自己内心收获了很大的成就感。在Linux的学习过程中,我根据实验楼教程提示,一步一个脚印,虽然有时也小遇波折,但最终通过查询百度或请教他人,问题都得以解决。我知道自己对于Linux理解的还不够透彻,还需要多加练习,我相信自己一步一个脚印,多加理解和研究,多加练习,本学期一定能取得令自己满意的成绩。

浙公网安备 33010602011771号