linux学习笔记001

2019-04-14 19:10发布

搭建环境   虚拟街选择桥接模式(红帽5.8 32位红帽6.3 64位密码是peng) 创建后拍摄快照。 虚拟机操作ctrl+alt+insert重启计算机按F2进bios。 虚拟终端(terminal) Ctrl+Alt+F1-F6 计算机基本知识 计算机体系结构:运算器,控制器,存储器,内存,编址RAM ROM,输出设备,输入设备。   自举只有两个功能:加电自检和磁盘引导。 POST:加电自检 BIOS 加电自检:当我们按下计算机电源开关时,头几秒钟机器似乎什么反应也没有,其实,这时的计算机正在进行加电自检,以断定它的所有元件都在正确地工作。如果某个元件有故障,显示器上就会出现报警提示信息(如果显示器也不能正常工作,则以一串嘟嘟声来报警)。由于大多数计算机工作非常可靠,加电自检报警非常罕见。  磁盘引导:查找装有操作系统的磁盘驱动器。从磁盘加载操作系统的原因有二: 一是操作系统升级简单容易, 二是使用户拥有选择操作系统的自由。 当以上功能完成时,自举操作就启动一个读写操作系统文件和将它们复制到随机存储器中的过程,此时的机器才是真正意义上的计算机。计算机的启动可以有冷启动和热启动两种方式,它们之间的差别是热启动不进行机器的自检(机器本身配置的检查与测试),当计算机在使用过程中由于某些原因造成死机时, 可以对计算机进行热启动处理。   程序:指令+数据+文档   硬件架构:ARM 省电, x86 intel32位, x64 amd64, 安腾 intel 从惠普收购64位, alpha 惠普的cpu, UltraSparc sun公司性能强, Power 最强 IBM 2,4核 , M68000, M68K 摩托罗拉, PowerPC 苹果 IBM 比POWER差一点。   操作系统类型OS: Windows Linux Unix  HP-UX  Solaris  AIX  SCOUNIX  Unixware OS/2   操作系统内核功能:  进程管理  内存管理  文件系统  网络功能  硬件驱动  安全机制 Unix历史 早期批处理系统  作业按顺序提交jobs1$$$$$$$jobs2$$$$$$$$作业一二 ,缺点效率低下 三个组织联合开发多任务批处理系统Multics GE通用电气, Bell, MIT 用汇编语言研发多任务批处理系统 MainFrame 大型机跑多任务系统Multics 多用户多任务基本功能完成 GE退出 Bell退出 MIT继续 肯•汤普逊(Bell实验室的人) Space Travel游戏无法在MainFrame运行开发内核(汇编语言开发移植性差)1972年申请机器 PDP-11(DEC公司的产品),被拒角落发现PDP-7   DEC:生产计算机的公司,同IBM一样,unix出现就买不动了 DEC公司有两个系列的计算机  PDP-11, PDP-7 VAX --> vms(系统)   肯•汤普逊移植系统,在bell实验室风靡,Unics同事取的简单的名字 --> Unix 和同事一起解决移植性问题 丹尼斯里奇(Dennis MacAlistair Ritchie)和肯•汤普逊改进B语言为C语言, 用C语言重写UNIX,重写Unix 高级语言低30%。   Bell因为法律规定无偿提供unix 。   Bill Joy研究生: BSRG小组 BSD版本的UNIX。 肯•汤普逊加入使得伯克利 成为uinx的领头羊。 BSD: Berkeley System Distribution 伯克利系统分发版 买钱 System V(unix)  bell实验室发行的版本(bell实验室分裂,就不受约束了) unix 发展停滞,因为这两个阵营打官司。   大公司的竞争 IBM开始生产PC机 unix只能运行在PDP系列(M68K的CPU),没有往pc兼容机(x86系列的cpu)上移植,原因是intel公司的CPU性能差,编程界面丑陋;美国一个教授开发了一个通用的CP/M系统,但是系统很贵。迫切的需要降低费用的方法。   81年,比尔盖茨Microsoft西雅图小公司开始买unix,unix起名字Xenix(unix)还卖B语言编译器 比尔的同事的同事仿照CP/M写了一个系统(DOS的原型)比尔5万美元买断,再卖给IBM。然后赚了一大笔。这个系统不是图形界面的。   Microsoft一直到很顺直到 开始jobs 乔布斯 研究pc机 用 powerpc的CPU加unix系统。苹果是硬件加软件一起买,微软只卖软件。 jobs 发现Xerox公司的图形界面,买断Xerox的park公司买了图形操作系统又被比尔获得。   Microsoft凭借图形界面有赚了一笔。   Xerox公司: 复印机PARK 研究第一个鼠标 ,第一个图像界面  Xerox   BSD的子分支 FreeBSD pc 苹果机的核心 BSD的分支 pc机上 正统的unix OpenBSD 安全 NetBSD 服务   Sun MicroSystem  Bill Joy研究生成立sun公司 生产当时的工作站 Sun OS --> Solaris unix正统unix,优化了的unix,商业版的unix只能运行在 sun公司引入c shell   windows95 98 基于dos 蓝屏, DEC公司被其他公司收购收购  windows 基于这个系统VAX --> vms(系统)-windowsnt(new t) (新一代windows)引入微软公司,解决windows蓝屏问题   GNU/linux的诞生 unix不能用了,让这个教授和不爽 Andrew: Minix (小unix)荷兰大学的教授仿照unix教学的系统 老教授不愿意加驱动,学生很郁闷。 Linus(学生)人名: 外公是Linux 芬兰工信部公子写小系统自由,自己写了一个linux随便改的linus   80年, Stallman麻省理工教授,Freedom 成立GNU 程序是全人类的 组织GNU: GNU is Not Unix 指Unix商业化 GPL: General Public License 改的内容一并公布 像病毒。 Emacs: 文本编辑器 Stallman研发 gcc: GNU C Complier Stallman研发 GNU需要内核 bash: GNU的东西 Linux:glibc(库), gcc, c库和编译器 GNU/Linux Stallman强调GNU   源代码: C --> 编译成二进制 (交叉编译) ABI:Application BinaryInterface CPU支持的二进制格式 并不是每个用计算的人都要求自己编译源码,所以出现第三方的组织,发行版发行商将源代码编译到不同的平台第三方组织通用格式。 RedHat 美国北美流行 SLS Debian 不售商业组织支持,高级用户,自由维护,难用 SUSE 开发OpenSUSE 德国三个大学生 欧洲流行   kernel: 2w 个外围软件,软件过多,需要管理,出现软件包管理器 Debian, dpt 软件管理器 RedHat, rpm 管理软件包   GPL 改了也要发源码,GPL出现宽松版 LGPL: Lesser 宽松的GPL GPLv2 GPLv3 BSD 宽松 Apache 宽松 开源:开放源代码 开源和自由不同 自由: 自由获取,自由修改,自由学习   Ubuntu:Debian的二次发行版 Mint(绿 {MOD}) Ubuntu的二次发行版pc机的使用 CentOS: Community ENTerprise OS 社区企业开发系统, 红帽用售后服务赚钱,补丁也可以赚钱,不给升级包 后来出现社区版的红帽centos,社区组织开源系统 centos等红帽发布了源码就编译成二进制发布。   Fedora: 红帽个人版 企业级测试 Mandriva 红帽二次发行版 界面很好看 个人桌面版的 SUSE被收购 --> Novell(网络操作系统)(Netware被WINDOWS NT取代,想东山再起,买UNIX买贝尔实验室,买suse后来跟微软同流合污,把unix弄成交互式的),  德国三个大学生 ,有开源的opensuse。 SUSE的前身是SLS Debian 不售商业组织支持,高级用户,自由维护,难用 Ubuntu基于Debian 还有Mint 绿 {MOD}的主调 Linux基本知识 Linux架构图     Linux的基本原则: 1、由目的单一的小程序组成;组合小程序完成复杂任务; 2、一切皆文件; 3、尽量避免捕获用户接口;少让用户输入东西ls直接出结果 4、配置文件保存为纯文本格式;   GUI接口:图形接口 CLI接口:命令行接口    命令提示符,prompt,bash(shell)   #:root   $: 普通用户 命令格式: 命令  选项  参数 选项: 短选项: - 多个选项可以组合:-a -b = -ab 长选项: -- 参数:命令的作用对象    GUI: 图形界面 Gnome: C,KDE: C++,XFace CLI: sh,bash ,csh, zsh, ksh, tcsh su: switch user # su [-l] 用户名 -l完全切换 或者- 不带-半切换只切换了用户,环境没有切换 exit退出   # passwd:password 可以改密码,密码的建议符合下面的规则。 密码复杂性规则: 使用4种类别字符中至少3种; 2、足够长,大于7位; 3、使用随机字符串; 4、定期更换; 5、循环周期足够大; 例子passwd peng 改变peng用户的密码,passwd默认改变当前用户的密码