N25 The first week –Yorick

1.计算机的组成及功能

ENIARC:冯诺依曼体系

1.1.运算器(所属CPU)

    进行计算

1.2.控制器(所属CPU)

    控制部件之间的协调,包括寻址操作

    辅助性存储(加速与提升CPU性能)

    寄存器(锁存数据)

    缓存(缓存数据)

        一级缓存

        二级缓存

        ….

1.3.存储器

    RAM(Random Access Memory)

        断点后不能存储数据,存取数据必须通电

    ROM(Read Only Memory)

        断电后可以存储数据

1.4.输入(Input)

    下指令,提供对方要加工的数据

1.5.输出(Output)

    输出数据加工后的结果

2.描述及罗列linux版本,并描述不同发行版本之间的联系

2.1.发行版本概念简述

    GNU组织开源程序运动[发布的都是源码]

    源码不能直接运行:需要编译成二进制格式运行

        源码编译是有门槛的

        常见的源码工具

            gcc,glibc,vi,linux

2.2.linux发行版

    商业公司、社区组织负责按照自己的理解将源码打包成二进制文件一并提供给用户

        这些组织或公司称为发行商

        发行版有数百种之多

2.2.1.热门发行版及二次发行版

Debian(社区)

    Knopix

    Ubuntu

Gentoo(基于Enoch)

Slackware(基于SLS)

    S.u.S.e

    openSUSE

Arch

RedHat

    RedHat Enterprise

    Centos

    Fedora Core

2.2.2主流发行版

Debian(使用要求更高,更轻巧)

    ubuntu

        mint

    * knopix

Slackware"

    S.u.S.e(商业公司)"

        SLES

    OpenSUSE(界面华丽著称)[欧洲人比较喜欢]

RedHat

    RedHat 9.0

        RedHat Enterprise Linux(RHEL)

        RHEL 7.0

        Centos(Community Enterprise OS)

        Centos与RHEL(企业版)的关系

            REHL商业版可以使用,但是升级包提供源码,不提供二进制文件

            REHL虽然收钱,但是提供服务(如果不依赖提供服务则使用centos和redhat是一样)

            社区将红帽提供的源码编译成二进制文件提供给centos

            centos已经被红帽收购了

        Fedora Core

            每6个月发行一次

3.描述linux哲学

3.1.一切皆文件

    把几乎所有资源统统抽象为文件形式:包括硬件设备,甚至通信接口等

    open(),read(),write(),close(),delete(),create()

3.2.由众多功能单一的程序组成:一个程序只做一件事,并且做好

    组合小程序完成复杂任务

3.3.尽量避免跟用户交互

    目标:易于以编程的方式实现自动化任务

3.4.使用文本文件保存配置信息

4.命令使用

4.1.ifconfig eth0

