Linux基础

计算机组成和功能

按照Von Neumann的理解 [1],计算机分为以下几部分:

    输入 (Input Device, 用于提供给计算机待处理的数据)

        e.g. 键盘,…

    CPU (Central Processing Unit, 用于处理输入数据)

        控制单元 (Control Unit, IR+PC, 存放当前系统状态)

        运算逻辑单元 (Arithmetic/Logic Unit, 算数)

    记忆 (存1和0的)

        e.g. 硬盘,RAM, …

    输出 (输出系统状态或运算结果等)

        显示器,纸带, …

 

实际上的计算机需要其他辅助硬件组件,如供电模块,主板等。具体可参见Wikipedia [2]

 

[1] Von Neumann architecture, https://en.wikipedia.org/wiki/Von_Neumann_architecture

[2] Computer hardware, https://en.wikipedia.org/wiki/Computer_hardware

Linux发行版

debian

    Knoppix

        便携式OS, 提供较广的硬件支持

    ubuntu (African word, "humanity to others", 更好的语言支持)

        Mint 更注重用户体验,提供多媒体解码支持,等

Gentoo

    有叫 Portage 的软件包管理系统

slackware (Goal: 方便使用,稳定)

    openSUSE (Software und System-Entwicklung, 提供更好的开发者体验)

    Arch

        pacman 软件包管理系统

        ABS, arch build system

