Linux系统的介绍及如何获取帮助?(学习笔记)

第一、Linux 基础

  CPU架构:

     x86

     x64 (amd64)

     m68000,m68k

     arm

     ultrasparc

     Power;PowerPC(aix) (IBM公司设计RISC的CPU)

     MIPS,ARM(多用在网关,机顶盒,便捷式设备的处理)

     alpha (HP公司的)

    POSIX:(Portable Operating System Interface)

    window和linux都遵循POSIX ,俗称的API

   硬件–> 驱动—>  kernel –》操作系统(API(SysCall,LibCall))    

   blob.png

       硬件部分

   blob.png

  Unix-like 开源协定:

     GPL:General Public License (强制开源)

     copyright,copyleft

     LGPL:lesser GPL (稍微)

     GPLv2,GPLv3

     FSF:Free

     BSD:

     Apache :只要不以原作者名义商业化,都可以不开源,商业用途

     ASF:Apache Software Foundation

     双线授权:

     Community : 遵循开源协定

     商业授权:

     Enterprise(企业版) (针对企业提供付费服务,维护)

     程序管理:

  相关开源协议的介绍

    http://www.awflasher.com/blog/archives/939


    https://www.oschina.net/question/54100_9455


  程序的组成部分:

     二进制程序(就是主程序)

     配置文件(定制化配置,以方便特定运行服务)

     库文件(为二次开发提供的接口)

     帮助文件:(使用说明)

  程序包管理器:

     1,程序的组成文件打包成一个或者几个有限文件

     2,安装:

     3,卸载

     4,查询

  各种系统安装包管理器

     Debian :dpkg,apt-get

     RedHat: rpm ,yum,dnf(yum升级版)

     S.u.S.E: rpm,zypper

     ArchLinux: port

     Gentoo: 边编译边安装

     LFS: Linux From Scratch (完完全全显示了系统编译-创建的过程)

     Kali:

    硬件资源的复用创建出了虚拟机

     CPU的复用:时序

     内存的复用:空间切片

     硬盘的复用:空间

     I/O的复用:时序

     网卡的复用 :时序

     ps:目前主流的虚拟化软件:vmware workstations;virtualbox 

  终端(terminal)用户界面

     gui:graphic user interface

     gnome ked 

     cli:command line interface

     bash ,ksh ,csh,

 终端分类、操作和切换:

    物理终端:控制台,console

    虚拟终端:6个 称为:tty

    ctrl+alt+F[1-6]

    图案终端:

    CentOS 6 

    Ctrl+Alt+F7

    CentOS 7 

    在相应的虚拟终端上启动

    串行终端:ttyS

    伪终端:pty

     远程连接:

     ssh协议:secure shell

     命令:ss -tnl

     查看系统是否监听于tcp协议的22号端口

     ]# ip addr list

     ]# ifconfig

    如果是远程安装的,需要远程连接,确保关闭防火墙

    ]# iptables -L -n # 查看防火墙是否关闭

    关闭防火墙

    CentOS 7 :

    ~]# systemctl disable firewalld.service

    ~]# systemctl stop firewalld.service

    

    CentOS 6:

    ~]# service iptables stop

    ~]# chkconfig iptables off

第二、Linux 重要思想:

  1,一切皆文件(硬件设备都是文件表示)

     物理终端:/dev/console

     虚拟终端:/dev/tty#[1-6]

     串行终端:/dev/ttyS#

     伪终端:/dev/pts/#

  2,有众多功能单一的程序组成:一个程序只做一件事,组合小程序完成复杂任务

  3,尽量避免跟用户交互

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

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

  CLI接口

     命令行[smile@www ~]#  

     prompt(提示符的解释) 相关环境变量是PS1

     #,管理员,$普通用户

     建议用非管理员用户登录,安全操作起见 执行管理操作,临时切换就行

  几个基础命令:

     tty:查看当前终端设备

     ifconfig或者ip addr list:查看活动接口的ip地址

     echo:回显

     ping 探测网络的目标地址和当前的主机之间的连通性

    

    关机命令:

     CentOS 7 

     ~]# systemctl poweroff

     ~]# systemctl reboot ; 重启

     

