美文网首页
Linux_step1 慢慢学

Linux_step1 慢慢学

作者: 佐岸的咖啡 | 来源:发表于2018-08-15 20:39 被阅读0次

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

    desk-1140699_960_720.jpg

    计算机的组成内容

    计算机是由运算器、控制器、存储器、输入设备以及输出设备统一组成的。其中运算器和控制器可以统称为中央处理单元(cpu)。

    计算机组成部分对应的功能

    • 运算器
      运算器是整个计算机的中枢神经,其功能是对程序规定的控制信息进行解释,根据其要求进行控制,调度程序、数据、地址,协调计算机各部分工作及内存与外设的访问等。

    • 控制器
      运算器的功能是对数据进行各种算术运算和逻辑运算,即对数据进行加工处理。

    • 存储器
      存储器的功能是存储程序、数据和各种信号、命令等信息,并在需要时提供这些信息。具体有内存、RAM(Random Access Memory)

    • 输入设备
      输入设备与输出设备合称为外部设备,简称外设(I/O),输入设备的作用是将程序、原始数据、文字、字符、控制命令或现场采集的数据等信息输入到计算机。常见的输入设备有键盘、鼠标、光电输入机、磁带机、磁盘机、光盘机、U盘等。

    • 输出设备
      输出设备与输入设备同样是计算机的重要组成部分,它把外算机的中间结果或最后结果、机内的各种数据符号及文字或各种控制信号等信息输出出来。微机常用的输出设备有显示器、打印机、激光印字机、绘图仪及磁带、光盘机等。


    Linux各发行版之间的联系与区别

    1.发行版的主要分类

    发行版.jpg

    Debian:

    • ubuntu: 基于Debian二次开发的开源Linux操作系统,主要针对桌面和服务器。

    • mint:是基于ubuntu的Linux发行版,致力于桌面系统,对个人用户来说更加的美观和高效。

    Slackware

    • S.u.S.E: 是基于slackware二次开发的一款Linux,也是针对于商业桌面、服务器。
    • SLES:企业服务器操作系统,可以和微软的系统互相兼容。
    • OpenSuSE:由S.u.S.E发展而来,主要用于桌面环境,用户界面非常的华丽,性能良好。

    RedHat

    • RHEL:RedHat公司发布面向企业的Linux操作系统。

    • CentOS:基于RedHat提供的可自由使用源代码的Linux版本,相当于RHEL的山寨版,主要是开源、免费,特有的社区文化促进CentOS不断发展完善,其本质内容上和RHEL没有什么区别。

    • Fedora:可以看做是RedHat方面的一个测试版本,主要是针对新的技术测试提供一个系统平台,而且版本更新迭代非常的快。

    其他发行版本

    • Gentoo:基于linux的自由操作系统,它能为几乎任何应用程序或需求自动地作出优化和定制。追求极限的配置、性能,以及顶尖的用户和开发者社区,都是Gentoo体验的标志特点,尤其黑客非常喜欢使用Gentoo的系统版本。

    • AechLinux:以轻量简洁为设计理念的Linux发行版。其开发团队秉承简洁、优雅和代码最小化的设计宗旨。

    2. 发行版之间的联系与区别

    • 联系:所有的版本型号,无论是何种系统均采用的是Linux的内核,都需要遵循GNU的GPL协定,也就是通俗意义上的GNU/Linux。
    • 区别:不同的发行版系统各自的版本号均不同都有自己独特的版本号信息,同时虽然底层Linux内核一样,但封装后携带的库以及应用程序各不相同,不同的包管理器(SLES、Fedora、openSUSE、centos、RHEL使用rmp包管理系统,包文件以RPM为扩展名;Ubuntu系列,Debian系列使用基于DPKG包管理系统,包文件以deb为扩展名。)

    Linux的哲学思想

    1. 一切皆文件

    • 无论硬件、软件在Linux上都通过文件表示,把几乎所有资源统统抽象成为一种文件的形式
    物理终端:/dev/console
    虚拟终端: /dev/tty# [1,6]
    串行终端: /dev/ttyS#
    伪终端: /dev/pts/#
    

    2. 组合小程序完成复杂任务

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

    3. 尽量避免跟用户交互

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

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


    Linux命令使用格式

    命令的语法通用格式

    COMMAND OPTIONS ARGUMENTS

    Linux基础命令相关

    1. ifconfig: 查看、配置、启用或禁用网络接口

    • <语法格式>
    ifconfig [网络设备][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<网络设备类型><硬件地址>][io_addr<I/O地址>]
    [irq<IRQ地址>][media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>]
    [-broadcast<地址>][-pointopoint<地址>][IP地址]
    
    • <选项说明>
    参数选项 解释说明
    up 启动指定网络设备/网卡
    down 关闭指定网络设备/网卡
    -arp 设置指定网卡是否支持ARP协议
    -promisc 设置是否支持网卡的promiscuous模式,网卡将接收网络中发给它所有的数据包
    -a 显示全部接口信息
    -s 显示摘要信息(类似于 netstat -i)
    dstaddr 设定一个远端地址,建立点对点通信
    tunel 建立隧道
    • <实操示例>
    [root@localhost ~]# ifconfig #处于激活状态的网络接口
    [root@localhost ~]# ifconfig -a #所有配置的网络接口,不论其是否激活
    [root@localhost ~]# ifconfig eth0 down #关闭eth0网卡
    [root@localhost ~]# ifconfig eth0 up #开启eth0网卡
    [root@localhost ~]# ifconfig eth0 192.168.1.56 #给eth0网卡配置IP地址
    [root@localhost ~]# ifconfig eth0 arp #开启arp功能
    [root@localhost ~]# ifconfig eth0 -arp #关闭arp功能
    

    2. echo: 回显命令

    • <语法格式>
    echo [SHORT-OPTION]... [STRING]...
    
    • <选项说明>
    参数选项 解释说明
    -n 不进行转换
    -e 让转义符生效
    -E 禁止对在STRINGs中的那些序列进行解释
    \n 换行符
    \t 水平制表符
    \y 纵向制表符
    \r 回车符
    \b 退格符
    • <实操示例>
    [root@cherryyao ~]# echo "hello"
    hello
    [root@cherryyao ~]# echo -n "hello"
    hello[root@cherryyao ~]# 
    [root@cherryyao ~]# echo -e "hello"
    hello
    [root@cherryyao ~]# echo -e "\nhello"
    
    hello
    [root@cherryyao ~]# echo -e "\rhello"
    hello
    [root@cherryyao ~]# echo -e "\bhello"                                                         hello
    [root@cherryyao ~]# echo -e "\\hello"
    \hello
    

    3. tty: 显示终端机连接标准输入设备的文件名称

    • <语法格式>
    tty [-s][--help][--version]
    
    • <参数选项>
    参数选项 解释说明
    -s 不显示任何信息,只回传状态代码
    --help 在线帮助
    --version 显示版本信息
    • <实操示例>
    [root@cherryyao ~]# tty
    /dev/pts/0
    

    4. startx:启动图形界面

    • <实操示例>
    [root@cherryyao ~]# startx #进入图形界面
    

    5. export:设置或显示环境变量值

    • <语法格式>
    export [-fnp][变量名称]=[变量设置值]
    
    • <参数选项>

    |参数选项|解释说明|
    |:----:|:|
    |-f|代表环境变量为函数名称|
    |-n|删除指定的环境变量|
    |-p|列出所有的环境变量|

    • <实操示例>
    # export -p //列出当前的环境变量值
    declare -x HOME=“/root“
    declare -x LANG=“zh_CN.UTF-8“
    declare -x LANGUAGE=“zh_CN:zh“
    declare -x LESSCLOSE=“/usr/bin/lesspipe %s %s“
    declare -x LESSOPEN=“| /usr/bin/lesspipe %s“
    declare -x LOGNAME=“root“
    declare -x LS_COLORS=““
    declare -x MAIL=“/var/mail/root“
    declare -x OLDPWD
    declare -x PATH=“/opt/toolchains/arm920t-eabi/bin:/opt/toolchains/arm920t-eabi/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games“
    declare -x PWD=“/root“
    declare -x SHELL=“/bin/bash“
    declare -x SHLVL=“1“
    declare -x SPEECHD_PORT=“6560“
    declare -x SSH_CLIENT=“192.168.1.65 1674 22“
    declare -x SSH_CONNECTION=“192.168.1.65 1674 192.168.1.3 22“
    declare -x SSH_TTY=“/dev/pts/2“
    declare -x TERM=“XTERM“
    declare -x USER=“root“
    declare -x XDG_SESSION_COOKIE=“93b5d3d03e032c0cf892a4474bebda9f-1273864738.954257-340206484“
    

    6. pwd:显示当前所在的位置

    • <语法格式>
    pwd [--help][--version]
    
    • <参数选项>
    参数选项 解释说明
    -L 显示当前目录
    -P 显示当前目录的实际物流地址
    --help 帮助选项
    --version 版本信息
    • <实操示例>
    [root@cherryyao ~]# pwd
    /root
    

    7.history:显示历史执行过的命令

    • <参数选项>
    参数选项 解释说明
    n 显示n个最近的记录
    -a 添加记录
    -r 读取记录
    -w 覆盖原有的history记录
    -c 清除记录
    • <实操示例>
    [root@cherryyao ~]# history
        1  man cat
        2  cat /etc/fstab
        3  cat /etc/issue
        4  cat /etc/fstab /etc/issue
        5  man cat
        6  cat -n /etc/fstab
        7  cat -n /etc/fstab /etc/issue
    

    8.shutdown:重启或关机命令

    • <语法格式>
    shutdown [-t seconds] [-rkhncfF] time [message]
    
    • <参数选项>
    参数选项 解释说明
    -r 重启系统并不关机
    -h 关机
    • <实操示例>
    [root@cherryyao ~]# shutdown -r now
    [root@cherryyao ~]# shutdown -h now
    

    9.halt/poweroff/reboot: 关机与重启命令

    • <语法格式>
    halt [OPTION]...
    reboot [OPTION]...
    poweroff [OPTION]...
    
    • <参数选项>
    命令 说明
    关机命令
    shutdown -h now 立刻关机
    shutdown -h +1 1分钟后立即关机
    halt 立即停止系统
    init 0 切换到运行级别0,关机
    poweroff 立即关机,并切断电源
    重启命令
    reboot 立即重启
    shutdown -r now 立即重启
    shutdown -r +1 1分钟后立即重启
    init6 切换到运行级别6,重启
    注销命令
    logout 登出
    exit 登出

    10. hwclock:显示或设定硬件时钟

    • <语法格式>
    hwclock [--adjust][--debug][--directisa][--hctosys][--show][--systohc][--test]
    [--utc][--version][--set --date=<日期与时间>]
    
    • <参数选项>
    参数选项 解释说明
    -s 以硬件为准,把系统时间调整为与硬件时间相同
    -w 以系统为准,把硬件时间调整为与系统时间相同
    --show 显示硬件的时间与日期
    --utc 使用格林威治时间
    • <实操示例>
    [root@cherryyao ~]# hwclock
    Wed 15 Aug 2018 01:25:31 AM CST  -0.836456 seconds
    [root@cherryyao ~]# hwclock --show
    Wed 15 Aug 2018 01:26:34 AM CST  -0.589252 seconds
    [root@cherryyao ~]# hwclock --utc
    Wed 15 Aug 2018 01:26:54 AM CST  -0.943260 seconds
    

    11. date:打印或设置系统日期和时间

    • <语法格式>
    date [OPTION]... [+FORMAT]
    date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
    月日小时分钟年份.秒数
    
    参数选项 解释说明
    -d 显示STRING指定的时间,而非当前时间
    -u 显示或设置全球时间(格林威治时间)
    -s 根据STRING设定时间
    --utc 使用格林威治时间
    格式符 FORMAT 控制着输出格式. 仅当选项指定为全球时间时本格式才有效.
    %a 当前区域的星期几的简写 (Sun..Sat)
    %A 当前区域的星期几的全称 (不同长度) (Sunday..Saturday)
    %b 当前区域的月份的简写 (Jan..Dec)
    %B 当前区域的月份的全称(变长) (January..December)
    %c 当前区域的日期和时间 (Sat Nov 04 12:02:33 EST 1989)
    %d (月份中的)几号(用两位表示) (01..31)
    %D 日期(按照 月/日期/年 格式显示) (mm/dd/yy)
    %e (月份中的)几号(去零表示) ( 1..31)
    %h 同 %b %H 小时(按 24 小时制显示,用两位表示) (00..23)
    %I 小时(按 12 小时制显示,用两位表示) (01..12)
    %j (一年中的)第几天(用三位表示) (001..366)
    %k 小时(按 24 小时制显示,去零显示) ( 0..23)
    %l 小时(按 12 小时制显示,去零表示) ( 1..12)
    %m 月份(用两位表示) (01..12)
    %M 分钟数(用两位表示) (00..59)
    %n 换行
    %p 当前时间是上午 AM 还是下午 PM
    %r 时间,按 12 小时制显示 (hh:mm:ss [A/P]M)
    %s 从 1970年1月1日0点0分0秒到现在历经的秒数 (GNU扩充)
    %S 秒数(用两位表示)(00..60)
    %t 水平方向的 tab 制表符
    %T 时间,按 24 小时制显示(hh:mm:ss)
    %U (一年中的)第几个星期,以星期天作为一周的开始(用两位表示) (00..53)
    %V (一年中的)第几个星期,以星期一作为一周的开始(用两位表示) (01..52)
    %w 用数字表示星期几 (0..6); 0 代表星期天
    %W (一年中的)第几个星期,以星期一作为一周的开始(用两位表示) (00..53)
    %x 按照 (mm/dd/yy) 格式显示当前日期
    %X 按照 (%H:%M:%S) 格式显示当前时间
    %y 年的后两位数字 (00..99)
    %Y 年(用 4 位表示) (1970...)
    %z 按照 RFC-822 中指定的数字时区显示(如, -0500) (为非标准扩充)
    %Z 时区(例如, EDT (美国东部时区)), 如果不能决定是哪个时区则为空
    • <实操示例>
    [root@cherryyao ~]# date
    Wed Aug 15 01:36:57 CST 2018
    [root@cherryyao ~]# date 081501402018.45
    Wed Aug 15 01:40:45 CST 2018
    

    Linux命令行帮助信息获取

    1. 查看命令帮助的方法
    • 使用--help获取命令帮助
    • 使用man获取命令帮助
    • 使用info获取命令帮助
    • 使用google等互联网信息获取命令帮助
    1. 命令man文档章节的说明
    参数说明 解释说明
    NAME 命令说明以及介绍
    SYNOPSIS 对命令的参数使用格式的一个摘要,可以理解为大纲
    DESCRIPTION 对命令的详细描述,以及相关参数选项的对应说明
    EXAMPLES 对命令如何使用进行示例
    OVERVIEW 对命令总的看法和总结信息
    DEFAULTS 命令对应的默认操作规范
    OPTIONS 命令相关参数的选项说明
    ENVIRONMENT 环境变量相关
    FILES 程序涉及命令的相关文件
    SEE ALSO 和命令相关的信息说明
    HISTORY 命令的历史进展
    AUTHOR 作者介绍

    Linux目录名称以及命名法则和规定

    Linux基础目录名称

    文件目录.jpg

    1.文件命名规则

    • 除了/外,所有的字符都可以;
    • 有些字符最好不用,如空格符,制表符,退格符和字符:? @ # $&()|; ‘’“”<>等;
    • 避免使用+ -或.作为普通文件名的第一个字符(在Linux下以.开头的文件是属于隐藏文件);
    • 另外和Windows文件命名不一样的是,在Linux下文件名大小写敏感。

    2. 对应的功用规定

    目录 对应说明
    / 根目录,系统所有目录均从根目录开始
    /bin 存放单用户维护模式下还能被操作的命令
    /etc 系统管理所需要的配置文件和子目录
    /usr Linux系统中占用空间最大的目录用来存放应用程序等软件数据的目录
    /var 存放系统记录文件和配置文件
    /sbin 存放系统管理员使用的系统管理程序,只有root权限才能操作
    /boot 引导核心的程序目录
    /tmp 存放不同程序执行时产生的临时文件目录
    /dev 包含了所有在linux系统中的外部设备,但是不包括外部设备的驱动程序
    /lib 存放系统动态连接共享库
    /root 超级用户root默认的主目录
    /mnt 临时挂载目录,一般情况是空的
    /home 用户来存放用户主目录的地方
    /opt 给第三方软件程序存放的目录

    相关文章

      网友评论

          本文标题:Linux_step1 慢慢学

          本文链接:https://www.haomeiwen.com/subject/ikhibftx.html