Linux基础

1、描述计算机的组成及其功能。

计算机的主要组成部分可以归纳为以下五个部分:控制器、运算器、存储器、输入设备、和输出设备。

  • 控制器
    是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,[调度程序]、数据、地址,协调计算机各部分工作及内存与外设的访问等。
  • 运算器
    运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。
  • 存储器
    存储器的功能是存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。
  • 输入设备
    输入设备是计算机的重要组成部分,输入设备与输出设备合你为[外部设备],简称外设,输入设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。常见的输入设备有键盘、鼠标器、光电输入机、磁带机、磁盘机、光盘机等。
  • 输出设备
    输出设备与输入设备同样是计算机的重要组成部分,它把外算机的中间结果或最后结果、机内的各种数据符号及文字或各种控制信号等信息输出出来。微机常用的输出设备有显示终端CRT、打印机、激光印字机、绘图仪及磁带、光盘机等。

2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。

Linux是什么?
Linux是一种自由和开放源代码的类Unix操作系统。该操作系统的内核由Linus Torvalds于1991年10月5日首次发布。根据其发布的内核(kernel)搭配上GNU上的应用程序,成为了当今世界上运用领域最广泛、使用人数最多的操作系统。通常情况下,Linux被打包成供个人计算机和服务器使用的Linux发行版。
Linux发行版包含Linux内核和支撑内核的实用程序和库,通常还带有大量可以满足各类需求的应用程序。个人计算机使用的Linux发行版通常包含X Window和一个相应的桌面环境,如GNOME或KDE.
什么是Linux发行版
Linux发行版(Linux distribution):是一种为一般用户预先集成好的Linux操作系统及各种应用软件。一般不需要用户重新编译,在直接安装之后,只需要作出小幅度的更改设置即可。Linux发行版通常包含了桌面环境、办公包、媒体播放器、数据库等应用软件。这些操作系统通常使用Linux、以及来自GNU计划的软件、和基于X Window的图形界面组成。
Linux发行版通常分为商业发行版和社区发行版。也有少部分既不属于发行版又不属于社区发行版,其中最有名的是Slackware.
按照程序包管理器的不同,通常Linux的发行版也被分成了不同的派系。 程序本身是由二进制程序、配置文件、库文件以及帮助文件组成的。有时候我们发现,可能一个程序会有很多文件,非常不利于安装卸载管理,于是,又产生了程序包管理器。程序包管理器主要作用:程序的组成文件打包成一个或有限几个文件、安装、卸载以及查询。
根据程序包管理器主要划分了三大谱系,分别为RedHat系、Slackware系、Debian系。
发行版之间的不同
在Linux发行版中,通常均使用软件包管理系统,不同的操作系统,软件包管理系统也不尽相同。比较常见的软件包管理系统有以下几种      
 – dpkg:一般为Debian系使用,前端管理工具为apt-get
– rpm(The RPM Package Manager):一般为Red Hat系使用,S.u.S.E也有使用,前端工具包含多种:
yum:作为RHEL及CentOS的前端工具
dnf:作为Fedora的前端工具
ZYpper:作为S.u.S.E及opensuse的前端工具
urpmi:作为Mandriva Linux及Mageia的前端工具

3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。

Linux哲学思想:
1、一切皆文件;
2、小型,单一用途的程序;
3、连接程序,共同完成复杂功能;
4、避免令人困惑的用户界面;
5、配置数据存储在文本中;
一切皆文件:是 Unix/Linux 的基本哲学之一。不仅普通的文件,目录、字符设备、块设备、 套接字等在 Unix/Linux 中都是以文件被对待;它们虽然类型不同,但是对其提供的却是同一套操作界面。
小型,单一用途的程序:程序和可执行文件不要太复杂,这样才能保证了linux内核的高效运行
连接程序,共同完成复杂功能:复杂的任务可以通过连接多个简单的程序实现复杂的功能。对于复杂的功能linux通过许多简单程序的组合等方式实现,在保证简单功能的高效性的同时,复杂的程序也必然是高效性的
避免令人困惑的用户界面:如windows那样出了问题一般人选择的会是重启,实在是不行的话就是 重新 安装系统了,因为对于windows那样不是开源的,并且用户界面比较 复杂操作系统出了问题,一般的人是根本没有办法解决的。但是linux就不一样了,第一linux是开源的,无论什么问题都可以通过简洁的命令行实现 排错,修改系统的配置,一切都是简洁明了为基础。
配置数据存储在文本中:linux所有的配置文件都存放在文本配置文件当中,无论什么配置修改都只需修改其配置文件即可,配置文件时文本形式的只需任意一款文本编辑器修改即可而不是类似于windows那样将保存在注册表中,并且windows的注册表需要专门的二进制或十六进制的编辑器才可编辑,修改比较复杂

