首页 > 代码库 > linux成长笔录——week_1

linux成长笔录——week_1

Linux-基础入门

 Week-1

 1; 关于计算机的组成及功能:

  计算机主要有硬件和软件两大部分组成:

    硬件部分:主要是CPU, 内存 ,I/O设备

CPU :运算器和控制器,是一台计算机的大脑。负责数据处理和运算

    运算器、控制器、寄存器、缓存组成

内存:RAM(Random Access Memory)

   是计算机重要组成部分,是与CPU沟通的桥梁,主要用于存放CPU中的运算

           数据。并与硬盘等外部存储器交换数据

I/O  :主要是对电脑进行数据的输入及对处理后数据的输出显示等。

Input:输入设备  下指令,提供数据等;

Output:输出设备  输出数据加工的结果;

...

软件部分:主要是操作系统和应用程序

操作系统:OS  kernel+Appiction 

是运行于硬件之上的 管理和控制计算机硬件与软件资源.是用

                户和计算机的接口,同时也是计算机硬件和其他软件的接口

内核:kernel

   驱动底层硬件

   将各底层硬件资源抽象成为简单资源

       管理各程序的运行,将有限的资源分配给运行中的程序,

                   使各部分程序相安无事。

    应用程序:Appliction:

       指令+数据


    2.Linux发行版

    发行版是指由第三方将开源的kernel源码文件及GUN的开源Appliction源码文件编译成计算机可以执行的二进制文件并公开发行的版本。

      主流的Linux发行版主要有

    |-- Debian            更新版本较快  默认采用GNOME桌面系统,简易华丽

|   |-- Knopix

|   `-- Ubuntu  版本迭代较快

|       `-- mint

|-- Redhat  主要在美国,大陆和台湾地区  稳定性较好

|   |-- Fedora  6个月的更新周期

|   `-- RHEL  需要付费

|       `-- CentOS  基于RHEL的二次开发

`-- Slackware  主要在欧洲使用

   `-- S.u.S.E

