第三章:Linux简介及面试常问问题

目录

一、Linux发展史

1.Linux前身-Unix

2.Linux诞生

3.开源文化

4.Linux系统特点

5.Linux操作系统优点

6.Linux操作系统发行版

7.Linux内核命名规则

二、Linux系统的安装

三、linux系统分区简介及如何分区

1.自动分区

2.手动分区

3.linux下查看分区信息和剩余空间大小

五、Linux系统的文件目录结构

六、目录结构与磁盘管理

七、如何挂载外部设备(例如U盘)

1.企业中服务器品牌DELL R7300,其硬盘总容量为300G,现需要安装CentOS7 Linux操作系统,请问如何分区?

2.GNU与GPL的区别是什么?

3.Linux内核显示:3.10.0-327.36.3.el7.x86_64,分别说出点号分割的每个数字及字幕的含义?

4.如何在Linux系统/tmp目录下快速创建1000个目录、目录名为test1、test2、test3…


一、Linux发展史

1.Linux前身-Unix

1968年  Multics项目
     MIT、Bell实验室、美国通用电气有限公司走到了一起,致力于开发Multics项目。到后期由于开发进度不是很好,MIT和Bell实验室相继离开这个项目的开发,最终导致项目搁浅。

1970年(Unix元年,时间戳)  Unix诞生
     当时在开发Multics项目的时候,实验室中有一个开发成员开发了一款游戏(travelspace:遨游太空),因为两个实验室相继离开项目开发,导致这名开发人员没法玩游戏,后来他提议组织人员重新在Multics项目之上重新的开发,也就出现了1970年的Unix。当时Unix操作系统是使用的汇编语言(机器语言)开发的。

1973年  用C语言重写Unix
     因为汇编语言有一个最大的局限性:对于计算机硬件过于依赖。导致移植性不好,所以后期在1973年使用了C语言对其进行重新开发。

1975年  Bell实验室允许大学使用Unix。

1975年  bell实验室允许大学使用Unix操作系统用于教学作用,而不允许用于商业用途。

2.Linux诞生

Linux的开发作者,Linux之父,李纳斯·托瓦兹。Linux诞生时是荷兰在校大学生。
1991年  0.0.1版本
     李纳斯当时学校使用的就是Unix操作系统,然后其对系统的底层代码进行了修改,放到了学校为学生开放的网站上,原先他把文件命名写成了Linus’s Unix,后期网络管理发现之后觉得这个名字不好,自己手动的将名字改成Linux。随后其他同学下载之后发现这个版本还是挺好用的,随后都把自己代码贡献给李纳斯。

3.开源文化

Linux是开源的操作系统。所谓开源就是指开放源代码。

4.Linux系统特点

开放性(开源)、多用户、多任务、良好的用户界面、优异的性能与稳定性

多用户多任务:
     单用户:一个用户,在登录计算机(操作系统),只能允许同时登录一个用户;
     单任务:一个任务,允许用户同时进行的操作任务数量;
     多用户:多个用户,在登录计算机(操作系统),允许同时登录多个用户进行操作;
     多任务:多个任务,允许用户同时进行多个操作任务;

Windows属于:单用户、多任务。
Linux属于:多用户、多任务。

5.Linux操作系统优点

系统迭代更新,系统性能稳定,安全性高多任务,多用户,耗资源少,内核小,应用领域广泛

6.Linux操作系统发行版

学习Linux操作系统,需要选择不同的发行版本,Linux操作系统是一个大类别,Linux操作系统主流发行版本包括:Red Hat Linux、CentOS、Ubuntu、SUSE Linux、Fedora Linux等CentOS社区企业版操作系统(Community Enterprise Operating System,CentOS)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码所编译而成

7.Linux内核命名规则

 #uname 命令用于查看系统内核与系统版本等信息

     uname -a

Linux内核命名格式为 “R.X.Y-Z”,其中R、X、Y、Z命名意义如下:
     3.10.0-862.el7.x86_64
     数字R:目前发布的内核主版本,到目前为止有4个大版本更新
     数字X:次版本号,奇数为开发版,偶数为稳定版
     数字Y:错误修补的次数,无论在内核增加安全补丁、修复Bug、实现新的特性或者驱动时都会改变
     数字Z:表示这个当前版本的第862次微调patch

注1:CentOS的el5, el6, el7代表什么
          EL6是Red Hat 6.x,CentOS 6.x和CloudLinux 6.x的下载
          EL5是Red Hat 5.x,CentOS 5.x和CloudLinux 5.x的下载
          EL7是Red Hat 7.x,CentOS 7.x和CloudLinux 7.x的下载

