第一周博客作业-Linux发行版历史、哲学思想、FHS、命令格式、帮助等

All + All –

第一周作业

  • 1.计算机组成及功能

    • 计算机组成

      • 硬件

        • 冯诺依曼体系
        • CPU

          • 运算器

            • 对数据做算暖苏运算和逻辑运算
          • 控制器
          • 寄存器等
          • 程序的运行,是CPU通过调用硬盘中的程序至内存中执行来实现的
        • 存储器

          • 内存

            • ROM
            • RAM
          • 外存

            • 硬盘
            • 光盘
        • 输入设备

          • 鼠标、麦克风等
          • 实现指令和参数的输入
        • 输出设备

          • 显示器、打印机等
          • 实现结果数据的输出
      • 软件

        • 内核

          • 驱动底层硬件、监控调度资源互不干扰的工作
        • 应用程序

          • 二进制程序文件
          • 配置文件
          • 库文件
          • 帮助文件

    2.Linux主流发行版

    • Debian

      • kali
      • knopix
      • Ubuntu
      • 纯生态,轻巧,无商业化,黑客经常使用,使用门槛高
    • SlackWare

      • S.U.S.E

        • 界面华丽,在欧洲有广泛的使用基础
    • RedHat

      • Fedora
      • 企业版

        • RHEL:商业版
        • CentOS:社区免费版
        • 使用最广泛
    • Gentoo

      • 需要边安装边编译,因此程序效率高,难度也高,适合骨灰级玩家
    • ArchLinux

      • 安装需要专业的技术水平


    3.Linux的哲学思想

    • 软件界的共产主义==开源
    • 1.一切皆文件(文件、目录、字符设备、块设备、通讯接口、套接字、管道等),有利于对资源使用统一的API接口(原子操作:read,write)。文件采用层级结构。
    • 2.简单就是高效。让每一个程序只做好一件事,然后众多的小程序组成一个大的功能整体。各司其职,模块组合。类似人类社会的专业大分工。
    • 3.尽量避免与用户交互

      • 目标:高效、智能。方式:用编程手段实现无人干预的自动化,这是高效的前提,类似机器人流水作业。
    • 4.使用文本文件保持配置信息

    4.Linux系统上的命令使用格式


    • COMMAND [OPTIONS] ARGUMENTS

      • 命令

        • 请求内核把程序运行为进程

          • 程序是静态的,保存在硬盘中
          • 进程是动态的,运行在内存中,一切动态都有生命周期,就像人生老病死

          命令可能调用共享库

          命令有内外之分。

          • 内部命令–shell自带命令
          • 外部命令–shell外的独立可执行程序,依赖于环境变量
      • 选项

        • 命令的运行特性

          • 短选项:-
          • 长选项:–
          • 选项有时也有选项参数
      • 参数

        • 命令的作用对象

    • 常用命令的使用格式及示例

      • 1.常用命令

        • ifconfig

          • 命令功能:显示和配置网卡接口

            命令使用格式:

            ifconfig [-v] [-a] [-s] [interface]

            ifconfig [-v] interface [aftype] options | address …

            命令示例:

            [root@localhost ~]# ifconfig -a

            显示当前可用的所有接口(包括down的)

        • echo

          • 命令功能:回显。shell内置命令

            命令使用格式:echo [SHORT-OPTION]… [STRING]…

            命令示例:

            [root@localhost ~]# echo “hello”

            hello

            回显字符串hello

        • tty

          • 命令功能:查看当前虚拟终端

            命令使用格式: tty [OPTION]…

            命令示例:

            [root@localhost ~]# tty

            /dev/pts/0

            列出当前虚拟终端为0

        • startx

          • 命令功能:启动xwindow
          • 命令使用格式:startx [ [ client ] options … ] [ — [ server ] [ display ] options … ]
        • export

          • 命令功能:设置或显示环境变量。shell内置命令

            命令使用格式:export [-fn] [名称[=值] …]

            命令示例:

            [root@localhost ~]# export

            列出当前环境变量信息

        • pwd

          • 命令功能:列出当前工作目录(全路径)。shell内置命令

            命令使用格式:pwd [OPTION]…

            命令示例:

            [root@localhost ~]# pwd

            /root

            列出当前工作目录为/root

        • history

          • 命令功能:列出历史命令。shell内置命令
          • 命令使用格式:history [-c] [-d 偏移量] [n] 或 history -anrw [文件名] 或 history -ps 参数 [参数…]
        • shutdown

          • 命令功能:关机

            命令使用格式:shutdown [OPTIONS…] [TIME] [WALL…]

            poweroff:执行关机并关闭电源。poweroff=shutdown -P

            halt:执行关机,但不关闭电源。halt=shutdown -h

            reboot:过程和halt类似,只不过其实现的是重启功能。reboot=shutdown -r

        • hwclock

          • 命令功能:显示硬件时钟

            命令使用格式:hwclock [function] [option…]

            命令示例:

            [root@localhost ~]# hwclock -s

            以硬件时钟为准,同步系统时钟。

        • date

          • 命令功能:显示系统时钟

            命令使用格式:date [OPTION]… [+FORMAT]

            命令示例:

            [root@localhost ~]# date +%F%T

            2017-07-0207:32:34

            显示当前时间为2017年7月2日7点32分34秒

    5.Linux系统帮助

    • Linux命令的帮助路径


      • 内部命令

        • help COMMAND

          • 示例:help export
      • 外部命令


        • 1.命令自带的简要帮助

          • ~]# COMMAND –help

            • 示例:~]# fdisk –help

        • 2.最常用的帮助是man

          • ~]# man COMMAND

        • 3.命令的在线帮助

          • ~]# info COMMAND

            • 示例:~]# info fdisk

        • 4.程序自带的帮助文档

          • 文档路径:/usr/share/doc/APP-VERSION

            • README

              • 程序的相关信息
            • INSTALL

              • 程序的安装帮助
            • CHANGELOG

              • 版本迭代时的改进信息
        • 5.对应发行版的官方网站

          • 以centos为例,官网:https://www.centos.org

            • 官方手册:https://www.centos.org/docs
            • wiki系统:https://wiki.centos.org

              • 如HOWTOs
            • maillist
        • 6.google搜索
        • 7.其他有用信息

          • 适用开发者:http://www.ibm.com/developerworks/cn/linux/

    • man文档章节分类的含义

      • 默认情况下,绝大多数的手册在/usr/share/man目录下
      • man文件是均以.gz结尾的压缩文件,常见的有8个章节

        • man1

          • 表示用户命令
        • man2

          • 表示系统调用
        • man3

          • 库函数调用
        • man4

          • /dev下的特殊文件(设备等)
        • man5

          • 文件的格式说明(如配置文件中的各字段含义说明)
        • man6

          • 游戏专用
        • man7

          • 杂项
        • man8

          • 系统管理命令(只有root可以使用)
      • 命令使用格式:~]# man CHAPTER COMMAND

        • 示例:~]# man 3 sort

          • 查看sort命令是如何调用C库的

          并非每个COMMAND在所有章节下都有手册。

          可通过~]# whatis COMMAND查询命令的帮助位置

    6.Linux发行版的基础目录名称命名规则、功能规定

    • Linux发行版的基础目录,遵循Filesystem Hierarchy Standard文件系统层级结构标准

      FHS

      • /bin

        • 所有用户可用的基本二进制程序文件

        /boot

        • 引导加载器必须用到的静态文件(kernel,initrd,grub等)

        /dev

        • 设备文件

        /etc

        • 程序的配置文件,它必须为静态的非二进制文件
        • /opt
        • /X11
        • /sgml
        • /xml

        /lib

        • 系统启动和根文件系统命令(为/bin和/sbin下的程序提供的)需要的共享库文件
        • libc.so.*

          • 动态链接C库(可选)
        • ld*

          • 运行时链接器/加载器(可选)
        • /modules

          • 用于存储内核模块的目录

        /media

        • 便携式设备挂载点,如光驱、软盘

        /mnt

        • 文件系统的临时挂载点

        /opt

        • 附加应用程序的安装位置(可选)

        /sbin

        • 供系统管理员使用的二进制程序文件

        /srv

        • 当前主机为服务提供的数据

        /tmp

        • 临时文件目录

        /usr

        • /之外的第二个重要的层级目录(二级),存放可共享的只读数据,可在不同的系统间提供共享,只是目前很少这样做。
        • /bin
        • /sbin
        • /lib
        • /lib64
        • /include

          • C程序头文件
        • /share

          • 命令手册页和命令自带文档等架构特有的文件
        • /local

          • 另一个层级目录(三级),用于本地应用程序或第三方程序使用

            /bin

            /sbin

            /lib

            /lib64

            /etc

            /include

        • /X11R6

          • X-Window程序
        • src

          • 程序源码文件

        /var

        • 存放变量数据文件(如后台打印文件和目录、管理和日志数据、临时文件)
        • /cache

          • 变量缓存
        • /lib

          • 变量状态数据
        • /local
        • /lock
        • /log

          • 日志
        • /opt
        • /run
        • /spool
        • /tmp

        /home

        • 普通用户的家目录(可选)

        /root

        • 管理员的家目录(可选)

        /lib64

        • 64位系统特有的基础共享库

        /proc

        • 基于内存(关机就没了)的虚拟文件系统。用于为内核及进程存储相关信息:它们多为内核参数,例如net.ipv4.ip_forward,虚拟为net/ipv4/ip_forward,存储在/proc/sys/下,因此其完整路径为/proc/sys/net/ipv4/ip_forward

        /sys

        • sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径。其主要作用在于为管理Linux设备提供了一种统一模型的接口

            在Linux2.6内核以后,才有sys这个目录。

        调优主要是通过/proc和/sys这2个目录来实现的。     

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