|-- OpenSUSE

 `-- SLES


同时比较流行的还有

Gentoo

Archlinux

这些发行版本均是GUN/Linux 。

3.Linux的哲学思想

1;一切皆文件:

把所有组资源统统抽象为文件形式;包括硬件设备,甚至通信接口等;

 open() ;read(); write( ); close( ); delete( ); create

2; 有众多单一的程序组成  

组合小程序完成复杂任务    

3;尽量避免跟用户交互;

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

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


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

常用格式 

ifconfig :configure a network interface  #网络配置接口

ifconfig  [interface]

       

         例:[root@192 etc]# ifconfig   #不加参数可以显示所有的网卡信息

   bridge0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500

           inet 172.16.100.100  netmask 255.255.255.0  broadcast                172.16.100.255


        echo :display a line of text    #回显一行文本        

         

        echo [SHORT-OPTION]... [STRING]...

       

          例:[root@192 etc]# echo "hello world"

     hello world

tty : print the file name of the terminal connected to standard input

  打印出连接到标准输入终端的文件名

 

tty [OPTION]...

  例:[root@192 etc]# tty  #不加选型可直接查看当前所处终端

/dev/pts/1               

  #pty :伪终端ttys :串行终端tty[1,6]虚拟终端console:物理终端

startx:initialize an X session   # 初始化一个X 系统会话

 startx [ [ client ] options ... ] [ -- [ server ] [ display ] options ... ]

 例:运行该命令后若安装了图形桌面系统,则会切换到图形桌面。

#CentOS 6:

# Ctrl+Alt+F7

#CentOS 7:

# 在哪个虚拟终端启动,即位于哪个虚拟终端;

#最小化安装系统后,需要安装图形桌面

# yum -y groupinstall Desktop

# yum -y groupinstall "X Window System"


export :

pwd: print name of current/working directory  #显示工作目录

  SYNOPSIS:pwd [OPTION]...     #常用 pwd 不跟选项

 

例:[root@192 etc]# pwd

  /etc


history:#shell进程会在其会话中保存此前用户提交执行过的命令

  SYNOPSIS:history [-c] [-d 偏移量] [n] 

或 history -anrw [文件名] 

history -ps 参数 [参数...]


例:[root@192 ~]# history   #显示内存和文件中存储的历史命令

  1  ping 192.168.0.5

  2  ping www.baidu.com

  3  ping 192.168.0.5

  ...

  # -c: 清空命令历史;

# -d offset:删除指定命令历史

# -r: 从文件读取命令历史至历史列表中;

# -w:把历史列表中的命令追加至历史文件中;

# !#:再一次执行历史列表中的第#条命令;

# !!:再一次执行上一条命令;

  # !STRING再一次执行命令历史列表中最近一个以STRING开头的命令;


shutdown: Halt, power-off or reboot the machine  #关闭电源或者重启机器


     SYNOPSIS: shutdown [OPTIONS...] [TIME] [WALL...]


      例:[root@192 ~]# shutdown -r +10 hello

Shutdown scheduled for 三 2016-12-28 00:49:18 CST, use ‘shutdown -c‘ to cancel.

[root@192 ~]# 

Broadcast message from root@192.168.1.100 (Wed 2016-12-28 00:39:18 CST):


hello


#OPTIONS:

-h: halt    关机

-r:reboot 重启

-c:cancel  取消


TIME:

now         立刻

hh:mm       #小时#分

+m          #分

+0      now


poweroff : halt, poweroff, reboot - Halt, power-off or reboot the machine   #重启,关机

  SYNOPSIS:halt [OPTIONS...]


 poweroff [OPTIONS...]


 reboot [OPTIONS...]



  例: poweroff -p --no-wall  #强制关机,并不发送通知


  #optiuons

  -f:force   强制

  --no-wall 不发送通知


reboot: 同上


data : #查询或设置系统时钟

SYNOPSIS:date [OPTION]... [+FORMAT]


例:[root@192 ~]# date 022001011991.01

1991年 02月 20日 星期三 01:01:01 CST


#FORMAT:格式符

# %F  完整日期格式,等价于 %Y-%m-%d

# %T  时间,等于%H:%M:%S

# %Y  年份

# %m  日期-月

# %d  日期-日

# %H  时间=小时

# %M  时间-分 

# %S  秒

# %s: 从1970年1月1号(unix元年)0点0分0秒到命令执行那一刻经过的秒数;

# ...


# 设定日期时间:date[MMDDhhmm[[CC]YY][.ss]]

                                          月-天-小时-分-年.秒


hwclock: query or set the hardware clock (RTC)  #查询或设置硬件时钟

  SYNOPSIS: hwclock [function] [option...]


例:[root@192 ~]# date

  1991年 02月 20日 星期三 05:02:12 CST

  [root@192 ~]# hwclock -s      #以硬件时间为准,将系统时间调整与硬件时间相同

  [root@192 ~]# date

  2016年 12月 28日 星期三 01:12:29 CST


  #显示或设定硬件时钟

-s, --hctosys:以硬件为准,把系统调整为与硬件时间相同;

-w, --systohc:以系统为准,把硬件时间调整为与系统时钟相同;



5.获取命令帮助

#type COMMAND 可以查看命令是否为内部命令

内部命令:                   

help COMMAND                

例:[root@192 ~]# help cd

cd: cd [-L|[-P [-e]]] [dir]

   Change the shell working directory.

   ...

外部命令:

(1) 命令自带简要格式的使用帮助

# COMMAND --help

例:[root@192 ~]# ls --help 

用法:ls [选项]... [文件]...


(2) 使用手册:manual

位置:/usr/share/man

~]# man COMMAND    


SECTION:

NAME:功能性说明

SYNOPSIS:语法格式

DESCRIPTION:描述

OPTIONS:选项

EXAMPLES:使用示例

AUTHOR: 作者

BUGS: 报告程序bug的方式

SEE ALSO: 参考

...


SYNOPSIS: 

[]:可选内容;

<>:必须提供的内容;

a|b|c:多选一;

...:同类内容可出现多个;


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

/usr/share/man

man1, man2, ...


1:用户命令;

2:系统调用;

3:C库调用;

4:设备文件及特殊文件;

5:文件格式;(配置文件格式)

6:游戏使用帮助;

7:杂项;

8:管理工具及守护进行;


6.基础目录名称及作用规定

   Filesystem Hierarchy Standard   #标准文件系统目录  即FHS 

/bin:所有用户可用的基本命令程序文件;   

/sbin:供系统管理使用的工具程序;

/boot:引导加载器必须用到的各静态文件:kernel, initramfs(initrd), grub等;

/dev:存储特殊文件或设备文件;

设备有两种类型:字符设备(线性设备)、块设备(随机设备);

/etc:系统程序的配置文件,只能为静态;

/home:普通的家目录的集中位置;一般每个普通用户的家目录默认为此目录下与用户名同名的子目录,/home/USERNAME;

/root:管理员的家目录;可选;

/lib:为系统启动或根文件系统上的应用程序(/bin, /sbin等)提供共享库,以及为内核提供内核模块

libc.so.*:动态链接的C库;

  ld*:运行时链接器/加载器;

  modules:用于存储内核模块的目录;

/lib64:64位系统特有的存放64位共享库的路径;

/media:便携式设备挂载点,cdrom, floppy等;

/mnt:其它文件系统的临时挂载点;

/opt:附加应用程序的安装位置;可选路径;

/srv:当前主机为服务提供的数据;

/tmp:为那些会产生临时文件的程序提供的用于存储临时文件的目录;可供所用户执行写入操作;有特殊权限;

/usr:usr Hierarchy,全局共享的只读数据路径;

bin, sbin

lib, lib64

include:C程序头文件;

share:命令手册页和自带文档等架构特有的文件的存储位置

local:另一个层级目录;

X11R6:X-Window程序的安装位置

src:程序源码文件的存储位置

/usr/local:Local hierarchy,让系统管理员安装本地应用程序;也通常用于安装第三方程序;

/var:/var Hierarchy,存储常发生变化的数据的目录;

cache Application cache data       #程序缓存数据

lib Variable state information   #数据的变化情况

local Variable data for /usr/local #可变的local 数据

lock Lock files                   #锁文件

log Log files and directories    #日志和目录文件

opt Variable data for /opt       #变化的opt数据

run Data relevant to running processes #与运行过程有关的数据

spool Application spool data 

tmp Temporary files preserved between system reboots #系统重启时保存的临时文件


/proc:基于内存的虚拟文件系统,用于为内核及进程存储其相关信息;它们多为内核

               参数,例如net.ipv4.ip_forward, 虚拟为net/ipv4/ip_forward, 存储                    于/proc/sys/,因此其完整路径为/proc/sys/net/ipv4/ip_forward;

/sys:sysfs虚拟文件系统提供了一种比proc更为理想的访问内核数据的途径;

    其主要作用在于为管理Linux设备提供一种统一模型的的接口;




   


     






       








linux成长笔录——week_1