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

相关推荐

  • Mairadb

    Mairadb 编译安装Mairadb数据 先下载mariadb的软件包: 将软件包解压缩到/usr/local目录下 ]# tar xf mariadb-5.5.32-linux-x86_64.tar.gz -C /usr/local/ 创建连接 ]# ln -sv maria…

    Linux干货 2016-10-17
  • Corosync + Pacemaker 搭建高可用MariaDB服务

    Corosync + Pacemaker 搭建高可用MariaDB服务 实验描述 1.本实验的目的是为了通过手动配置corosync配置文件,实现MariaDB服务的高可用,集群心跳传递使用组播方式。2.三个节点的主机名分别为:node5.redhat.com、node6.redhat.com、node7.redhat.com。地址为172.16.100.5…

    Linux干货 2016-04-06
  • btrfs文件系统介绍

    btrfs文件系统介绍 简介        Btrfs(B-tree,ButterFS ,Better FS通常念成Butter FS),由Oracle于2007年宣布并进行中的COW(copy-on-write式)文件系统。继ext3/4文件系统之后linux又有了比较强大的文件系统(btrfs文件系统),btrfs…

    系统运维 2016-04-27
  • Linux发行版、发行版联系与区别

    参考这篇文章<2016年最佳Linux发行版排行榜> http://mt.sohu.com/20160128/n436204298.shtml #1 最好的回归发行版:OpenSUSE OpenSUSE背后的SUSE公司是最古老的Linux企业,成立于Linus Torvalds放出Linux的一年之后。它其实早于Red Hat诞生,同时也是社区…

    Linux干货 2016-08-15
  • Linux基础命令与详解(2017后续更新)

    后续陆续更新 命令基础

    Linux干货 2017-11-14
  • 高可用集群部署文档

    同学们都很活跃,自己好久没写了,也动动笔,下面文章写着玩的,如有错误请联系(NET7-粤-义薄云天) 高可用集群部署文档   目录: 目录: 1 项目需求: 2 实现方式: 2 拓扑图: 3 系统及软件版本: 3 安装步骤: 4 IP分配: 4 LVS和keepalived的安装和配置: 4 LVS主配置: 4 LVS2备 配置: 7 w…

    Linux干货 2015-08-11