第一周作业-Linux Basic

  Linux 入门基础

  • 计算机组成及功能

一般而言,计算机的组成应该分为两部分:

一部分指的是硬件部分。根据冯诺伊曼提出的计算机体系架构,一台计算机主要分为五个部分:控制器、运算器、存储器、输入设备、输出设备

  1. 运算器:

包含算数逻辑单元(ALU)、累加器、状态寄存器、通用寄存器组等,主要作用如下

算数逻辑单元(ALU):进行二位元的算术运算,如加减乘(不包括整数除)、移位等

累加器(accumulator):储存计算产生的中间结果。保证ALU不用将计算结果写入内存

状态寄存器:存放两类信息

1)体现当前指令执行结果的状态信息

2)控制信息

通用寄存器组:可用于传送和暂存数据,也可以参与算术逻辑运算,保存运算结果,通用寄存器组包括以下几类:数据寄存器、变址寄存器、指针寄存器、段寄存器、指令指针寄存器

  1. 控制器:

CPU的组成部分之一。相当于计算机的中枢神经,通过控制器,可以有效的控制和协调整个计算机的如下动作

– 保障不同数率传输的数据可以得到缓冲

– 甄别IO设备传送数据的正错

– 实现数据与数据之间的交换

– 接收和识别命令

 

  1. 存储器:

存储程序和数据,并能在计算机运行过程中高速、自动地完成从程序或数据的存取,也就是俗称的内存RAM(Random Access Memory)

  1. 输入设备:

外部设备之一。作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据输入到计算机。常见的输入设备有:键盘、鼠标、磁带机、磁盘机、光盘机等

  1. 输出设备:

外部设备之一。作用是把计算机的中间结果或最后结果、机内的各种数据及文字等信息输出来。常见的输出设备有:显示器、打印机、绘图仪等

二部分指的是计算机软件。包括汇编语言、系统软件及应用软件,他们不像硬件一样“有形”,但只有软件硬件互相配合,才是一台标准的计算机组成

 

  • Linux的发行版

Linux发行版(Linux distribution)

是一种为一般用户预先集成好的Linux操作系统及各种应用软件。一般不需要用户重新编译,在直接安装之后,只需要作出小幅度的更改设置即可。Linux发行版通常包含了桌面环境、办公包、媒体播放器、数据库等应用软件。这些操作系统通常使用Linux、以及来自GNU计划的软件、和基于X Window的图形界面组成。

Linux发行版通常分为商业发行版和社区发行版。也有少部分既不属于发行版又不属于社区发行版,其中最有名的是Slackware.

著名的Linux发行版:

Redhat系:RHEL(企业版)、CentOS(社区版)、Fedora

Slackware系:S.u.S.E、OpenSUSE

Debian系:Ubuntu、Knopix以桌面版为主

 

 

发行版之间的不同

在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的前端工具

 

  • Linux的哲学思想

1.一切都是一个文件(包括硬件也是以文件形式挂载)

2.小型,单一用途的程序

3.链接程序,共同完成复杂的任务

4.避免令人困惑的用户界面

5.配置数据存储在文本中

 

  • 常用基础命令

命令格式:

COMMAND  【OPTION】Arguments

命令本身 【长选项/短选项】作用对象

命令类型:(使用type命令查看)

内建命令:由shell程序自带的命令,可以使用enable查看有哪些内建命令

外部命令:独立可执行的文件。存放$PATH路径下,可使用文件名执行命令。

常用命令:

ifconfig: 查看及配置网卡信息命令,类似于ip address

常用参数:

ifconfig: 查看当前系统存活的网卡信息

ifconfig –a :查看所有网卡信息,包括非运行状态网卡

ifconfig eth#:查看指定网卡的信息

ifconfig eth# up: 启动指定的网卡

ifconfig eth# down: 关闭指定的网卡

ifconfig eth# xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx:配置IP地址