Fedora

    RHEL

    CentOS (免费版,国内用得多

 

各发行版详细信息: http://distrowatch.com/

Linux发行版大图: https://en.wikipedia.org/wiki/Linux_distribution

Linux哲学思想并描述

  • 一切皆文件

    IO设备有对应文件,RAM有对应文件,就连进程都有对应文件(夹)。一切皆文件意味着OS运行更透明,定制更灵活

  • 由众多功能单一程序组成

    高复用性

    减少重复开发

  • 尽量避免与用户交互(自动化)

    程序设计时避免用户交互,以后需要交互可再加。但若是开始就搞成需要用户交互,之后想自动化往往会变得很丑陋

  • 使用文本文件保存配置信息

    方便用简单脚本读写

    高可读性

Linux系统上命令的使用格式, 常用指令

使用格式:

    [path]command [parameters]

        e.g. /bin/ls -l

    [path]为命令所在路径名,若command在$PATH (echo "$PATH") 中可省略

ifconfig

    查看本机网络接口信息(ip, MAC, etc)

[root@CentOS68 1]# ifconfig
    eth0      Link encap:Ethernet  HWaddr 00:0C:29:71:B3:79 
              inet addr:192.168.153.128  Bcast:192.168.153.255  Mask:255.255.255.0
              inet6 addr: fe80::20c:29ff:fe71:b379/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:52659 errors:0 dropped:0 overruns:0 frame:0
              TX packets:101141 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:1000
              RX bytes:11545520 (11.0 MiB)  TX bytes:9622411 (9.1 MiB)
     
    lo        Link encap:Local Loopback 
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:65536  Metric:1
              RX packets:10 errors:0 dropped:0 overruns:0 frame:0
              TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:512 (512.0 b)  TX bytes:512 (512.0 b)

echo

    输出参数到标准输出

[root@CentOS68 1]# echo "PATH=$PATH"
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

tty

    输出当前terminal

[root@CentOS68 1]# tty
/dev/pts/0

startx

    打开图形界面

    [root@CentOS68 1]# startx & 就不试了

export

    管理环境变量

[root@CentOS68 1]# export some_var=123
[root@CentOS68 1]# export -p | grep some_var #-p 显示所有
declare -x some_var="123"
[root@CentOS68 1]# export -n some_var #-n 删除
[root@CentOS68 1]# export -p | grep some_var
[root@CentOS68 1]#

pwd

    显示当前路径

[root@CentOS68 ~]# pwd
/root
[root@CentOS68 ~]# cd ..
[root@CentOS68 /]# pwd
/

history

    管理最近运行过的指令历史

[root@CentOS68 /]# history
    1  help history
    2  history
[root@CentOS68 /]# history -d 1 #删除第一条历史记录
[root@CentOS68 /]# history
    1  history
    2  history -d 1
    3  history
[root@CentOS68 /]# history -c #清空加载的历史记录
[root@CentOS68 /]# history
    1  history

shutdown

    关机 重启等

[root@CentOS68 /]# shutdown -r 5 'System will shut down after 5min'& #五分钟后重启机器
[1] 4600
[root@CentOS68 /]#
Broadcast message from root@CentOS68
        (/dev/pts/0) at 10:33 ...
 
The system is going down for reboot in 5 minutes!
System will shut down after 5min
 
[root@CentOS68 /]# shutdown -c
shutdown: Shutdown cancelled
[1]+  Done                    shutdown -r 5 'System will shut down after 5min'
[root@CentOS68 /]# shutdown -r 5 'System will shut down after 5min'&
[1] 4605
[root@CentOS68 /]#
Broadcast message from root@CentOS68
        (/dev/pts/0) at 10:34 ...
 
The system is going down for reboot in 5 minutes!
System will shut down after 5min
 
[root@CentOS68 /]# shutdown -c 'no way' #取消
shutdown: Shutdown cancelled
[1]+  Done                    shutdown -r 5 'System will shut down after 5min'
[root@CentOS68 /]#
Broadcast message from root@CentOS68
        (/dev/pts/0) at 10:34 ...
 
no way
[root@CentOS68 /]#

poweroff / reboot

    关机/重启

hwclock 管理硬件时钟
date 管理系统时钟
[root@CentOS68 /]# date
Sun Sep 25 10:40:22 PDT 2016
[root@CentOS68 /]# date 09260940 #改系统时间
Mon Sep 26 09:40:00 PDT 2016
[root@CentOS68 /]# hwclock #不影响硬件时钟
Sun 25 Sep 2016 10:42:35 AM PDT  -0.173872 seconds
[root@CentOS68 /]# hwclock -s #设置系统时间为硬件时钟
[root@CentOS68 /]# date #变回来了
Sun Sep 25 10:42:47 PDT 2016
[root@CentOS68 /]# hwclock --set --date="9/22/16 09:00:00" #改硬件时钟
[root@CentOS68 /]# hwclock #硬件时钟变了
Thu 22 Sep 2016 09:00:05 AM PDT  -0.094523 seconds
[root@CentOS68 /]# date #不影响系统时间
Sun Sep 25 10:44:49 PDT 2016
[root@CentOS68 /]# hwclock -w #设置硬件时钟为系统时间
[root@CentOS68 /]# hwclock #变回来了
Sun 25 Sep 2016 10:44:59 AM PDT  -0.266375 seconds

Linux帮助信息

内置命令: help <command>

外部命令:

    <command> –help

    man <command>

        文档储存在/usr/share/man

        压缩格式的文件,有章节之分

        /usr/shared/man/man1, man2, …

            1: 用户命令 (ls

            2: 系统调用 (open, read

            3: C库调用 (exec

            4: 设备文件及特殊文件 (mouse, console

            5: 文件格式 (/etc/crontab

            6: 游戏使用帮助

            7: 杂项 (ISO…

            8: 管理工具 (arp

    info <command>

    在线文档

    /usr/share/doc/command-version/

    有时存有些许文档

Linux发行版基础目录命名法和功能规定

/
├── bin #一般命令
├── boot #开机相关
├── dev #设备
├── etc #配置
├── home #一般用户home folder
├── lib #库
├── lib64 #64位库
├── media #挂载的移动存储
├── mnt #其他挂载点
├── opt #Optional软件
├── proc #系统进程相关 基于内存的文件系统
├── root #root用户home folder
├── sbin #系统命令
├── srv #服务数据
├── sys #设备相关 基于内存的文件系统
├── tmp #临时文件
├── usr #全局共享只读文件
│   ├── local #一般用于安装本地第三方文件
└── var #可变文件
    ├── log #日志
    ├── www #本地静态页面

原创文章,作者:b_stick,如若转载,请注明出处:http://www.178linux.com/49241

(0)
b_stickb_stick
上一篇 2016-09-27
下一篇 2016-09-27

相关推荐

  • linux启动和内核管理

    linux启动和内核管理:1. 加载BIOS 的硬件信息,获取第一个启动设备2. 读取第一个启动设备MBR 的引导加载程序(grub) 的启动信息3. 加载核心操作系统的核心信息,核心开始解压缩,并尝试驱动所有的硬件设备4. 核心执行init 程序,并获取默认的运行信息5.init 程序执行/etc/rc.d/rc.sysinit 文件6. 启动核心的外挂模…

    Linux干货 2017-03-28
  • 网络25期学习宣言

    马哥Linux运维学院 学习宣言 亲爱的小伙伴:        欢迎大家报名马哥Linux运维网络学习班,跟随马哥学习Linux技术,成就Linux大牛之梦。在这里,我们不仅可以学习到最优秀的技术课程,还可以跟着追梦的小伙伴们一起学习、一起进步。 为了督促大家一直积极认真努力的学习,请各位同学在评论区写出你的学习宣言。…

    Linux干货 2016-11-14
  • CMDB内功心法,助我登上运维之巅

    很多70、80后甚至90后都在金庸、古龙、梁羽生先生等武林大家熏陶下成长的,这么多年过去了,我的武侠梦依然不曾散去。曾几何,梦想有一天练就一身绝学,搂着小师妹花前月下,仗剑走天涯,快意人生。可每次的酣睡美梦都被班主任大书板子给抽醒,在他们的鞭策之下,浑浑噩噩的成了一位IT骚年。我们都知道武功分为内功和招式,内功是气,而招式是形,以气御形。内功深厚,会让你的招…

    系统运维 2017-01-09
  • 访问控制列表ACL使用说明

    一、什么是ACL ACL(Access Control List)可灵活地,更细粒度地定义访问文件或目录的权限。 二、为什么使用ACL Linux上文件系统的文件系统权限管理的对象分为三类:owner,group,other。这种分类非常简单,如果我希望有一个用户拥有不同于这三类对象的权限,或者再定义一个用户组的权限,传统的权限管理就不能实现,而ACL可以很…

    Linux干货 2016-08-08
  • 马哥教育网络班22期-第1周博客作业2

    date命令 date – print or set the system date and time 显示或设置系统日期和时间 【SYNOPSIS】 date [OPTION]… [+FORMAT] 【OPTIONS】 -d:–date=STRING,显示字符串所指的日期与时间, 而不是当前时间,字符串前后必须加上双引号…

    Linux干货 2016-08-15
  • 以洪荒之力打开linux德·摩根定律

    德·摩根定律让学习liunx的小伙伴绕得头疼,现在我就用洪荒之力为大家理顺一下这个定律。 由图片可以看出, A=4+3 B=3+2 非A=2+1 非B=4+1 A且B就是代表既是A又是B的地方,A和B都有色块3,所以色块3代表了A且B 同时,我们再看A=4+3 ,B=3+2,我们可以推断出,且运算的结果就是两个算数式中重复的数字。 A且B=3 A或B就是代表…

    Linux干货 2016-08-15