注2:x86_64
          X86属于32位系统,X64属于64位系统。i386通常被用来作为对Intel(英特尔)32位微处理器的统称 

二、Linux系统的安装

目前安装操作系统方式有2种:
   真机安装:使用真实的电脑进行安装,像安装windows操作系统一样,真机安装的结果就是替换掉当前的windows操作系统;
   虚拟机安装:通过一些特定的手段,来进行模拟安装,并不会影响当前计算机的真实操作系统;

注1:如果是学习或者测试使用,强烈建议使用虚拟机安装方式 

三、linux系统分区简介及如何分区

Linux操作系统分区与Windows操作系统分区C盘、D盘有很大区别,
Liunx操作系统是采用树形的文件系统管理方式,
所有的文件存储以/(根)开始 

1.自动分区

我这里有20G未分区的空间,如果已经被其他分区占用,请删除其他分区,新手建议自动配置分区,这样既方便有不容易出问题。【选择自动分区选择-点击左上角的完成】

2.手动分区

选择手动分区 然后单击左上角”完成”就会弹出手动分区的配置界面

分区 作用 分区建议 分区格式
boot分区 引导分区,包含了系统启动的必要内核文件,即使根分区顺坏也能正常引导启动 一般这些文件所占空间在200M以下 分区的时候可选100M-500M之间,如果空间足够用,建议分300-500M。避免由于长期使用的冗余文件塞满这个分区 建议ext4,按需求更改
/分区(根分区) 所有的文件都从这里开始,你可以比喻为Windows的C盘,但其实有区别。如果你有大量的数据在根目录下(比如FTP等)可以划分大一点的空间 建议15G以上。看需求,根分区和home分区的大小就类似C盘和D盘的空间分布一样,主要占空间在哪儿就在那里分大容量 建议ext4,按需求更改
swap分区 类似于Windows的虚拟内存,在内存不够用时占用硬盘的虚拟内存来进行临时数据的存放,而对于linux就是swap分区 建议是物理内存大小的2倍,比如你电脑是4G的物理内存,swap分区可以是8G swap格式
home分区(尽可能大。存放个人数据用,免得重装后数据没了) 存放用户数据,HOME的结构一般是 HOME/userName/userFile,如果不分则默认在/目录下 如果用户数据多可以将此分区适当增大,请参考“根分区”分区建议;一般硬盘的主要容量几乎都在Home分区和根分区下 建议ext4,按需求更改
var分区(1G左右) 用于log日志的文件的存放,如果不分则默认在/目录下 如果你安装的linux是用于服务器或者经常做日志分析,请划分var分区,避免日志文件不断膨胀塞满导致根分区而引发问题。 建议ext4,按需求更改

3.linux下查看分区信息和剩余空间大小

1.查看Linux系统分区信息,使用命令“fdisk -l”
2.使用命令”df -l和df -h“具体查看分区使用状况。实际这两个命令具有一样的作用区别是显示的容量单位不一样

四、文件与文件夹(目录)

什么是文件?
一般都是一个独立的东西,可以通过一些特定的工具进行打开,并且其中不能在包含除了文字以外的东西。

例如:什么是文件夹?
可以在其中包含其他文件的东西。

第三章:Linux简介及面试常问问题_第1张图片

为什么先讲文件?
1:日常运维工作中,有近一半以上的工作内容 精力 其实都是对文件的操作。
2: Linux 本身也是一个基于文件形式表示的操作系统。

Linux一切皆文件。
①在windows是文件的,在Linux下同样也是文件;
②在windows不是文件的,在Linux下也是以文件的形式存储的;

日常学习中和日常工作中,对于文件的操作的都有哪些种类?
创建文件、编辑文件、保存文件、关闭文件、重命名文件、删除文件、恢复文件。

五、Linux系统的文件目录结构

Bin 全称binary,含义是二进制。该目录中存储的都是一些二进制文件,文件都是可以被运行的。
Dev 该目录中主要存放的是外接设备,例如盘、其他的光盘等。在其中的外接设备是不能直接被使用的,需要挂载(类似windows下的分配盘符)。
Etc 该目录主要存储一些配置文件。
Home 表示“家”,表示除了root用户以外其他用户的家目录,类似于windows下的User/用户目录。
Proc:process 表示进程,该目录中存储的是Linux运行时候的进程。
Root 该目录是root用户自己的家目录。
Sbin 全称super binary,该目录也是存储一些可以被执行的二进制文件,但是必须得有super权限的用户才能执行。
Tmp 表示“临时”的,当系统运行时候产生的临时文件会在这个目录存着。
usr 存放的是用户自己安装的软件。类似于windows下的program files。
var 存放的程序/系统的日志文件的目录。
Mnt 当外接设备需要挂载的时候,就需要挂载到mnt目录下。

