第一节 Linux简介
一、Linux的历史:
- 1965 年,Bell 实验室、MIT、GE(通用电气公司)准备开发 Multics 系统,为了同时支持 300 个终端访问主机,但是 1969 年失败了;
刚开始并没有鼠标、键盘,输入设备只有卡片机,因此如果要测试某个程序,则需要将读卡纸插入卡片机,如果有错误,还需要重新来过; Multics:Multiplexed Information and Computing Service
- 1969 年,Ken Thompson(C语言之父)利用汇编语言开发了 FIle Server System(Unics,即 UNIX 的原型)
因为汇编语言对于硬件的依赖性,因此只能针对特定硬件; 只是为了移植一款“太空旅游”的游戏;
- 1973 年,Dennis Ritchie 和 Ken Thompson 发明了 C 语言,而后写出了 UNIX 的内核
将 B 语言改成 C 语言,由此产生了 C 语言之父; 90% 的代码是 C 语言写的,10% 的代码用汇编写的,因此移植时只要修改那 10% 的代码即可;
- 1977 年,Berkeley 大学的 Bill Joy 针对他的机器修改 UNIX 源码,称为BSD(Berkeley Software Distribution)
Bill Joy 是 Sun 公司的创始人;
- 1979 年,UNIX 发布 System V,用于个人计算机;
- 1984 年,因为 UNIX 规定:“不能对学生提供源码”,Tanenbaum 老师自己编写兼容于 UNIX 的Minix,用于教学;
- 1984 年,Stallman 开始 GNU(GNU‘s Not Unix)项目,创办 FSF(Free Software Foundation)基金会;
产品:GCC、Emacs、Bash Shell、GLIBC; 倡导“自由软件”; GNU 的软件缺乏一个开放的平台运行,只能在 UNIX 上运行; 自由软件指用户可以对软件做任何修改,甚至再发行,但是始终要挂着 GPL 的版权; 自由软件是可以卖的,但是不能只卖软件,而是卖服务、手册等;
- 1985 年,为了避免 GNU 开发的自由软件被其他人用作专利软件,因此创建 GPL(General Public License)版权声明;
- 1988 年,MIT 为了开发 GUI,成立了 XFree86 的组织;
- 1991 年,芬兰赫尔辛基大学的研究生 Linus Torvalds 基于 gcc、bash 开发了针对 386 机器的 Linux 内核;
- 1994 年,Torvalds 发布 Linux-v1.0;
- 1996 年,Torvalds 发布 Linux-v2.0,确定了 Linux 的吉祥物:企鹅。
二、Linux 重要人物
1.Ken Thompson:C 语言之父和 UNIX 之父
2.Dennis Ritchie:C 语言之父和 UNIX 之父
3.Stallman:著名黑客,GNU 创始人,开发了 Emacs、gcc、bash shell
4.Bill Joy:BSD 开发者
5.Tanenbaum:Minix 开发者
6.Linus Torvalds:Linux 之父,芬兰赫尔辛基大学
三、Linux 与 Windows 到底有哪些不同
1.免费与收费
- 最新正版 Windows8.1 官方售价 ¥888;
- Linux 免费或少许费用。
2.软件与支持
- Windows 平台:数量和质量的优势,不过大部分为收费软件;由微软官方提供重要支持和服务;
- Linux 平台:大都为开源自由软件,用户可以修改定制和再发布,由于基本免费没有资金支持,部分软件质量和体验欠缺;有全球所有的 Linux 开发者和自由软件社区提供支持。
3.安全性
- Windows 平台:三天两头打补丁安装系统安全更新,还是会中病毒木马;
- Linux 平台:要说 Linux 没有安全问题,那当然是不可能的,这一点仁者见仁智者见智,相对来说肯定比 Windows 平台要更加安全,使用 Linux 你也不用装某杀毒,某毒霸。
4.使用习惯
- Windows:普通用户基本都是纯图形界面下操作使用,依靠鼠标和键盘完成一切操作,用户上手容易入门简单;
- Linux:兼具图形界面操作(需要使用带有桌面环境的发行版)和完全的命令行操作,可以只用键盘完成一切操作,新手入门较困难,需要一些学习和指导(这正是我们要做的事情),一旦熟练之后效率极高。
5.可定制性
- Windows:这些年之前算是全封闭的,系统可定制性很差;
- Linux:你想怎么做就怎么做,Windows 能做到得它都能,Windows 做不到的,它也能。
6.应用范畴
或许你之前不知道 Linux ,要知道,你之前在 Windows 使用百度,谷歌,上淘宝,聊 QQ 时,支撑这些软件和服务的,是后台成千上万的 Linux 服务器主机,它们时时刻刻都在进行着忙碌的数据处理和运算,可以说世界上大部分软件和服务都是运行在 Linux 之上的。
7.Windows 没有的
- 稳定的系统
- 安全性和漏洞的快速修补
- 多用户
- 用户和用户组的规划
- 相对较少的系统资源占用
- 可定制裁剪,移植到嵌入式平台(如安卓设备)
- 可选择的多种图形用户界面(如 GNOME,KDE)
8.Linux 没有的
- 没有特定的支持厂商
- 游戏娱乐支持度不足
- 专业软件支持度不足
第二节 基本概念及操作
一、Linux 桌面环境介绍
相对于现在的 Windows 系统,UNIX/Linux 本身是没有图形界面的,我们通常在 Unix/Linux 发行版上看到的图形界面实际都只是运行在 Linux 系统之上的一套软件,类似 Windows95 之前的Windows 的图形界面实则也只是运行在 DOS 环境的一套软件。而 Linux 上的这套软件以前是XFree86,现在则是 xorg(X.Org),而这套软件又是通过 X 窗口系统(X Window System,也常被称为X11或X)实现的,X 本身只是工具包及架构协议,而 xorg 便是 X 架构规范的一个实现体,也就是说它是实现了 X 协议规范的一个提供图形用户界面服务的服务器,就像实现了 http 协议提供 web 服务的 Apache。如果只有服务器也是不能实现一个完整的桌面环境的,当然还需要一个客户端,我们称为 X Client,像如下几个大家熟知也最流行的实现了客户端功能的桌面环境KDE,GNOME,XFCE,LXDE,其中就有你看到的,实验楼目前使用的 XFCE 桌面环境,部分老用户可能可以回想起,实验楼之前使用的环境是 LXDE。这也意味着在 Linux 上你可以自己选择安装不同的桌面环境,甚至可以定制自己的专属桌面。
二、终端、SHELL、命令行操作体验
终端:
SHELL:
、
以下是实验的部分截图:
作业截图:
第三节 用户及文件权限管理
心得笔记:
在Linux中创建新用户的话,一般是没有root权限的。如果要想拥有管理员权限的话可以修改用户的权限。但在目录中修改权限有可能一不小心导致很麻烦的情况发生,因此建议将自身用户名加入sudo的用户组中去,使其拥有管理权限。使用sudo和su指令效果差不多,但sudo的安全性较高。通过chmod指令给文件设置权限,rwx的顺序。
权限是Linux最为重要的一部分。有一句话说得好:人非圣贤孰能无过,但拥有root权限就真的是万劫不复了。
以下是实验截图:
作业截图:
第四节 Linux 目录结构及文件基本操作
笔记:本节讲述了关于Linux目录与文件的基本操作处理,如创建、重命名、移动、复制等。
具体操作如下:
作业截图:
第五节 环境变量与文件查找
环境变量的设置:
文件查找:
作业截图(代码雨):
第六节 文件打包与压缩
笔记:注意记住打包和压缩的命令,今后有用。
命令截图:
作业截图:
第七节 文件系统操作与磁盘管理
心得:熟悉文件系统和磁盘管理的操作命令,熟练命令行操作。
笔记截图:
作业截图:
第八节 命令执行顺序控制与管道
笔记:任何系统都是要区分执行命令的先后顺序的。可以由我们这些用户来命令系统来排命令的先后执行顺序,Linux的操作系统也是如此。熟练的运用这个功能可以使Linux更加高效的被使用。
截图:
作业截图(未成功):
分析原因:实验楼的Linux无法连接外网,无法载入实验作业所给的图片,导致无法对png图片使用asciiview命令。
第九节 简单的文本处理
tr:
col:
join:
paste:
实验截图:
作业截图:
第十节 数据流重定向
笔记:要熟练掌握关于数据流的操作,stdin、stdout、stderr三者都要有所涉猎。
截图:
作业截图:
第十一节 正则表达式基础
笔记:主要要会灵活运用,通过练习熟练掌握。
截图:
grep:
特殊符号:
sed:
awk:
作业截图:
第十二节 Linux软件下安装
心得笔记:需要我们去找一个资源库,平时所需要的软件工具可以从上面下载下来使用。
截图:
apt:
作业截图:
至此,Linux入门实验到此告一段落了。本学期学习Linux希望能学有所成,能学有所用。希望能多掌握一门有用的技术!!!
下次见啦~