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
下一篇 2016-12-12

相关推荐

  • vim实用技能

    vim编辑器 简介 vi: Visual Interface,文本编辑器 文本:ASCII, Unicode 文本编辑种类: 行编辑器: sed 全屏编辑器:nano, vi VIM – Vi IMproved 使用 vim:模式化的编辑 基本模式: 编辑模式,命令模式 输入模式 末行模式: 内置的命令行接口 打开文件: # vim [OPTIO…

    Linux干货 2018-01-16
  • linux网络属性命令操作介绍(第十一天)

            linux网络属性常用命令有ifconfig\route\ip命令,centos7 的还是nmcli\nmtui。     网络属性的三大文件:修改DNS的文件/etc/resolv.conf  、修改网卡IP地址/etc/sysconfig/…

    Linux干货 2016-06-01
  • 关于RHEL6中ulimit的nproc限制

    ulimit 用于限制 shell 启动进程所占用的资源,支持以下各种类型的限制:所创建的内核文件的大小、进程数据块的大小、Shell 进程创建文件的大小、内存锁住的大小、常驻内存集的大小、打开文件描述符的数量、分配堆栈的最大大小、CPU 时间、单个用户的最大线程数、Shell 进程所能使用的最大虚…

    Linux干货 2016-10-19
  • VIM编辑器

    VIM是什么? Vim是从VI发展出来的一个文本编辑器,拥有许多丰富的功能,便于编程开发,在程序员中被广泛使用,是类Unix系统用户最喜欢的功能强大的跨平台文本文件编辑工具。 为什么要用VIM? vi编辑器是所有类UNIX系统下标准的编辑器,他是我们使用Linux系统不能缺少的工具。对于所有类UNIX系统的任何版本,vi编辑器是完全相同的。而vim是从VI发…

    2017-06-03
  • Linux基础知识之软硬链接

    系统环境:    该博文以CentOS6.8_x86_64系统为基础,Xshell5远程登录CentOS6.8系统,以root身份登录系统。 为什么要学习符号(软)链接和硬链接?    符号(软)链接和硬链接是Linux文件系统中的一个重要的概念,软硬链接的学习过程中会涉及一些文件系统中的索引节点(inode),索引节…

    Linux干货 2016-08-02
  • 正则表达式简述

    正则表达式简述 什么是正则表达式: 正则表达式,又称正规表示法、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多文本编辑器里,正则表达式通常被用来检索、替换那些符合某个模式的文本。 正则表达式分类: 标准正…

    Linux干货 2016-04-05