码迷,mamicode.com
首页 > 系统相关 > 详细

计算机及Linux简介

时间:2018-09-25 01:08:38      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:简洁   ring   mnt   网卡   调用   管理   存放位置   type   官方   

1.计算机的组成及其功能

计算机,人们生活、工作常用的一种工具,如电脑、手机以及各种智能穿戴设备等等。它通过接收外部的信息输入,进行相应的计算,实现信息的存储、显示。计算机由硬件和软件组成(就像人的身体和灵魂)

1.1 硬件

计算机的硬件通常包含:CPU、存储器、输入、输出设备。
1.CPU,可分成运算器和控制器。运算器主要用于实现算数(如:加 减 乘 除)、逻辑运算(如:与 或 非);控制器用于控制、协调计算机的各项工作,保证计算机能有条不紊的运行。这两者就好比战场上的指挥官和战士。
2.存储器,在计算机中一般称为内存,用于存储程序和数据,CPU通过总线对内存进行读写访问,实现程序读取、数据存储。
3.输入设备,计算机获取外部信息输入的设备,如键盘、鼠标、传感器等。
4.输出设备,用于信息输出的设备,如显示器、音箱、打印机


技术分享图片

1.2 软件

软件,用于实现对计算机硬件的操控,包括系统软件、应用软件

  1. 系统软件,直接与硬件打交道,如操作系统、底层驱动程序、编译器等
    1)操作系统,用于实现软、硬件资源的管理,是应用软件与硬件之间的接口、用户与计算机之间的接口。
    2)底层驱动程序,用于实现硬件的初始化、驱动,如声卡驱动、网卡驱动等
    3)编译器,将用户编写的源程序翻译成机器能识别的二进制文件,如turboC,gcc。
  2. 应用软件,用于实现某些具体的功能,它的运行依赖于系统软件。如文本编辑软件、音频视频播放软件。

2.Linux的发行版本

2.1 Linux操作系统简介

Linux操作系统是一种开源的操作系统,其内核由Linus Torvalds于1991年首次发布,经过世界上广大程序员的贡献,它已经成为了世界上应用最广泛、性能优良的操作系统。

2.2 Linux发行版

Linux就其本质而言仅仅是指操作系统的内核,并不包括应用软件、编译器等。由于Linux是开源的,因此任何人、组织或者厂商都可以在遵循开源协定的情况下将LInux内核与应用软件、工具软件组合在一起,形成一套功能强大的操作系统,这便是LInux发行版。
Linux发行版根据不同来源分为商业发行版(商业公司提供)和民间发行版(社区或个人提供),主要有Redhat系列、Debian系列、Slackware系列。

2.2.1 Redhat系列

Redhat系列由Redhat(红帽)公司发行的Linux操作系统,主要有一下3种:
1、REHL(Redhat Enterprise Linux),收费版本,功能、性能十分强大,一般用于大型服务器
2、Fedora Core,免费版,由Redhat桌面版演变而来,其功能、性能相对REHL较差,只用于桌面应用。但是该版本会集成最新的功能(用户可尝鲜),成熟稳定后将集成到REHL中,因此它也被视为REHL的“试验田”
3、CentOS(Community enterprise OS),是由社区按开源协定将REHL的源代码重新编译而来,且会修复一些REHL原有的BUG,因此比较稳定,免费版.

2.2.2 Debian系列

Debian系列是完全由社区发行的Linux操作系统。
1、Ubuntu,基于Debian的桌面版Linux,界面十分漂亮,稳定,易学。此外Ubuntu还有Linux Mint,Kubuntu,Xubuntu等衍生版本
2、Knopix,桌面系统,可通过光盘直接启动,无需安装
3、MEPIS ,桌面系统,它集合了Debian Sid和Knoppix的特点,可安装,也可直接通过光盘启动。

2.2.3 Slackware系列

最初是由Patrick Volkerding个人发起的SLS项目而来,坚持UNIX风格。
1、Slackware,遵循KISS理念,坚持BSD启动风格,稳定、但配置稍复杂,比较适合有经验的人使用。
2、S.u.S.E,由Slackware衍生而来,稳定、管理方便,但是对中文支持较差。
3、openS.u.S.E,由S.u.S.E发展而来,界面华丽,性能良好。

2.2.4 其他版本

1、ArchLinux ,简洁、更新速度快,需要用户花时间配置
2、Gentoo,提供源代码,用户可重新编译源代码重构Linux。
3、LFS,只提供制作LInux系统的方法以及一些必须的脚本、补丁,适合骨灰级玩家,也可用于学习如何制作一个操作系统,

2.2.5 各版本区别

1、这几个版本最大的区别在于程序包管理器不同,Debian系列用的是dpkg,使用apt-get命令进行软件安装、卸载。Redhat系列用的是rpm,S.u.S.E等其他Linux版本也有采用,使用yum(升级版:dnf)命令进行软件安装、卸载。此外,S.u.S.E本身有的软件包管理器zypper(针对对rpm进行了一些优化),调用命令为zypper。
注:程序包管理器用于管理程序的安装和卸载。
2、适用环境不同,RHEL系列主要适用于企业适用,Debian系列桌面环境较好,适合个人桌面