六、目录结构与磁盘管理

文件系统是操作系统用于在外部存储设备(主要是硬盘)上组织文件的机制。
Linux没有“盘符”的概念,通过一个整体的目录树来组织文件。以下是常见目录及作用:

/   系统根目录
/usr 用户的程序,配置等信息
/bin 存放常用命令的目录,和/sbin目录存放系统最核心的命令
/home 主目录,所有用户主目录都会在此目录下,以用户名命名
/sbin 超级用户root才能使用的命令所在目录
/lib   系统动态链接共享库
/boot root用户的主目录
/etc 系统配置文件以及一些程序的配置文件都在此目录
/dev 外接设备会映射为此目录下的一个文件
/media  把系统自动识别的u盘,光盘等挂载到此目录下
/proc  一个虚拟目录,是系统内存的映射,可以获取系统以及进程的信息
/sys 一个虚拟目录,把硬件设备映射成文件,可以通过文件控制硬件
/lost+found 一般为空,系统异常关机时会有一些信息存入此目录
/var 存放一些不断变化增长的东西(如日志文件)
/usr/bin 用户程序目录
/usr/sbin 需要超级用户权限运行的程序所在的目录
/tmp 存放临时文件的目录

第三章:Linux简介及面试常问问题_第2张图片  第三章:Linux简介及面试常问问题_第3张图片

七、如何挂载外部设备(例如U盘)

linux下如果没有图形界面的情况下就要通过命令来挂载U盘
   1.插入U盘

   2.sudo fdisk -l(需要获取root权限)
     查看所挂载盘符名称,假设盘符名称为sdc1


   3.建立挂靠文件夹
     cd /
     mkdir /mnt
  
   4.挂载U盘
     #将我们的U盘即/dev/sdc1挂载到/mnt下  
     mount /dev/sdc1 /mnt

   5.卸载U盘
     umount /dev/sdc1 或 umount /mnt

 注意:U盘或移动硬盘文件格式与Linux系统会有兼容性的问题
         FAT/FAT32/NTFS
         在挂载文件格式为NTFS格式的移动硬盘或U盘时,会报如下错误
         mount  未知的文件系统类型“ntfs” 2020
         请自动百度解决

1.企业中服务器品牌DELL R7300,其硬盘总容量为300G,现需要安装CentOS7 Linux操作系统,请问如何分区?

/ 根分区,40G左右
/boot 操作系统的内核和在启动系统过程中所要用到的文件,60MB—120MB之间
/swap 交换分区,机器内存的两倍
/usr 存放系统和个人软件的地方,100G左右
/var/log 系统日志记录分区,1G足以
/tmp 用来存放临时文件,5G左右
/op 附加程序存放地方,1G左右
/bin 存放标准系统实用程序,1G左右
/home 私人文件,剩下存储的都存放在这里

2.GNU与GPL的区别是什么?

GNU是一个自由的操作系统,其内容软件完全以GPL方式发布,名称来自GNU's Not Unix!的递归缩写
GPL,是GNU General Public License的缩写,GNU通用公共许可协议

3.Linux内核显示:3.10.0-327.36.3.el7.x86_64,分别说出点号分割的每个数字及字幕的含义?

3 当前内核主版本号,偶数为稳定版
10 当前内核次版本号,偶数为稳定版
0-327 就是修补的次数
36
el7 el7是RHEL7系列的
x86_64 x86_64代表这是64bit的系统

4.如何在Linux系统/tmp目录下快速创建1000个目录、目录名为test1、test2、test3…

mkdir test{1..1000}

附录:

1.安装依赖gcc,不然软件编译
  yum -y install gcc 

  wget https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2017.3.23.tgz

2.解压,配置,编译,安装
  tar zxvf ntfs-3g_ntfsprogs-2017.3.23.tgz
  cd ntfs-3g_ntfsprogs-2017.3.23/
  ./configure
  make
  make install

3.使用
   一定要搞清楚自己的移动硬盘对应的设备,否则挂载失败!!!
   查看设备
   fdisk -l

   自己的移动硬盘对应设备/dev/sdc1

   开始挂载
   mount -t ntfs-3g /dev/sdc1 /mnt

   现在进入/mnt目录,即是移动硬盘的根目录
 

第三章:Linux简介及面试常问问题_第4张图片

你可能感兴趣的:(Linux,linux,运维,服务器)