4、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述。

Linux系统命令使用格式:

#COMMAND [OPTIONS...] [ARGUMENTS...]

COMMAND :命令;一个可执行的二进制程序文件
  OPTIONS:参数;指定命令运行的特性,通常由两种表现形式:短选项-d,长选项--help。
  ARGUMENTS:对象;命令作用的对象,不同命令的作用对象不同,可以是文件,目录,硬件设备等。
注意:
如果同一命令在运行时使用多个短选项,可将多个短选项合并,如:-l -d --> -ld,长选项一般来说不能合并
命令,参数和对象之间都要有一个或多个空格做间隔
严格区分大小写

命令介绍:
ifconfig
  描述:ifconfig 用于配置常驻内核的网络接口。它用于在引导成功时设定网络接口。此后,只在需要调试及系统调整时才使用。如没有给出参数, ifconfig 显示当前有效接口的状态。如给定单个 接口作为参数,它只显示给出的那个接口的状态; 如果给出一个 -a参数,它会显示所有接口的状态,包括那些停用的接口。否则就对一个接口进行配置。
  格式:
ifconfig [接口]
ifconfig 接口 [aftype] options | address ...
  常用参数:
  -a:显示所有接口,包括隐藏接口。
   -s:显示摘要信息。up:启动某个网络接口。
  down:关闭某个接口。
  add addr/prefixlen:给指定网卡增加IPv6地址。
  address:为指定网卡设置IP地址。
  使用示例:
  显示当前有效接口的状态:

ifconfig.png

显示摘要信息:
ifconfig-s.png

查看指定接口信息:
ifconfig-a.png

echo
  描述:echo命令用于在终端输出字符串或变量提取后的值。
  格式:echo [OPTION]... [STRING]...
  常用参数:
  -n:不进行换行输出
  -e:让转义符生效  
    \n:换行  
    \t:制表符
  使用示例:
把指定字符串"hello world"输出到终端上

image.png

把指定字符串"hello world"换行输出到终端上
image.png