3.Linux的哲学思想

LInux的哲学思想有以下几点:
1.一切皆文件
即将所有资源都视为文件,方便管理和使用

2.以文本的形式保存配置数据
使用任意的文本编辑器即可进行修改配置,十分方便

3.提供机制,而非策略
提供宽松的环境,给予用户更多自由使用空间,类似于炒菜,只给食材,不约束具体做成那种菜(湘菜、川菜)

4.尽可能避免与用户交互
程序运行时避免用户干涉,方便让任务自动化运行,提高效率,减少出错

5.单一目的的小程序
一个小程序只做一件事,目的明确,让程序更加精简、避免不必要的资源消耗

6.组合小程序完成复杂任务
可将多个单独小程序组合在一起实现更复杂的功能,方便通过编程实现任务自动化运行。

4.Linux命令使用

在Windows系统上运行程序通常是通过鼠标实现的,如通过双击左键打开文件。LInux系统进行操作则需要通过输入命令告诉系统该做些什么,因此Linux系统需要提供一个可以输入命令的窗口(Windows中也有类似的窗口如cmd).

命令的通用格式:COMMAND [OPTIONS] ARGUMENTS 如:ls -a /home
COMMAND为命令名称,如ls(列出某目录下的文件);
ARGUMENTS为该命令的作用对象,对于ls命令,则表示列出哪个目录下的文件
[OPTIONS]命令的选项,一般用-option表示,可使用多个选项,-option -option,中间用空格分开。对于ls命令,如选项为-a,则显示所有文件,-a -l 则表示显示所有文件及其详细信息

4.1ifconfig命令

全称为:network interfaces configuring,用于显示或配置网络设备的命令。
使用格式: ifconfig [option] [interface]
或者 ifconfig interface options | address
常用方式:
ifconfig 查看当前运行网络设备
ifconfig -a 查看所有网络设备(运行和非运行)
ifconfig interface,查看具体某个网络设备,使用时interface用具体名称替代
ifconfig interface down 关闭某设备
ifconfig interface up 打开某设备
ifconfig interface 192.168.0.60 设置设备IP地址
输入ifconfig,运行结果如下:


技术分享图片

4.2 echo命令

用于显示某内容,用法:
echo [SHORT-OPTION]... [STRING]...
echo LONG-OPTION
常用方式:echo string,显示某字符串
echo $name 显示某变量值

选项:
-n 不换行
-e 让转义符“\”生效
-E不让转义符生效(默认)
转义符选项
\a 发出警告声;
\b 删除前一个字符;
\c 最后不加上换行符号;
\f 换行但光标仍旧停留在原来的位置;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
\t 插入tab;
\v 与\f相同;
实例:输入echo Linux,则显示Linux


技术分享图片

4.3 tty命令

用于查看当前终端设备
用法:tty [option]
常用方式:tty 或者tty -s,即什么都不输出


技术分享图片

4.4 startx命令

用于打开X Window(图形界面),即运行X Window程序
常用方式: starx,在服务器、终端上启动图形界面,按ctrl c组合键取消

4.5 export命令

用于环境变量的声明和赋值
用法:export [-fn] [name[=value] ...] 或者 export -p
-f:代表[name]中为函数名称;
-n:删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中;
-p:列出所有的shell赋予程序的环境变量。

4.6 pwd命令

以绝对路径的方式显示用户当前工作目录
选项:
-L 显示全部路径,包括链接路径
-P 仅显示物理路径,不显示链接路径

4.7 history

用于显示历史命令(缓存中),读取历史命令文件到缓存中,将缓存中的历史命令写入历史命令文件中
用法:history显示历史命令
选项 -c 清空;历史命令缓存
-d 删除指定的历史命令缓存
-a 手工追加当前会话的命令历史到历史文件中去
n 显示最近的n条历史命令
-r:将历史命令文件中的命令读入当前历史命令缓冲区
-w:将当前历史命令缓冲区命令写入历史命令文件中
输入history 3,显示最近3条历史命令


技术分享图片

4.8 关机、重启命令

4.8.1 shutdown 命令

用于关闭、重启计算机
选项:
-h,关闭电源
-r, 重启
-k 不进行任何操作,仅发出警告
--no-wall 关机或重启前不提示
-c 取消操作,当使用"+0" 或"now"时间选项时无法取消
时间选项:+m,m分钟后关机或重启
now 表示马上关机
hh:mm,具体时间,如20:30


技术分享图片

4.8.2 poweroff 命令

用于关闭计算机,用法poweroff [option]
选项
-p,关闭计算机
-f,强制关机
-w,不关机,仅仅写入日志文件
-d,关机,写入日志文件

4.8.3 reboot 命令