stallman: 

自由含义:自由学习和修改,自由使用;自由分发,自由创建衍生版

思考:文件是什么?众多文件如何组织起来?


     目录:路径映射

     文件:存储空间存储的一段流式数据,对数据可以做到按名存取

    文件系统:层级结构

     /: 原初节点,倒置树状结构

     文件路径表示: 相对路径(从当前位置出发)和绝对路径(从根位置出发)

     文件名使用法则:

     严格区分字符大小写;目录也是文件,同一个目录下,两个文件不能同名

     支持使用除“/"以外的任意字符

     最长不能超过255个字符

     basename:最右侧的文件或者目录名

     dirname:basename左侧的路径

    程序的组成部分:二进制程序文件,库文件,配置文件,帮助文件

     前两者一般都是二进制文件,后两个是文本文件

     库文件:不能独立执行,只能被调用时执行

     命令存放的目录:/sbin, /bin, /usr/bin, /usr/sbin, /usr/local/bin,/usr/loacl/sbin

    库文件: /lib,/lib64,/usr/lib,usr/lib64

   注意:并非所有的命令都有一个在某个目录里有一个对应的可执行文件


  命令可两类:

     shell自带的命令, 内置命令(builtin)

     独立的可执行程序文件,文件名即命令:外部命令

    命令语法的基本格式

     Command OPTIONS ARGUMENTS

    shell 程序是独特的程序,负责解析用户提供的命令

     环境变量: eg:HOME,PATH

     查看命令的类型:

     type COMMAND 

     OPTIONS: 指定命令运行的特性

     注意:1,有些命令的选项没有-,多个选项可以合并;2,–help,这种长选项不能合并;3,有些选项可以带参数,此称为选项参数

     ARGUMENTS:命令的作用对象,命令对什么生效

第三、如何获取帮助?

    

     内部命令:help COMMAND

     外部命令:使用手册 manual (man COMMAND)

     手册所在目录:/usr/share/man

     SECTION:

     NAME:功能性说明

     SYNOPSIS: 语法格式

     DESCRIPTION:描述

     OPTIONS:选项

     EXAMPLES:使用案例

     AUTHOR:作者

     BUGS:报告程序的BUG方式

     SEE ALSO:参考

    

     SYNOPSIS:

     []:可选内容

     <>:必须提供的内容

     a|b|c: 多选一

     ….同类内容可出现多个

    

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

     /usr/share/man1,man2,man3

     1,用户命令

     2,系统调用

     3,C库调用

     4,设备文件及特殊文件

     5,文件格式 (配置文件格式)

     6,游戏使用帮助

     7,杂项

     8,管理工具及守护进程

     查看命令有哪些章节

     whatis COMMAND,有依赖数据库: makewhatis(手动更新数据库)

  操作man手册的阅读方式

     空格:向文件尾部翻一屏

     b键:向文件首部翻一屏

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

     ctrl+u:

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

     k:向文件首部翻一行

     G:直到最后一行

     1G:直到文件首行

     #G:直到指定行

    -M 选项 : 到指定目录下面查找命令手册并打开

  info COMMAND: 获取在线帮助文档

    README:程序相关信息

    INSTALL:安装帮助

    CHANGES;版本更改信息

  google搜索:

     keyword filetype:pdf

     keyword site:domain.tld