[root Yorick ~]# ifconfig

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 10.144.65.243  netmask 255.255.240.0  broadcast 10.144.79.255

        ether 00:16:3e:00:2e:15  txqueuelen 1000  (Ethernet)

        RX packets 186227  bytes 28876529 (27.5 MiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 315694  bytes 25053665 (23.8 MiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

# ifconfig命令

## 获取当前设备所有网卡信息

ifconfig

## 获取当前设备指定网卡信息

ifconfig [eth0|eth1|eth…]

## 网卡信息主要内容(简)

网卡名称、网卡地址、子网掩码、广播地址、物理地址、进出的网卡的流量(单位字节)

4.2.echo

# 回显命令

echo "hello world"

# 常用参数

-n 不自动进行换行操作

-e 让转译字符生效

   \t 制表符

   \n 回车

4.3.tty

# 获取当前终端信息

]# tty

/dev/pts/0

# 根据终端的不同回显不同的终端信息

物理终端:/dev/console

虚拟终端:/dev/tty#

串行终端:/dev/ttyS#

伪终端: /dev/pts/#

4.4.startx

# 启动图形终端(根据操作系统的不同终端不一样)

startx

# 在伪终端或console中切换图形终端

## centos6 只能在tty7中启用图形终端

tty7

## centos7 哪里启动哪里就是图形终端

tty1-7

4.5.export

# 获取变量与声明变量

export (默认获取当前终端变量)

# 常见用法

export "key"="value" # 添加环境变量(仅当前shell生效)

export -n "key"  # 删除环境变量,仅不显示变量名称,但实际存在(仅当前shell生效)

export [-p] # 查看当前shell的环境变量

4.6.pwd

# 获取当前工作目录的所在路径

pwd

4.7.history

# 记录操作历史记录

history (默认查看还是操作记录,默认记录1000行)

# 常见用法(跟操作审计相关)

## 记录历史命令的执行时间

export HISTTIMEFORMAT='%F %T  '

export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S  $(who a mi|awk '{print $1,$5}'|tr -d "()") "

## 不记录历史命令

export HISTSIZE=0

## 修改记录历史的命令长度

HISTSIZE=450

HISTFILESIZE=450

## 记录历史命令的方法

### 消除历史记录中的重复记录(所有记录中不存在重复的记录)

export HISTCONTROL=erasedups

### 消除历史记录中的重复记录(相邻的重复记录只记录一条)

export HISTCONTROL=ignoredups

### 不记录以空格开头的操作

export HISTCONTROL=ignorespace

4.8.shutdown

# 关闭并切断电源

## 常见参数

-h halt 关机

-r reboot 重启

-c cancel 取消

now 现在立刻关闭

hh:mm 几点几分

+m  多少分后

4.9.poweroff

# 关机

4.10.reboot

# 重启

4.11.hwclock

# 物理时钟

hwclock(显示硬件时钟)

# 以硬件为准

-s –hctosys 把系统调整为与硬件时钟相同

# 以系统为准

-w –systohc 把硬件时钟调整为与系统时钟相同

4.12.date

# 日期的获取

date OPTIONS [FORMAT]

# 获取当前年份,按指定方式输出

date +"%Y-%m-%d"

date +'%Y-%m-%d %H:%M:%S'

# 获取当前时间戳

date +"%s"

# 将时间戳转换成当前时

date -d @1361542596 +"%Y-%m-%d %H:%M:%S"

# 将时间转换成时间戳

date -d "20161111" +"%s"

date -d '2013-2-22 22:14' +%s

# 修改系统时间

date -s "2016-11-11"

5.获取帮助

# 方式一

* help COMMAND

# 方式二

* COMMAND -h|–help (长格式帮助及短格式帮助)

# 方式三

* man COMMAND

# 方式四

* info COMMAND

# 方式五

* 安装的程序 readme:程序的相关信息

* 安装成续的 CHANGES:版本迭代时的改动信息

# 方式六

* 主流发行版本的官方文档

 * http://www.redhat.com/doc

# 方式七

* 程序的官方文档,常用英文Document表示

# 方式八

* 使用google搜索

google

    keyword

    keyword filetype:pdf

    keyword site:magedu.com

    keyword tld:top+level+domain

5.1.man手册使用详解

# 使用格式

man COMMAND

# 基本段落说明

SECTION     简要说明

SYNOPSIS    命令语法使用格式

DESCRIPTION 描述

OPTIONS     选项

EXAMPLES    使用示例

AUTHOR      作者

BUGS        报告程序BUG的方式

SEE ALSO    参考

# SYNOPSIS语法说明

[]   代表可选内容

<>   必须提供的内容

a|b  表示多选一

…  同类内容可出现多个

{}   辅助性分组的

# man手册存放位置

/usr/share/man/{man1|man2|man3……}

说明:

    man1: 用户命令

    man2:系统调用(程序员才会用到的)

    man3:C库调用

    man4:设备文件及特殊文件

    man5:文件格式说明(配置文件)

    man6:游戏的使用帮助

    man7:杂项

    man8:管理工具及守护进程

man [1-8] COMMAND [man CHAPTER COMMAND]

# 查看命令再哪个章节有帮助信息

whatis COMMAND

# 如果新安装的命令,也许有可能不能正常的查询出来,使用如下命令重新刷新whatis数据库

makewhatis  【不建议使用,消耗系统资源较为严重】

# man手册使用时的快捷键

翻屏:

    空格键: 向文件尾部翻一屏

    b:       想文件首部翻一屏

    ctrl+d:  向文件尾部翻半屏(ctrl downword)

    ctrl+u:  向文件首部翻半屏(ctrl upword)

    回车键:  向文件尾部翻一行

    k:      向文件首部翻一行

    G:      表示跳转至最后一行

    #G:     跳转至指定行

    1G:      跳转至文件首部

文本搜索功能:(查找时不区分大小写)

    /keyword: 从文件首部向文件尾部依次查找

    ?keyword: 从文件尾部想文件首部依次查找

        n:与查找命令方向相同

        N:与查找命令方向相反

退出:

    q:quit

6.linxu发行版的基础目录名规范

# 文件系统的标准规范(FHS)

文件系统层级结构标准(Filesystem Hierarchy Standard)

简单描述文件层级结构

## /bin

供所有用户使用的基本程序文件 (Essnetial user command binaries)

## /sbin

工系统管理使用的工具程序 (System binaries)

## /boot

引导加载器必须用到的各静态文件

    kernel

    initramfs(initrd)

    grub等

## /dev

存储特殊文件或设备文件

    字符设备|线性设备    `!有时序`

    块设备|随机设备    `!无时序`

## /etc

系统程序的静态配置文件

## /home

普通用户家目录的集中位置

## /root

管理员的家目录

## /lib

为系统启动或根文件系统上的应用程序(/bin,/sbin等)提供共享库,以及为内核提供内核模块

    libc.so.* `动态链接C库`

    ld* `运行时链接器加载器`

    modules `用于存放内核模块的目录`

## /lib64

64位系统特有的存放64位共享库的路径

## /media

便携性设备挂在点

    cdrom

    floppy

    等

## /mnt

其他文件系统的临时挂载点

## /opt

附加应用程序的安装位置(通常称为第三方程序)

## /srv

当前主机为服务提供的数据(特有的)

## /tmp

为那些会产生临时文件的程序提供的用于存储临时文件的目录,可提供所有用户执行写入操作 `有特殊权限`

## /usr

全局共享的只读数据路径(自己也存在层级结构)

    /bin

    /sbin

    /lib

    /lib64

    /include #C程序的头文件

    /share #命令手册和自带文档等架构特有的文件存储位置

    /local #另一个层级目录

    /src # 程序源码的存放位置

## /usr/local

让系统管理员安装本地应用程序,通常用于安装第三方程序(常用)

## /var/

存放常发生变化的数据的目录

    cache 缓存数据

    lib 状态数据

    local 提供/usr/local的状态信息相关的额

    lock 锁文件相关的

    log 日志相关的

    opt 第三方应用相关的额

    run 进程中相关的信息

    spool  管道信息

    temp 系统重启后依然需要留存文件

## /proc

基于内存的虚拟文件系统,内核和进程信息的虚拟文件系统(内核级进程存储其相关信息,它们多为内核参数)

    示例

        net.ipv4.ip_forward -> 虚拟-> net/ipv4/ip_forward

        路径 /proc/sys/

        完整的路径 /proc/sys/net/ipv4/ip_forward

## /sys

sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径

主要作用:为管理linux设备提供一种统一模型的接口

原创文章,作者:Yorick,如若转载,请注明出处:http://www.178linux.com/62625

(0)
YorickYorick
上一篇 2016-12-04
下一篇 2016-12-04

相关推荐

  • grep作业题

    找出/proc/meminfo文件中,所有以大写或小写s开头的行,至少三种方式:grep -i "^s" /proc/meminfogrep "^[sS]" /proc/meminfogrep -E "^(s|S)" /proc/meminfo显示当前系统上roo、centos或者user用户的相关…

    Linux干货 2016-08-12
  • 第三周

    第三周 1.列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@node1 ~]# who -q | sed -n ‘1p’ centos root fedora redhat mint 2.取出最后登录到当前系统的用户的相关信息。 [root@node1 ~]# who -a | tail -1 mint +…

    Linux干货 2017-07-25
  • 8月5日作业

    课堂练习: 1、找出ifconfig命令结果中本机的所有IPv4地址 [root@localhost ~]# ifconfig | tr -s " " |head -2 | tail -1 |cut …

    Linux干货 2016-08-15
  • 终端类型

        终端是什么?终端不仅仅是显示器,还包括与之配套的键盘。在linux中表现为一个字符设备。Linux与用户交互时,直接向终端设备发送数据,数据就会被发送到屏幕上,用户通过键盘写的数据,就是向这个字符设备写数据,数据会同步显示到显示器上,回车后数据才会被linux执行命令。 终端类型 1串行口终端  &n…

    Linux干货 2016-10-17
  • n28 第二周作业

    n28 第二周作业

    Linux干货 2017-12-09
  • 初识Nginx

    前言:   Nginx介绍:    Nginx(engine x)是由俄罗斯人logor sysoev研发的;官方网站:nginx.org;nginx是一个轻量级的高性能的web服务器和反向代理服务器;nginx本身一个处理静态资源的web服务器,但是通过加装fastcgi等模块,可是支持动态资源;可以为IMAP/POP3/SM…

    Linux干货 2015-06-23

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-09 20:39

    总结的很好,有例子有说明,加油