一、计算机的组成部分
现代计算机的组成是根据冯.诺依曼体系,包括5大部件存储器、控制器、运算器、输入设备和输出设备。
1.存储器包括内部存储器和外部存储器;内部存储器包括内部硬盘、内存、缓存等,外部存储器包括移动硬盘、光盘、软盘等。主要是存放数据。
2.控制器和运算器组成CPU,相当于人体的大脑,控制着整个计算机的运行和运作。
3.输入设备如键盘、鼠标和扫描仪。相当于人体的眼睛,将"看到的数据交给大脑"。
4.输出设备如显示器、打印机。将大脑处理后的数据说出、写出或者存储到大脑的记忆部分(硬盘)。
当然,计算机除了硬件部分外还有软件部分,去完成一个一个相应的任务或工作,如Office、视频播放器、音乐播放器等等。如何合理的安排硬件资源去给一个一个应用软件,就需要一个统一管理硬件资源的"软件"。这个软件就叫操作系统(Linux、Window、Mac、安卓)。
其实,要让一堆电器完成人类想要完成的任务是一件非常非常复杂的事情,因为机器不能像人一样去思考,去沟通,所以要想人与机器沟通就必须要让人和机器互相了解对方在说什么。人类有英语、中文等等。同样机器也有机器语言,它的语言为二进制。
计算机的组成部分系统图如下:图1(来源百度)
二、Linux 发行版
Linux操作系统其实是将Linux内核与应用软件做一个打包,我们称之为Linux发行版。
BSD协议:
开源协议,给于使用者很大自由的协议。可以自由使用、修改源代码,也可将修改后的代码作为开源或者专用软件再发布。
GPL(GUN General Public License)
Linux就是采用了GPL。GPL的出发点是代码开放/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后或衍生的代码做为闭源的商业软件发布和销售。
Linux发现版本主要有
1.Debian
2.Slackware
3.RedHat
4.Gentoo
5.ArchLinux
.
.
1、 Debian
Debian诞生于1993年8月13日,它相当稳定,主要用于Web的论坛和邮件列表,基于它的发行版本有ubuntu。
ubuntu是一个以桌面应用为主的Linux操作系统,其名称来自于非洲南部祖鲁语
2、Slackware
Slackware Linux是由Patrick Volkerding开发的GNU/Linux发行版。与很多其他的发行版不同,它坚持KISS(Keep It Simple Stupid)的原则。一开始,配置系统会有一些困难,但是更有经验的用户会喜欢这种方式的透明性和灵活性。 Slackware 很多特性体现出了KISS原则,最为有名的一些例子就是不依赖图形界面的文本化系统配置、传统的服务管理方式和不解决依赖的包管理方式。它的最大特点就是安装灵活,目录结构严谨,版本力求稳定而非追新。Slackware的软件包都是通常的tgz(tar/gzip) 或者txz(xz) 格式文件再加上安装脚本。Tgz/Txz 对于有经验的用户来说,比RPM更为灵活,并避免了APT 之类管理器可能带来的的依赖地。Slackware主要为x86 PC开发
基于Slackware的著名发行版本有S.U.S.E、OpenS.U.S.E
3、RedHat
Red Hat(红帽)公司(NYSE:RHT)是一家开源解决方案供应商,也是标准普尔500指数成员。红帽公司为诸多重要IT技术如操作系统、存储、中间件、虚拟化和云计算提供关键任务的软件与服务。红帽的开放源码模式提供跨物理、虚拟和云端环境的企业运算解决方案,以帮助企业降低成本并提升效能、稳定性与安全性。红帽公司同时也为全球客户或通过领先合作伙伴为客户提供技术支持、培训和咨询服务。
基于RedHat的著名发行版本有CentOS、Fedora Core
4、Gentoo
Gentoo是一个基于Linux的自由操作系统,它能为几乎任何应用程序或需求自动地作出优化和定制。追求极限的配置、性能,以及顶尖的用户和开发者社区,都是Gentoo体验的标志特点。 Gentoo的哲学是自由和选择。得益于一种称为Portage的技术,Gentoo能成为理想的安全服务器、开发工作站、专业桌面、游戏系统、嵌入式解决方案或者别的东西——你想让它成为什么,它就可以成为什么。
三、Linux哲学思想
1、Linux设备上一切皆文件。在Linux上包含硬件设备都是用文件来描述。
2、单一目的的小程序。
3、组合小程序完成复杂任务。一个任务都是有许多个小的程序组合完成的。
4、文本文件保存配置信息。要改变程序运行只需要改变配置文本。
5、尽量避免捕获用户窗口。
6、提供机制,而非策略。
四、简单命令使用
命令的语法格式为:
COMMAND OPTION ARGUMENTS
列:[root@localhost ~]# ls -l /var/ ls 命令、-l 选项、/var 参数
第一个必须是命令,第二个是命令的选项,第三个是命令操作的对象。
1、ifconfig
ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。来自: http://man.linuxde.net/ifconfig
用法格式:ficonfig [选项] 参数
显示网卡信息
配置IP地址
2、echo
用于在shell中打印shell变量的值,或者直接输出指定的字符串。
用法 echo [选项] [参数]
使用实列
3、tty
显示连接到当前标准输入的终端设备文件名
用法 tty[选项]…
使用实列
显示当前终端
4、startx
进入图形界面
5、export
用于将shell变量输出为环境变量,或者将shell函数输出为环境变量。
用法 export [选项] [参数]
-f:代表[变量名称]中为函数名称;
-n:删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中;
-p:列出所有的shell赋予程序的环境变量。
6、pwd
以绝对路径的方式显示用户当前工作目录。
-L –logical 显示当前目录
-P –physical 显示当前目录的实际物理位置
7、history
用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件。
历史命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取。在内存中,历史命令仅能够存储1000条历史命令,该数量是由环境变量HISTSIZE进行控制。
该命令单独使用时,仅显示历史命令,在命令行中,可以使用符号!执行指定序号的历史命令。例如,要执行第2个历史命令,则输入!2。
用法 history [选项][参数]
-c 清空当前历史命令
-a 将历史命令缓冲区中命令写入历史命令文件中
-r 将历史命令文件中的命令读入当前历史命令缓冲区
-w 将当前历史命令缓冲区命令写入历史命令文件中
参数n:打印最近的n条历史命令
使用实列:
8、shutdown 、poweroff、reboot
这些命令都与机器开关机有关
shutdown用来系统关机命令。shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作。用法 shutdown [选项][参数]
-c 当执行"shutdown -h 11:50"指令时,只要按+键就可以中断关机指令
-f 重新启动时不执行fsck
-F 重新启动时执行fsck
-h 将系统关机
-r shutdown之后重新启动
参数 [时间] 设置多久时间后执行shutdown指令
[警告信息] 要传送给所有登入用户的信息
poweroff用来关闭计算机操作系统并且切断系统电源。
poweroff[选项]
-n 关闭操作系统时不执行sync
-d 关闭操作系统时,不将操作写入日志文件"/var/log/wtmp"中添加相应记录
-f 强制关闭操作系统
-i 关闭操作系统之前关闭所有的网络接口
reboot用来重新启动正在运行的Linux操作系统。
reboot [选项]
-f 强制重新开机,不调用shutdown指令功能
-w 仅做测试,并不真正将系统重新开机只会把重新开机的日志写入/var/log目录下的wtmp记录文件
9、hwclock 、date
这两个命令都是对时间和日期操作的命令
hwclock命令是一个硬件时钟访问工具,它可以显示当前时间、设置硬件时钟的时间和设置硬件时钟为系统时间,也可设置系统时间为硬件时钟的时间。
在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。
hwclock[选项]
–adjust:hwclock每次更改硬件时钟时,都会记录在/etc/adjtime文件中。使用–adjust参数,可使hwclock根据先前的记录来估算硬件时钟的偏差,并用来校正目前的硬件时钟;
–debug:显示hwclock执行时详细的信息;
–directisa:hwclock预设从/dev/rtc设备来存取硬件时钟。若无法存取时,可用此参数直接以I/O指令来存取硬件时钟;
–hctosys:将系统时钟调整为与目前的硬件时钟一致;
–set –date=<日期与时间>:设定硬件时钟;
–show:显示硬件时钟的时间与日期;
–systohc:将硬件时钟调整为与目前的系统时钟一致;
–test:仅测试程序,而不会实际更改硬件时钟;
–utc:若要使用格林威治时间,请加入此参数,hwclock会执行转换的工作;
–version:显示版本信息。
date命令是显示或设置系统时间与日期。
很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作。延时通常用于脚本执行过程中提供一段等待的时间。日期可以以多种格式去打印,也可以使用命令设置固定的格式。在类UNIX系统中,日期被存储为一个整数,其大小为自世界标准时间(UTC)1970年1月1日0时0分0秒起流逝的秒数
date[选项][参数]
日期与字符串格式
%H 小时,24小时制(00~23)
%I 小时,12小时制(01~12)
%k 小时,24小时制(0~23)
%l 小时,12小时制(1~12)
%M 分钟(00~59)
%p 显示出AM或PM
%r 显示时间,12小时制(hh:mm:ss %p)
%s 从1970年1月1日00:00:00到目前经历的秒数
%S 显示秒(00~59)
%T 显示时间,24小时制(hh:mm:ss)
%X 显示时间的格式(%H:%M:%S)
%Z 显示时区,日期域(CST)
%a 星期的简称(Sun~Sat)
%A 星期的全称(Sunday~Saturday)
%h,%b 月的简称(Jan~Dec)
%B 月的全称(January~December)
%c 日期和时间(Tue Nov 20 14:12:58 2012)
%d 一个月的第几天(01~31)
%x,%D 日期(mm/dd/yy)
%j 一年的第几天(001~366)
%m 月份(01~12)
%w 一个星期的第几天(0代表星期天)
%W 一年的第几个星期(00~53,星期一为第一天)
%y 年的最后两个数字(1999则是99)
五 Linux man 手册使用
使用手册 manual (手册存放路径[root@localhost ~]# ls /usr/share/man/)man -M /PATH/SOMEDIR 到指定目录查找
1、 帮助手册说明
NAME 名字
SYNOPSIS 语法格式: []可选内容、<>必须提供的内容、a|b|c多选一、…同类内容可出现多个
DESCRIPTION 描述 OPTIONS 选项
EXAMPLES 实列
AUTHOR 作者
BUGS BUG
SEE ALSO 参考
2、手册的章节之分
1:用户命令
2:系统调用命令
3:C库调用命令
4:设备文件及特殊文件
5:文件格式(配置文件格式)
6:游戏使用帮助
7:杂项
8:管理工作及守护进程
默认查询手册是1-8查询。查看哪些章节有命令描述使用[root@localhost ~]# whatis ls。它是查询数据库的,手动更新数据库使用[root@localhost ~]# makewhatis
3、手册使用方法
空格键 向文件尾部翻一屏
b 向文件首部翻一屏
Ctrl+d 向文件尾部翻半屏
Ctrl+u 向文件首部翻半屏
k 向文件首部翻一行
G 跳转至最后一行
1G 跳转到首部
文本搜索
/keyword 从首到尾
?keyword 从未到首
六 Linux 文件目录
/bin 用户可用的基本命令程序文件
/sbin 系统使用的文件
/boot 开机使用的文件,包括Linux内核文件以及开机菜单与开机所需配置文件等 kernel、initramfs、grub
/dev 以文件形式存放任何设备与接口设备:/dev/null、/dev/zero、/dev/tty、/dev/hd*
设备类型
块设备(随机访问)
字符设备(线性设备)
/etc 系统的静态配置文件:/etc/ inittab、/etc/opt、/etc/X11、
/home 系统默认的用户主文件夹,~代表当前用户主文件夹
/root 管理员家目录
/lib 放置在开机时会用到的函数库,以及在/bin或/sbin下面的命令会调用的函数库
libc.so.* 动态链接的C库
ld* 运行时链接器/加载器
modeules 用于存储内核模块的目录
/lib64 64位操作系统库的存放位置
/media floppy、cdrom、cdrecorder、zip
/mnt 其他文件系统的临时挂载点
/opt 附加应用程序安装位置(第三方应用程序)
/srv 当前主机为服务提供的数据
/tmp 产生临时文件的程序提供
/usr 全局共享的只读数据路径
bin、sbin
lib、lib64
include:C程序头文件
share:命令手册、自带文档
local:另一个层级目录
X116、X-Window 程序的安装位置
src:程序源码文件的存储位置
/usr/local
/var 经常变化的目录:日志
cache
lib
local
lock
log
opt
run
spool
tmp
/proc: 内核及进程存储其相关信息:他们多为内核参数。列如net.ipv4.ip_forward,虚拟为/net/ipv4/ip_forward,存储于/proc/sys,因此其完整路径为/proc/sys/net/ipv4/ip_forward
/sys 管理Linux设备提供一种统一接口模型
原创文章,作者:ttxsjh,如若转载,请注明出处:http://www.178linux.com/31900