使用
变量的方式提取变量SHELL的值,并将其输出到屏幕上 ![image.png](https://upload-images.jianshu.io/upload_images/10694009-8b5c6838ecb97403.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 这里输入一个错误的ifconfig → ifconf ![image.png](https://upload-images.jianshu.io/upload_images/10694009-129650ce69686cf5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) 注意:当echo
?返回值是0时,则上一个命令执行成功,其余任何数值均为不成功。

tty
描述:显示连接标准输入的终端的文件名
  格式:tty [OPTION]...
  常用参数:-s, --silent, --quiet:什么都不显示, 仅仅返回 一个退出状态;
  --version:显示版本信息, 然后结束;
  使用示例:
  显示连接标准输入的终端的文件名

image.png

startx
  描述:用于初始化一个X windows会话。实际上startx是调用xinit程序来启动X windows的。
  格式:startx [ [ client ] options ... ] [ -- [ server ] [ display ] options ...]

export
  描述:用于将shell变量输出为环境变量,或者将shell函数输出为环境变量。
  格式:export [options] [arguments]=[value]
  常用参数:
  -f:代表指定输出的arguments为函数名称。
  -n:删除指定的变量。变量实际并未删除,只是不会输出到后续指令的执行环境中。
  -p:列出所有的shell赋予程序的环境变量。
  使用示例:
  修改当前环境变量
pwd
  描述:显示用户当前的工作目录
  格式: pwd [options]
  使用示例:
  显示当前工作目录

image.png

history
  格式:history [options] [arguments]
  常用参数:
  -c:清空当前历史命令;
  -a:将当前内存中的新增的历史命令记录追加至历史命令文件;
  -r:将历史命令文件中的命令读取至内存中;
  -w:将当前内存中历史命令记录写入并覆盖至历史命令文件或者是新的文件中;
  -d ID:删除当前历史命令记录中的指定的命令条目;
  n:打印最近n条历史命令。
  使用示例:
history.png

 清空当前历史命令:
image.png

 再一次执行历史列表中的第n条命令:
image.png

shutdown
  格式:shutdown [OPTIONS...] [TIME] [WALL...]
  作用:shutdown命令会安全地将系统关机,所有登陆用户都可以看到关机信息提示。
  常用参数:
  -h:系统关机后,关闭电源;
  -r:重启系统;
  -c:取消正常执行的关机程序;
  -f:在重启系统时忽略fsck;
  -F:在重启系统时强迫fsck;
  -k:并非真正关机,只向所有人显示警告信息;
  使用示例:
image.png

poweroff
  格式:poweroff [options]
  作用:poweroff 会发送一个 ACPI 信号来通知系统关机
  常用参数:
    --reboot:重启系统

reboot
  格式:reboot [options]
   作用:重启系统,reboot命令重启动系统时是删除所有的进程,而不是平稳地终止它们。因此,使用reboot命令可以快速地关闭系统,但如果还有其它用户在该系统上工作时,就会引起数据的丢失。

hwclock
  格式:hwclock [function] [option...]
  作用:hwclock命令是一个硬件时钟访问工具,它可以显示当前时间、设置硬件时钟的时间和设置硬件时钟为系统时间,也可设置系统时间为硬件时钟的时间。
  常用参数:
  -r,--show:读取并打印硬件时钟;
  -s,--hctosys:将硬件时钟同步到系统时钟;
  -w,--systohc:将系统时间同步到硬件时钟;
  使用示例:
  显示硬件时钟

image.png

%date%
  格式:
  date [OPTION]... [+FORMAT]
    FORMAT(格式符):
    %F:显示当前年月日;
    %T:显示当前时分秒;
    %Y:年;
    %m:月;
    %d:日;
    %H:时(以00-23来表示);
    %M:分(以00-59来表示);
    %S:秒;
    %s:从1970年1月1日(unix元年)0点0分0秒到命令执行那一刻经过的秒数
date [MMDDhhmm[[CC]YY][.ss]]
作用:date可以用来显示或设定系统的日期与时间。
常用参数:
 -d<字符串>:显示字符串所指的日期与时间,字符串前后必须加上双引号。
 -s<字符串>:根据字符串来设置日期与时间,字符串前后必须加上双引号。


image.png

5、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。

Linux上的帮助命令:
--man
--help
man:通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息 其相对应的参数
常用参数
-a显示所有匹配项
-d显示man查照手册文件时候,搜索路径信息,不显示手册页内容
-D同-d,显示手册页内容
-f同命令whatis ,将在whatis数据库查找以关键字开同的帮助索引信息
-h显示帮助信息
-k 同命令apropos 将搜索whatis数据库,模糊查找关键字
-S list 指定搜索的领域及顺序 如:-S 1:1p httpd 将搜索man1然后 man1p目录
-t使用troff 命令格式化输出手册页 默认:groff输出格式页
-w不带搜索title 打印manpath变量 带title关键字 打印找到手册文件路径,默认搜索一个文件后停止
-c显示使用 cat 命令的手册信息
-C指定man 命令搜索配置文件 默认是man.config
-K搜索一个字符串在所有手册页中,速度很慢
-M指定搜索手册的路径
-P pro 使用程序pro显示手册页面 默认是less -B pro 使用pro程序显示HTML手册页 默认是less
-H pro 使用pro程序读取HTML手册,用txt格式显示,默认是cat
-p str 指定通过groff格式化手册之前,先通过其它程序格式化手册

man1:用户命令
man2:系统调用:man 2 read(有些关键不止一个章节存在的手册)
man3:c库调用
man4:设备文件及特殊文件
man6:游戏
man7:杂项
man8:管理类的命令
man命令配置文件:/etc/man.confg MANPATH=路径
help用法: command –help 或 command -h

6、请罗列Linux发行版的基础目录名称命名法则及功能规定

linux各种发行版都遵循LSB(LinuxStandards Base)规则,使用一致的相同的基础目录名称,使用根文件系统结构(root filesystem),使用FHS(files Hierarchy Standard)层次结构。
/:根目录/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader, grub)都存放于此目录
/bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的程序
/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序
/lib:基本共享库文件和内核模块文件(/lib/modules)/lib64:专用于x86_64系统上的辅助共享库文件存放位置
/etc:配置文件目录(纯文本文件);init.d下存放了各种软件的启动脚本
/home/USERNAME:普通用户家目录
/root:管理员的家目录
/media:便携式移动设备挂载点
/mnt:临时文件系统挂载点(目录)
/dev:设备文件及特殊文件存储位置;任何设备与接口设备都是以文件的形式存放在此目录,通过访问目录下的文件,就等于访问某个设备,这就相当于是设备的入口,类似有/dev/null,/dev/zero,dev/tty,/dev/sd,/dev/lp,/dev/hd*等设备文件;
/opt:第三方应用程序的安装位置;
/srv:系统上运行的服务用到的数据;
/tmp:临时文件存储位置;所有用户都可以访问
/usr: universal shared, read-only data;全局共享只读数据,整个目录都是只读bin:存放了保证系统拥有完整功能而提供的应用程序,所有用户可访问sbin:存放了保证系统拥有完整功能而提供的应用程序,系统管理命令lib:libraries for programming and packages不变的程序和软件包的存放库,或函数库lib64:专用于x86_64系统的程序和软件包的辅助存放库include: C程序的头文件(header files),即调用库文件前需要用到的调用方式share:结构化独立的数据,例如doc, man等;local:第三方应用程序的安装位置,在刚安装好系统时目录为空,包括子目录bin, sbin, lib, lib64, etc, sharesrc内核源码存放位置,这是可选的子目录
/var: variable data files常态性变动的文件,包括缓存(cache)、登录文件(logfile)以及某些软件运行所产生的文件,包括程序文件(lock file,run file),也许有MySQL数据库的文件等。
/var/的子目录包括
cache:应用程序缓存数据目录;
lib:存放系统正常运行时,随时会改变的文件local:专用于为/usr/local下的应用程序存储可变数据;
lock:锁文件
log:日志目录及文件;
/var/log/wtmp记录了所有的系统登录和注销日志,
syslog(/var/log/messages存储所有核心和系统程序信息)。
/var/log里的文件经常不确定地增长,应该定期清除。
opt:专用于为/opt下的应用程序存储可变数据;
run:运行中的进程相关的数据;通常用于存储进程的pid文件;
spool:应用程序数据池;包括cron,mail,mqueue,lpdtmp:保存系统两次重启之间产生的临时数据;
mail:用户邮件文件,这是一个可选目录
/proc:用于输出内核与进程信息相关的虚拟文件系统;属于虚拟文件系统,内存中的数据,如内核、程序进程、外部设备的状态,网络状态等,处于动态变化中
/sys:用于输出当前系统上硬件设备相关信息的虚拟文件系统;
/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置;一般情况下,除了boot和home,其它目录一般不能放在其它分区。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,905评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,140评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,791评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,483评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,476评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,516评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,905评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,560评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,778评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,557评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,635评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,338评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,925评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,898评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,142评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,818评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,347评论 2 342

推荐阅读更多精彩内容

  • 第一章 1.Linux是一套免费使用和自由传播的类UNIX操作系统,它可以基于Intel x86系列处理器以及Cy...
    yansicing阅读 5,314评论 0 9
  • 本文包括: 1、Linux 系统概述 2、Linux 用户和用户组管理 3、Linux 文件和目录管理 4、Lin...
    廖少少阅读 2,636评论 1 40
  • 计算机的组成及其功能 计算机的组成 简单来说,计算机应由两部分组成:第一部分:硬件 冯诺依曼结构体系 当前计算机主...
    li_zw阅读 563评论 0 2
  • 1、计算机的组成及其功能   说到计算机的组成那就不得不提冯·诺依曼体系结构,美籍匈牙利数学家冯·诺依曼于1946...
    请叫我飘哥阅读 1,541评论 1 2
  • 日记 今天很顺利没加班。 安排了下下一周的工作计划。 下周三科目三考试预约成功。 今天照片是拍钥匙啊~需要摆弄摆弄...
    Jokki阅读 136评论 0 0