重启命令,用法reboot [option]
选项:
-p,关闭计算机
-f,强制重启
-w,不重启,仅仅写入日志文件
-d,重启,写入日志文件

4.9 hwclock命令

显示当前时间,设置硬件时钟的时间以及设置硬件时钟为系统时间或设置系统时间为硬件时钟的时间
选项:
-s,设置系统时间为硬件时间
-w,设置硬件时间为系统时间
-u,使用格林威治时间
-c 比较硬件时间和系统时间

4.10 date 命令

显示或设置系统时间与日期
用法:date [OPTION]… [+FORMAT],date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
显示时间选项:-d string,显示字符串所指的日期与时间 ?
-r file,显示文件最新的修改时间
format : %a 显示星期几 (如.:Sun)
%A 显示星期几 (如.:Sunday)
%b 显示当前月份 (如:Jan)

%B 显示当前月份(如.:January)

%c 显示日期和时间 (如 Thu Mar 3 23:05:25 2005)

%C 显示世纪 (如.:20)

%d 数字形式显示当前月份 (如: 01)

%D 显示日期,等同于%m/%d/%y
%Y:显示年份,如2018
%y:显示年份,如18
%m:显示月份
%H:小时(24小时进制) ??

%S:秒 ?????

%s:秒(从1970-01-01 00:00:00 开始到命令执行那一刻的秒数 unix元年)

5如何获取帮助

当我们不知道一个命令如何使用时,可以通过查看Linux系统提供的帮助信息,就像是命令的使用说明书。

5.1 man命令

我们通常可以通过man命令获取命令帮助,如:man date,运行后如下所示:


技术分享图片
打开后可进行如下操作:
空格键向后翻页
b键向前翻页
Ctrl d组合键向文件尾部翻屏
Ctrl u组合键向文件首部翻屏
回车键向后翻一行
k键向前翻一行
g跳到第一行
G键跳到最后一行
#g跳到指定行,如10g
搜索:/keyword,从前向后查找;?keyword ,从后向前查找
q键退出

5.2 help命令

当使用man命令查看某些命令帮助时,显示的却是bash的信息,如:man cd


技术分享图片
从上图中可知cd以及其他一些命令是Bash的内部命令,当我们再往下面看时,就能找到这些命令的帮助信息,但是这样用起来十分不方便,因此我们可以使用help命令来查看Bash的内部命令,如:help cd


技术分享图片

5.3 其他获取帮助方式

除了man 和 help 之外我们还可用以下几种方式获取帮助:
1、command --help 或者command -h的方式获取命令自带的帮助信息(比较简略);
2、info command,信息页
3、帮助文档,如README,INSTALL ,Changelog
4、程序的官方文档
5、发行版的官方文档
6、网络搜索

5.4 man文档章节划分

man 本身也是一个命令,因此我们可以通过man man来查看它自身的帮助文档,如下


技术分享图片
由此我们可以知道man命令不仅可以查看命令帮助文档,还可查看配置文件帮助和编程帮助等信息,man文档有8个章节:
1 可执行程序、shell命令
2 系统调用
3 库调用
4 特殊文件
5 文件格式
6 游戏
7 杂项
8 系统管理员工具
9 内核相关文件

6. 基础目录名称命名法则及功用规定

对于Linux系统而言一切皆文件,我们可以用ls / 命令查看根目录下的文件及目录,结果如下:


技术分享图片
可知根目录下有如下目录:
/bin :系统自身启动和运行时会用到的核心二进制程序文件,不能关联到独立分区
/boot :系统引导启动时需要加载的静态文件、内核和ramdisk 以及grub
/dev :所有设备文件及特殊文件存储位置
/etc :大多数应用程序的配置文件
/home :普通用户的家目录
/lib:基本共享库文件
/lib64 :专用于64位系统上的辅助共享库文件
/media: 便携式移动设备的挂载点
/mnt :临时文件挂载点
/opt :第三方应用程序安装目录
/proc :用于输入内核于进程信息相关的虚拟文件系统,也称伪文件系统,由内核参数映射而来
/root :管理员root的家目录
/run :运行中的进程相关数据(以前放在/var目录下)
/sbin :管理类基本命令
/srv :服务类程序用到的中间数据
/sys :用输出当前系统上硬件设备相关信息的虚拟文件系统,内核中与硬件设备相关的信息映射
/tmp :临时文件
/usr :系统软件存放位置
/var:经常变化的文件存放位置

我们可以通过ls /查看其它版本Linux系统根目录,如查看Ubuntu


技术分享图片
发现centos和Ubuntu的目录结构基本差不多,其原因是有个LSB组织定义了Linux发行版基础目录的名称命名发展及功用规定,即FHS,文件系统层级标准。
Linux文件命令规则:
1、严格区分大小写
2、不可以使用 / 字符,另外特殊字符也不推荐使用
3、文件名长度不超过255字符

计算机及Linux简介

标签:简洁   ring   mnt   网卡   调用   管理   存放位置   type   官方   

原文地址:http://blog.51cto.com/13588350/2284295

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!