zoukankan      html  css  js  c++  java
  • Linux学习笔记系列(1)

    据说linux很厉害;

    一、 Linux的发展史。

    了解一个东西,首先就要了解他的历史,emmmm,了解,就是不用记得,所以,我也只是知道个大概,于是乎,我去别人的博客复制一下他的历史来这里放着。

    Unix

    Unix操作系统是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,最早由KenThompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发。目前它的商标权由国际开放标准组织所拥有,只有符合单一Unix规范的Unix系统才能使用Unix这个名称,否则只能称为类Unix(Unix-like)。

    GNU

    GNU是自由软件之父Richard Stallman在1984年组织开发的一个完全基于自由软件的软件体系,与此相应的有一分通用公共许可证(General Public License,简称GPL)。Linux以及与他有关的大量软件是在GPL的推动下开发和发布的。

    自由软件之父 - Richard Stallman 像一个神态庄严的传教士一样喋喋不休地到处传播自由软件的福音,阐述他创立GNU的梦想:“自由的思想,而不是免费的午餐”。这位自由软件的“顶级神甫”为自己的梦想付出了大半生的努力,他不但自己创作了许多自由软件,如:GCC、和GDB,在他的倡导下,目前人们熟悉的一些软件如BIND、Perl、Apache、TCP/IP等都成了自由软件的经典之作。

    如果说Richard Stallman创立并推动了自由软件的发展,那么,Linus Torvalds毫不犹豫奉献给GNU的Linux,则把自由软件的发展带入到一个全新的境界。

    BSD

    386BSD因为法律问题直到1992年还不能发布,NetBSD和FreeBSD是386BSD的后裔,比Linux早。Linus Torvalds说,当时如果有自由的基于386的Unix-like操作系统,他就可能不会创造Linux。尽管无法预料这给以后的软件业究竟造成了什么样的影响(如果没有这个法律纠纷,很有可能没有今天的革命性的Linux),但有一点可以肯定,Linux更加丰富了这块土壤。

    Minix

    Minix是一种基于微内核架构的类Unix计算机操作系统,由Andrew S. Tanenbaum发明。Minix最初发布于1987年,开放全部源代码给大学教学和研究工作。2000年重新改为BSD授权,成为自由和开放源码软件。

    因为AT&T的政策改变,在Version 7 Unix推出之后,发布新的使用条款,将Unix源代码私有化,在大学中不再能使用Unix源代码。教授为了能在课堂上教授学生操作系统运作的实务细节,决定在不使用任何AT&T的源代码前提下,自行开发与Unix兼容的操作系统,以避免版权上的争议。他以小型Unix(mini-Unix)之意,将它称为Minix。

    Minix没有任何代码抄袭Unix,所以它们之间并没有任何继承关系,Minix作为当时有史以来的第一个开源的操作系统放到网上以后,短期之内得到了飞速发展,大量的人进行下载学习。

    由于Minix是教授一人所写,所以存在一些漏洞。这时候有使用者发现漏洞存在,想着去下载一些补丁或者自己写一些补丁来修补这些漏洞,修补之后发现效果不错,然后就建议教授利用这些补丁完善下Minix,结果呢,教授比较固执,意思是说:为了维持Minix的纯洁性,不需要任何外来代码。也就是说,根本不打算做商业发行,所以Minux保持了其最原始的风范。

    Linux

    在后来的几年内,由于计算机硬件工业的强力运作,以Intel主导的x86系统架构的个人计算机大行其道,所以个人计算机算是相当流行的一个机器了。但在此时,人们使用的大多还是DOS操作系统。此时,芬兰赫尔辛基大学有个叫Linus Torvalds的学生做了件不寻常的事情。当时他正好有一台386的计算机,由于并不喜欢自己电脑上的DOS系统,所以就想:既然Minix这么棒、这么稳定,那我何不将它移植到个人计算机 (好在由于Stallman提倡的Open Source理念,他得以接触到一些Source Code,而经由这样的一个想法,O(∩_∩)O~他就很有心的读取了Unix核心,并且去除较为繁复的核心程序,将它改写成可以适用于一般个人计算;机的x86系统上面)。

    到了1991年,他终于将0.02版的原始码hobby放到网络上面供大家下载,由于hobby受到大家的肯定,相当多的朋友一起投入这个工作中。终于在1994年,将第一个完整的核心Version 1.0释出,并且造成目前的大流行。。。由于Linux kernel的发展是由虚拟团队所达成的,大家都是透过网络取得Linux的核心原始码,经由自己精心改造后再回传给Linux社群,进而一步一步的发展完成完整的Linux系统,至于Linus Torvalds是这个集团中的发起者。由于这个群策群力的缘故,Linus Torvalds将Linux定为同样造福大家的GNU授权模式!

    Linux是Linus Torvalds受到Minix的影响而作成的。但在设计哲学上,Linux则和Minix大相迳庭。Minix在内核设计上采用微内核的原则,但Linux则和原始的Unix相同都采用宏内核的概念。在Linux发展之初,双方还于1992年在新闻组上有过一场精彩的理念争论。Minix的作者和支持者认为Linux的单内核构造是“向七十年代的大倒退”,而Linux的支持者认为Minix本身没有实用性。

          

    Emmmmm,就这些,复制的,然后还有一个,就是linux的企鹅图标,为啥要用企鹅,我开始以为它跟qq有关系,,,哈哈哈哈哈哈,天真的自己。再复制一段à

    1994年发表Linux正式核心1.0的时候,大家要Linus Torvalds想一只吉祥物,他想起曾经在澳大利亚的一个动物园里被企鹅咬过,干脆就以企鹅来当吉祥物了!

    更容易接受的说法是:企鹅代表南极,而南极又是全世界共有个一块陆地,不属于任何国家。也就是说Linux不属于任何商业公司,是全人类每个人都可以分享的一项技术成果。

    总结下,linux就是好,学了肯定没错;

    二、 Linux目录介绍。

    好了,接下来就是我学习的点滴,各种截图;打开终端,开始;

    一)    这里得先说下基本命令。

    1)      ls查看展示文件的命令,还可以通过alias修改。

     

    2)      然后说下~与/的区别

     

    显而易见,~就是当前用户的路径,/是根目录,然后root用户的话,/~是一个地方。pwd展示的是当前路径的名字。

    二)    /下面得目录介绍。

     

    这就是linux根下面得目录。第一个是bin。哈哈那么我们就来说下这个bin.

    1)      bin目录。

     

    进去后,我看到了这些途中有几个是我们灰(si)常(hu)熟(jian)悉(guo)的一些单词,呸,命令。对,bin下面放的就是我们用户使用得命令,我还做过一件事,就是想打开某个命令文件,看看他是怎么写的,噗,看图不许笑。嗯,对就是这样。

     

    2)      sbin目录。

    讲了bin,当然下一个就是sbin了,直接挑明了把,sbin就是系统的执行命令,用户权限只能观看,不能亵玩。看图看图。

     

    反正我一个都不熟悉。

    3)      usr目录。

    我一眼看过去,这个usr不就是用户的简单写吗?可不是嘛,这个就不是usr,而是“Unix Software Resource”的缩写(注意句式,不要被绕了),据说很多软件资源的命令放在这里,emmm,这样说不准确,应该是很多系统安装的软件放在这里,嗯,这样说应该要准确一点点。

     

    我又没安软件,刚刚学,看不出来。下一个。

    3.1)/usr/bin目录。

    通过上面的了解,举一反一,这里肯定也得是存放的命令吧!那么是啥命令呐?

     

    这些,看不懂,不管,反正就是存放命令,我再反一(举一反二),usr/bin也是那个啥,命令!这个根据前面强行先理解,以后会懂得。

    3.2)usr/sbin目录。

    为了好看 ^_<

    4)      /boot目录

    嗯,boot,这里放的是啥,看图,肯定不知道是啥。看一眼嘛,知道他是什么样子。呐,是不是真的看不懂,哈哈,根据某某某大佬得说法,这个系统的启动目录,保存系统的启动文件这些,途中的就是那些系统的启动文件。没错,我看见了,grub是个文件夹,他不是文件夹,哼,那他就是系统的启动文件夹。我就这么理解先。爱啥啥。

     

    5)      /dev目录

    怎么解释呢?看图吧。

     

    据说这里放着都是一些设备文件,我尝试用文本文件打开,vi之后,他说不是file,也就是不是文本文件,后来去请教了下,然后以我强大的理解能力,明白过来了,这里放的是设备文件,就是一些接口文件。举个栗子嘛,就是说如果想要去读取摄像头的返回的信息,我们怎么读呢?当然就是去都这里的接口文件,如果他有接摄像头,那么读到的就回事摄像头返回的图像信息。Emmmm,好困啊,先这样理解着。

    6)      /etc目录。

     

    这个文件夹下面保存的是系统默认安装的那些程序的配置文件,所有的默认安装的配置文件都是安装在这里。

    7)      /home目录

    顾名思义,这是家的意思,在这个目录下存的账户。如下图

     

    我的电脑暗转了救我一个账户,所以这里保存的就我一个账户,如果我多按一个账户,那么就会又多个账户。

    8)      /lib目录

    某文档中就用了一句话描述,保存系统调用的函数库。先看看图再说。

     

    看图是看不懂的了,通过我刚刚查了下,网上说这里大致就是存放着bin下面命令需要调用的一些库函数。Emmmm,我还看到一个据说是不恰当但是很形象的栗子,再windows下有个system32,就和这个文件夹类似。

    9)      /media目录

    挂载媒体的目录。这个我不截图了,里面什么都没有,什么是挂载呢?比如我们插入一个U盘后,计算机就会自动生成一个文件夹叫做disk,这个文件夹里面就能看到u盘中的文件。那么这个disk文件夹就是u盘的挂载目录。那么什么是媒体呢?我去百度下再回来说,(1分钟后),百度到一个很好理解的,我想说的就是,dvd等等可移除的装置都会在这个文件夹下挂载一个目录,等你拿走了就会消失。

    10)  /mut目录

    这个目录下用于挂载U盘、移动硬盘等等。(系统建议,当然也可以不挂在这里)

    11)  /misc目录

    这个目录系统建议挂载NFS服务。(NFS是啥就是远程文件系统,通过这里可以去访问远程的文件。)

    12)  /opt目录

    这里放的是第三方安装的软件保存位置。

    13)  /proc目录

    虚拟文件系统,这个目录下的数据不是保存在硬盘上的,而是保存在内存中的数据。恩恩,这个目录下有东西,那我们就展示下:

     

    这都是些啥?

    14)  /sys目录

    这个目录和上面那个porc一样都是保存虚拟的文件,在内存中,不过这个保存的是内核信息。

     

    15)  /root目录

    Emmm,这个目录我还进去不,我的切个root去看看(20s后)里面什么都没有,我进去其实就是~目录。Root下的。

    16)  /srv目录

    这个目录下会保存一些服务的数据,也就是说有些系统启动之后会在这个目录下保存相关数据。至于什么叫服务,好困啊,不想解释了,就是服务。

    17)  /tmp临时目录

    这个我知道,不用看我也知道,tmp就是temp临时文件夹嘛(偷瞄一下),这个文件下下所有用户都能够写入东西。

    18)  /var目录

    动态数据保存的文件夹,只要存软件运行呀,日志呀等等文件的地方。

           肯定不是背就能背下来的,我按照这个敲来敲去,写了一遍都还是没有记下来。所以,这个可以作为临时手册什么的,当然不全面的收册,记住ctrl + f 的作用就好。

  • 相关阅读:
    -bash: belts.awk: command not found
    PLS-00357: Table,View Or Sequence reference 'SEQ_TRADE_RECODE.NEXTVAL' not allowed in this context
    初识makefile
    proc:基本数据库操作
    ORA-12154: TNS:could not resolve the connect identifier specified
    简单的爬虫
    合并一个文文件夹下的所有Excel文件
    Python 递归读取文件夹内所有文件名(包含子文件夹)
    CSS
    JQ
  • 原文地址:https://www.cnblogs.com/luohuayu/p/8980053.html
Copyright © 2011-2022 走看看