第四、Linux文件系统


     1,文件名严格区分大小写

     2,文件名可以使用除/以外的任意字符

     3,文件名长度不能超过255字符

     4,以.开头的文件是隐藏文件

     .是当前目录

     ..是上一级目录

  常用命令:

     pwd:printing working directory (显示路径

     cd:change directory 改变目录(就是改变路径

     直接cd或者cd~ 直接到家目录

     在bash中,~表示家目录

     cd ~USERHOME 切换到USERHOME的家目录

     cd – 和上一级来回切换

    

     $PWD:当前工作目录

     $OLDPWD:前次的工作目录

  ls:list 列出指定目录下的内容

     -a: 显示所有文件(包含隐藏文件

     -A:显示除.和..之外的所有文件

     -l:–long 显示出详细信息

     -h,–human-readable 对文件大小单位换算,换算大小可能不是非常精确

     -d,查看目录本身,不是目录内部内容

     -r:逆序显示

     -R:递归显示

    

  cat:catenate 查看文本文件 

     -n :显示行号

     -E:显示行结束符

     tac:反过来显示文本文件命令,和cat对比

    

     file :determin file type 确定文件类型

     查看文件类型

    

  echo :回显

     -n:不换行

     -e:执行转义字符

    

  单引号和双引号的区别

     单引号:强引用,变量引用不能被替换

     eg:'$SHELL' 还是$SHELL

     双引号:弱引用,变量引用能被替换

     eg:'$SHELL' 是SHELL

  shutdown :halt ,power-off,reboot

     OPTIONS:

     -h:halt

     -r:reboot

     -c:cancel

     TIME:

     now

     hh:mm

    

     wall: 向所有终端发出信息

  日期相关的命令

     Linux:系统启动时从硬件读取时间和日期:读取完以后,就不在与硬件相关

     还有就是和服务器时间同步时间

     系统时钟和硬件时钟

     date: 查看系统时钟

     显示日期:date [OPTION][+FORMART]

     %s:从1970年1月1日(Unix元年)0分0秒到现在所经过的秒数

     设置日期:date [MMDDhhmm[[CC]YY][.ss]]

     clock: 显示和设置硬件时钟

     -s: –hctosys 以硬件为准,同步系统时间

     -w: –sysyshc: 以系统为准,同步硬件时钟

    

     hwclock和clock同一个命令

    

     cal :查看日历

原创文章,作者:不忘初衷,如若转载,请注明出处:http://www.178linux.com/63341

赞 (1)
不忘初衷不忘初衷
上一篇 2016-12-12 02:45
下一篇 2016-12-12 10:47

相关推荐

  • 网络接口bonding的设置

    网络接口bonding的设置 一、什么是Bond 就是将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。当然,直接给两块网卡设置同一IP地址是不可能的。通过bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址。 二、Bonding的工作模式 Bond有七种策略模式(mode),其实指的是在传输数据包的时候,如何从已经…

    Linux干货 2016-09-06
  • 第5周作业

    1、显示当前系统上root、fedora或user1用户的默认shell     ~]# egrep "^(root|fedora|user1)" /etc/passwd 2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,如:hello();  …

    Linux干货 2017-01-07
  • Linux发展史

    Linux系统的发展史           内容摘要:            Linux操作系统的诞生       &n…

    Linux干货 2016-10-18
  • 正则表达式

    正则表达式是一种以一些字符赋予特殊意义之后,用来表达字符串,用以筛选各种形式的字符串用来进行查找、替换、删除等各种文本编辑作用的一种表示方式。 正则表达式的特殊字符 字符表示 .   可以表示任意可打印字符 [] 中括号范围内任意单个字符 [^] 中括号范围外任意单个字符 (相对所有可打印字符) [:space:] 表示任意单个空白字符 [:dig…

    2017-08-03
  • N22-℡浮生.若夢 ╮-第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 cp文件复制:       常用选项:     -i:交互式复制,即覆盖之前提醒用户确认;     -f:强制覆盖目标文件;  &n…

    Linux干货 2016-09-06
  • 第六周总结VIM编辑器的使用并完成练习题

    第六周 总结VIM编辑器的使用并完成练习题 1. VIM是什么? VIM(Vi IMproved)是从vi发展出来的一个文本编辑器。 2.为什么要使用VIM? VIM有代码补完,编译以及错误跳转等方便编程的功能,在程序员中广泛使用。对于大多数的用户来说,VIM有着比较陡峭的学习曲线,但是一旦掌握一些基本操作之后,能大幅度提高编辑效率。VIM是类Unix系统用…

    Linux干货 2017-09-02