*计算机的组成以其功能:
当今计算机系统由硬件系统和软件系统两大部分组成。硬件系统是指计算机的物理设备,包括CPU,存储器,输入/输出模块等。软件系统则是各种程序和数据的集合。
硬件结构的基本构成:
- 处理器:
用于控制计算机的操作,执行数据处理功能,是计算机硬件的核心。由控制器,运算器和一组寄存器组成。
控制器:负责根据读入的指令决定计算机的操作
运算器:负责对数据进行加减乘除等算术运算和一些逻辑运算
寄存器:提供一定的存储能力。访问速度快但价格昂贵。一般用途寄存器用于存取数据和内存地址。
- 存储器:
有寄存器,高速缓冲存储器cache,主存,辅存,
主存:又称内存,内部的主要存储器,有rom和ram两种。一般计算机中使用的ram都是易失性的。
高速缓冲存储器:在处理器和主存之间的高速缓冲介质,用于缓解处理器和主存之间的速度不匹配,提高系统性能。
辅存:主要着重容量和价格的非易失性辅助存储器。用于存储大量的程序和数据,也可以作为主存储器的后备,作为虚拟内存使用。
- 输入/输出模块
输出:打印机,显示器等
输入:键盘,鼠标等
软件系统:
操作系统:为了能够高效简洁地使用计算机的硬件资源而出现的计算机软件。对硬件资源进行虚拟化,的一种资源管理器,同时为用户提供用户接口,程序执行,读写操作,文件管理等服务。
其他程序,用于实现用户功能的程序,依赖于操作系统。
*Linux的主流发行版
Linux的主要发行版:
- Red Hat Enterprise Linux:Red Hat公司的Linux发行版,RHEL是商业发行版,不提供免费下载和使用。但是有其开源的衍生版CentOS.
- CentOS: REHL的二次发行版,基于RHEL开发的源码去除了商业标签等方面,可能在一定程度上比RHEL稳定。
- Fedora(Fedora Core): red hat在停止了自己的个人桌面系统后,赞助fedora项目社区所构建的基于red hat linux的发行版。
- Debian: 一个由社区发展起来的linux发行版,有众多的软件包。
- Ubuntu: Debian的衍生版,一款流行的桌面操作系统,也有面向服务器使用的系统。
- OpenSUSE: 个人桌面系统,界面非常优秀。
*Linux的哲学思想
Linux的哲学思想
- 一切皆文件
系统上的资源和通讯管道都体现为文件的形式,例如socket,pipe,进程,内存等。
- 单一目的小程序,组合小程序完成复杂任务
将复杂的任务切分为简单的任务,如果需要重复那就再运行一次。
- 使用文本方式保存配置文件
配置文件都是可以简单编辑的
- 尽量避免捕捉用户接口
避免和用户交互。
*一些命令的简单使用
ifconfig :命令用来查看和配置网络设备。
ifconfig [网络设备] [参数]
up 启动指定网络设备。
down 关闭指定网络设备。
arp 设置指定网卡是否支持ARP协议。
-promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包
-allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包
-a 显示全部接口信息
-s 显示摘要信息
add 给指定网卡配置IPv6地址
del 删除指定网卡的IPv6地址
<硬件地址> 配置网卡最大的传输单元
mtu<字节数> 设置网卡的最大传输单元 (bytes)
netmask<子网掩码> 设置网卡的子网掩码。掩码可以是有前缀0x的32位十六进制数,也可以是用点分开的4个十进制数。如果不打算将网络分成子网,可以不管这一选项;如果要使用子网,那么请记住,网络中每一个系统必须有相同子网掩码。
Echo: 显示一行的文本
-e 启用反斜杠转移解释
若启用,一些特别的字符串就会被转移:
\\ 反斜杠
\a 警告音
\b 删除前一个字符
\c 结束字符串
\f 换行但仍然保持位置
\r 位置一道行首,不换行
\t 水平制表符
\v 垂直制表符
-E 取消反斜杠转移解释(默认)
-n 输出之后不换行
Tty 打印已连接到标准输出的终端文件名
-s 静默模式
lap@ubuntu:~$ tty
/dev/pts/0
lap@ubuntu:~$ tty -s
Startx 初始化X会话 “GUI X windows”
-w 强制启动
Export 设置或显示环境变量
-n 不再使用指定变量,但仍然存在
-p 列出shell设置的环境变量 (默认选项)
用法: export NAME=KEY
Pwd 打印工作目录名字
-L 使用环境变量PWD的值,即使其包含了软链接
-P 显示绝对路径名, 回避所以软链接
History
!! 与!-1相同,指向上一条执行的命令
!n 执行第n行的命令
!-n 执行当前命令前n条命令
!string 执行与该字符串开头的最后的命令
-c 清空历史命令
-d offset 删除指定命令历史
-r 从文件中读取历史到历史列表中
-w 把历史列表中的命令追加到历史文件中
与history相关的环境变量HISTCONTROL, HISTSIZE
Ignoredups 忽略重复的命令
Ignorespace 忽略以空白字符开头的命令
Ignoreboth 以上两者同时生效
Shutdown 关机或重启
shutdown [OPTIONS…] [TIME]
-h –halt 停机
-r –reboot重启
-P –poweroff 关机并断开电源(默认选项)
-c 取消计划关机
-k 仅仅发送wall信息
TIME : hh:mm or +sec, now is alias ‘+0’
halt [OPTIONS…] poweroff [OPTIONS…] reboot [OPTIONS…]
–halt
-p, –poweroff
-reboot
-f, –force 强制运行
-w 只是将记录写入到/var/log/wtmp中,并不进行实际操作
-d 不要将记录写入到/var/log/wtmp中
–no-wall 不要发送wall在操作之前
Hwclock 读取或设定硬件时间
-r show
-s hctosys 将硬件时钟同步到系统时钟
-w 将系统时钟同步到硬件时钟
Date
-d, –date==STRING 显示按STRING描述的时间
-r –reference=文件 显示文件指定文件最后的修改时间
-s –set=STRING 设置指定按字符串描述的时间
lap@ubuntu:~$ date
Wed Dec 6 08:34:57 PST 2017
lap@ubuntu:~$ sudo date -s “07/12/2017 00:40”
Wed Jul 12 00:40:00 PDT 2017
lap@ubuntu:~$ sudo hwclock
Wed 06 Dec 2017 08:41:37 AM PST .816377 seconds
lap@ubuntu:~$ sudo hwclock -w
lap@ubuntu:~$ sudo hwclock
Wed 12 Jul 2017 12:40:14 AM PDT .615655 seconds
*linux下的文件夹
在Linux系统上获取命令的帮助信息
- info
- 命令自带的—help/-h
- man手册
- 对于內建的命令: help COMMAND
Man 手册的使用格式
#Man [CHAPTER] COMMAND
Man文档章节的划分:
- 用户命令
- 系统调用
- 库函数
- 设备文件
- 文件格式
- 游戏娱乐
- 杂项
- 管理员命令
可以使用whatis COMMAND 来显示COMMAND的相关章节, makewhatis可以手动更新man数据库。
为了方便管理,linux的发行版都遵循这FHS(文件系统层级化标准)
- /
/bin: 全部用户可用的基本命令程序
/sbin:系统管理的命令程序
/boot: 引导加载器所需要的静态文件(kernel, initramfs, grub等)
/dev: 设备文件,存储设备文件
/etc: 系统程序运行的配置文件,静态限定
/home: 普通用户默认的家目录
/lib: 系统启动和根文件系统上运行的应用程序(/bin, /sbin等)需要的共享库和内核模块
/lib64: 64位系统特有的存放64位共享库的路径
/media:便携式设备的临时挂载点
/mount: 其他文件系统的临时挂载点
/opt: 附加的应用程序安装位置
/root: root用户的家目录
/srv: 当前主机为服务提供的数据
/tmp: 临时文件存储点,所有用户都可以写入数据
- /usr 全局共享的只读数据路径,有其单独的层级结构
bin, sbin,
include
lib, lib64: bin, sbin 程序需要一部分的共享库, 也可能会用到根目录下的库
share:命令手册页,命令自带文档等架构独有的文件存储位置
·local 系统管理员安装本地应用,有单独的层级结构
Bin, sbin, lib, lib64, etc, src, man
- /var 存储频繁发生变化的数据目录
Cache 应用缓存文件
Lib 变化的状态信息
Local /usr/local 的变化的数据
Lock 锁文件
Log 日志记录
Opt /opt 的变化数据
Spool 假脱机数据
Tmp 重启间的临时文件
Run 运行中进程的相关数据
- /proc /sys 虚拟文件系统
/proc 基于内存的虚拟文件系统,用于为内核及进程存储其相关信息
/sys 提供比proc更为理想的访问内核数据的途径:其主要作用在于为管理Linux设备提供一种统一模型的接口。
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/89600