(0)
N27_悟空N27_悟空
上一篇 2017-07-02
下一篇 2017-07-02

相关推荐

  • 分享我自己的一个最小化安装CentOS6的初始化脚本

    #!/bin/bash # #Filename:postinstall_init.sh #Description:系统安装完成后,对系统进行一些配置,以符合自己的试验环境 #Author:renpingsheng #Email:995883352@qq.com #Version:1.0 #Date:2017.5.5 setenforce 0 #更改selin…

    Linux干货 2017-05-07
  • Linux进程篇16.3ps命令:进程管理工具

    ps命令:进程管理工具

    Linux干货 2017-12-18
  • 第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp /etc/skel /home/tuser1 [root@localhost ~]# chmod -R&nb…

    Linux干货 2017-01-18
  • 马哥教育网络班21期-第四周课程练习

    Do one thing at a time,and do well. 小僧近期忙的去尿尿的时间都要挤出来…..! 无人能理解 zZzz 复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 编辑/etc/group文件,添加组hadoop。 手动编辑/etc/pass…

    Linux干货 2016-07-29
  • 马哥linux 0726作业

    1,课堂练习 显示当前日期,格式:2016-08-08 显示前天是星期几 设置当前日期为2008-08-08 08:00 使用字符端登陆时,显示当前登录终端号,主机名和当前时间 1,首先我们知道当前登录信息的配置文件在/etc/issue中 2,然后我们查询帮助看看issue的具体描述查到了相关的mingetty的命令当中关于当中的一些选项就是我们需要的三个…

    Linux干货 2016-08-04
  • find 的使用及练习

    find是个使用频率比较高的命令。常常用它在系统特定目录下,查找具有某种特征【名字类型属主权限等】的文件。find命令的格式: find  [-path ..] -options [-print -exec -ok] path:要查找的目录路径。 ~ 表示$HOME目录 . 表示当前目录 / 表示根目录 -print :表示将结果输出到标准输出-e…

    Linux干货 2017-06-11