使用此命令对于网络接口的所有操作,在系统重启后均会失效。若需永久生

效,需要通过修改配置文件的方式,vim /etc/sysconfig/network-script/ifcfg-eth#

 

echo : 回显命令

-n: 关闭自动换行功能

-e: 启用转义符

\t:制表符

\b:退格键(即删除键)

\n: new line 新添加一行

\033[##m: 控制颜色

第一个数字3:字体前景色

第一个数字4:字体背景色

第二个数字:表示颜色本身,0-7

如果同时使用前景色和背景色:\033[3#;4#m

\033[#m: 单个数字用于控制字体的加粗,下划线等功能

\033[0m: 关闭字体功能

echo “$VAR_NAME”:变量会替换,双引号表示弱引用

echo ‘$VAR_NAME’ : 变量不会替换,单引号表示强引用

 

tty: 查看当前终端设备

[root@centos7 ~]# tty

/dev/pts/0

 

 

startx: 启用图像化界面

export:用于设置或者显示环境变量

 -f  代表[变量名称]中为函数名称。

-n  删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。

-p  列出所有的shell赋予程序的环境变量。

 

pwd: 以绝对路径的方式显示用户当前工作目录

[root@centos7 ~]# pwd

/root

 

history: 显示历史命令

-c:清空当前历史命令

-a:将历史命令缓冲区中命令写入历史命令文件中

-r:将历史命令文件中的命令读入当前历史命令缓冲区

-w:将当前历史命令缓冲区命令写入历史命令文件中

n:打印最近n条历史命令(n为数字)

shutdown:  根据需求关机或重启

-c:当执行“shutdown -h 11:50”指令时,只要按+键就可以中断关机的指令;

-f:重新启动时不执行fsck;

-F:重新启动时执行fsck;

-h:将系统关机,-h now立即关机;

-k:只是送出信息给所有用户,但不会实际关机;

-n:不调用init程序进行关机,而由shutdown自己进行;

-r:shutdown之后重新启动;

-t<秒数>:送出警告信息和删除信息之间要延迟多少秒。

eg:

指定5分钟后关机,同时送出警告信息给登入用户:

shutdown +5 “System will shutdown after 5 minutes”

 

poweroff:关闭计算机操作系统并且切断系统电源。

-n:关闭操作系统时不执行sync操作;

–w:不真正关闭操作系统,仅在日志文件“/var/log/wtmp”中;

-d:关闭操作系统时,不将操作写入日志文件“/var/log/wtmp”中添加相应的记录;

-f:强制关闭操作系统;

-i:关闭操作系统之前关闭所有的网络接口;

-h:关闭操作系统之前将系统中所有的硬件设置为备用模式。

 

 reboot:重新启动正在运行的Linux操作系统。

-d:重新开机时不把数据写入记录文件/var/tmp/wtmp。本参数具有“-n”参数效果;

-f:强制重新开机,不调用shutdown指令的功能;

-i:在重开机之前,先关闭所有网络界面;

-n:重开机之前不检查是否有未结束的程序;

–w:仅做测试,并不真正将系统重新开机,只会把重开机的数据写入/var/log目录下的wtmp记录文件

 

hwclock硬件时钟访问工具,它可以显示当前时间、设置硬件时钟的时间和设置硬件时钟为系统时间,也可设置系统时间为硬件时钟的时间。

–adjust:hwclock每次更改硬件时钟时,都会记录在/etc/adjtime文件中。使用–adjust参数,可使hwclock根据先前的记录来估算硬件时钟的偏差,并用来校正目前的硬件时钟;

–debug:显示hwclock执行时详细的信息;

–directisa:hwclock预设从/dev/rtc设备来存取硬件时钟。若无法存取时,可用此参数直接以I/O指令来存取硬件时钟;

–hctosys:将系统时钟调整为与目前的硬件时钟一致;

—set —date=<日期与时间>:设定硬件时钟;

–show:显示硬件时钟的时间与日期;

–systohc:将硬件时钟调整为与目前的系统时钟一致;

—test:仅测试程序,而不会实际更改硬件时钟;

–utc:若要使用格林威治时间,请加入此参数,hwclock会执行转换的工作。

 

date:显示和设置系统时间

-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;

-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;

-u:显示GMT;

%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)

实例:date +%s显示显示1970年上午8点整到现在过去了多少秒

[root@centos7 ~]# date +%s

1529852435

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

在shell中可执行的命令有两类:内部命令和外部命令。

  • 内部命令:由shell自带的,通过某种命令形式提供
  • 外部命令:在文件系统路径下有对应的可执行程序文件

多层次的帮助:

  • whatis COMMAND获取命令索引的简要说明:
  • help
  • man and info
  • /usr/share/doc/
  • Red Hat documentation
  • 其它网站和搜索

获取帮助信息方式分类

  • 内部命令:help COMMAND,eg:help echo;

man bash

  • 外部命令:

(1) 命令自带简要格式的使用帮助:COMMAND –help & COMMAND -h

(2) 使用手册(manual):man COMMAND

(3) 信息页info COMMAND

(4) 程序自身的帮助文档READM、INSTALL、ChangeLog

(5) 程序官方文档官方站点:Documentation

(6) 发行版的官方文档

(7) Google

2、man文档的章节的划分:

路径:/usr/share/man

#man COMMAND

使用手册:压缩格式的文件,有章节之分:

/usr/share/man/(man1,man2,….)

man1:用户命令

man2:系统调用

man3:C库调用

man4:设备文件及特殊文件

man5:配置文件格式的说明

man6:系统自带游戏玩法说明

man7:杂项

man8:管理工具及守护进程

 

  • Linux发行版的基础目录名称命名法则及功用规定
    /:根目录,Linux文件系统的最上层根目录,其他所有项目均是该目录的子目录
    /boot:引导系统启动,引导加载器必须用的各静态文件:kernel,initramfs(initrd),grub等
    /bin:系统自身启动和运行时可能会用到的核心,所有用户可用的基本命令程序文件。
    /sbin:管理类基本命令,提供系统管理使用的工具程序。
    /etc:大多数应用程序的配置文件的集中存放位置,只能为静态
    /lib:为系统启动或要文件系统上的应用程序(/bin,/sbin等)提供共享库文件,以及为内核提供内核模块文件。
    /lib64:专用于x86_64系统上的共享库文件存放
    /home:普通的家目录的集中存放位置:一般每个普通用户的家目录 默认为此目录下与用户名同名的子目录,/home/USERNAME
    /root:管理员的家目录:可选so.*:动态链接的C库 ld*:运行时链接器/加载器
    /modules:用于存储内核模块的目录
    /media:便携式设备挂载点,cdrom,floppy等
    /mnt:其它文件系统的临时挂载点
    /dev:devices,存储特殊文件或设备文件:设备有两种类型:字符设备(线性设备)、块设备(随机设备)
    /opt:第三方应用程序的安装位置
    /srv:services,服务类程序用到的中间数据
    /tmp:temporary,为那些会产生临时文件的程序提供的用于存储临时文件的目录:可供所有用户执行写入操作:有特殊权限
    /usr:UNIX Software Resource,操作系统软件资源存放
    /var::/var Hierarchy,存储常发生变化的数据的目录
    /proc:用于输入内核与进程信息相关的虚拟文件系统,由内核参数映射而来的伪文件系统,多为内核参数
    /sys::用于输出当前系统上硬件设备相关习性的虚拟系统文件,由内核中与硬件设备相关的信息映/selinux:selinux相关的安全策略等信息的存储位置。

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/101633

发表评论

登录后才能评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.

联系我们

400-080-6560

在线咨询

工作时间:周一至周五,9:30-18:30,节假日同时也值班

QR code