大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

频道:行业资讯 日期: 浏览:1262

前言

本文主要介绍了Linux的概述、安装和结构,主要包括Linux概述、安装Linux和Linux结构,是Linux的入门教程,也是后边搭建大数据集群的基础。

1.Linux概述

(1)Linux简介

Unix 是较早被广泛使用的计算机操作系统之一,也是Linux的前身,它的第一版于1969年由 Ken Thompson 在 AT&T 贝尔实验室实现,1973年Ken Thompson与Dennis Ritchie用C语言重写了 Unix 的第三版内核。

相关人物如下:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构
大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

Unix系统的特点:

Unix是一个强大的多用户、多任务操作系统;

UNIX的商标权由国际开放标准组织(The Open Group)所拥有;

UNIX操作系统是商业版,需要收费,价格比Microsoft Windows正版要贵一些。

Linux是一套自由加开放源代码的类Unix操作系统,诞生于1991年10月5日(第一次正式向外公布),由芬兰学生Linus Torvalds和后来陆续加入的众多爱好者共同开发完成。

Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。

其中,GPL协议:

Richard M.Stallman 于1984年创立自由软件体系GNU,拟定普遍公用版权协议 (GeneralPublicLicense,简称GPL),今天Linux的成功就得益于GPL协议;

所有GPL协议下的自由软件都遵循着Richard M. Stallman的"Copyleft"(非版权)原则,即自由软件允许用户自由拷贝、修改和销售,但是对其源代码的任何修改都必须向所有用户公开。

GNU计划:

GNU计划和自由软件基金会FSF(the Free Software Foundation)是由Richard M. Stallman 于1984 年一手创办的。旨在开发一个类似UNIX 并且是自由软件的完整操作系统;

到上世纪90 年代初,GNU 项目已经开发出许多高质量的免费软件,其中包括有名的emacs 编辑系统、bash shell 程序、gcc 系列编译程序、gdb 调试程序等等。这些软件为Linux 操作系统的开发创造了一个合适的环境。这是Linux 能够诞生的基础之一,以至于目前许多人都将Linux 操作系统称为GNU/Linux操作系统。

相关任务如下:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构
大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

Linux 系统特点:

  • 开放性(开源)
  • 多用户

多个用户,在登录计算机(操作系统),允许同时登录多个用户进行操作

  • 多任务

多个任务,允许用户同时进行多个操作任务。

其中,Windows 属于单用户多任务,Linux 属于多用户多任务。

  • 良好的用户界面
  • 优异的性能和稳定性

(2)Linux的应用领域及版本介绍

Linux的应用领域如下:

  • 服务器系统

Web应用服务器、数据库服务器、游戏服务器、接口服务器、DNS、FTP等等。

因为Linux安全性和稳定性较高。

  • 嵌入式系统

路由器、防火墙、手机、PDA、IP 分享器、交换器、家电用品的微电脑控制器等等。

  • 高性能运算、计算密集型应用

Linux有强大的运算能力。

IBM的Watson超级计算机就是使用了Linux系统。

  • 桌面应用系统

很多桌面操作系统的底层也是Linux。

  • 移动手持系统

Android系统底层就是基于Linux。

Linux 的版本继承了 Unix 的版本定制规则,分为内核版本和发行版本:

  • 内核版本

内核就是核心,其他软件都基于这个核心,不能直接使用,内核版本统一在http://www.linux.org发布。

内核版本分为稳定版和开发版,区分方式是根据次版本的奇偶判定,奇数为开发版、偶数为稳定版。

  • 发行版本

由各个 Linux 发行商发布,Linux 发行商有权选择 Linux 的内核版本。

常见的 Linux 发行版本包括RedHat、CentOS、Debian、Ubuntu等,如下图:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

分别如下:

- Debian

Debian运行起来极其稳定,这使得它非常适合用于服务器。

- redhat

这是第一款面向商业市场的Linux发行版。它有服务器版本,支持众多处理器架构。         全球最大的linux发行厂商,功能全面、稳定。

- ubuntu:

Ubuntu是Debian的一款衍生版,侧重于它在这个市场的应用,在服务器、云计算、甚至一些运行的移动设备上很常见。

- centos:

CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。这款重构版完全去掉了注册商标以及Binary程序包方面一个非常细微的变化。

- Fedora

- Fedora同是一款非常好的发行版,有庞大的用户论坛,软件库中还有为数不少的软件包。Fedora同样使用YUM来管理软件包。

2.安装Linux

(1)VMWare的安装

Linux操作系统软件,依赖于硬件设备,及需要安装到硬件上才能使用,在没有多余硬件设备的情况下,可以选择使用虚拟机来模拟硬件,然后再将Linux装到虚拟机上即可使用。

虚拟机(Virtual Machine)是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环 境中的完整计算机系统。

常用的虚拟机软件如下:

  • VMware Workstation

是VMware公司销售的商业软件产品之一。该工作站软件包含一个用于英特尔x86相容电脑的虚拟机套装,其允许用户同时创建和运行多个x86虚拟机。

  • VirtualBox

VirtualBox是一款开源虚拟机软件。VirtualBox是由德国Innotek公司开发,由Sun Microsystems公司出品的软件,使用Qt编写,在 Sun 被Oracle收购后正式更名成Oracle VM VirtualBox。

  • Virtua* PC

是Microsoft最新的虚拟化技术,主要适合做微软自己产品的服务。

本机电脑与虚拟机的关系如下:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

选择VMware Workstation 15或者16版本下载,并点击进行安装,选择安装目录为非系统盘,一般默认情况下点击下一步即可完成安装。

安装成功,并打开VMWare的界面如下:

(2)使用VMWare构建虚拟机器

现在通过虚拟机软件构建一台硬件设备,即模拟买一台电脑的过程:

(1)点击创建新的虚拟机,并选择自定义(高级),点击下一步

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(2)选择虚拟机硬件兼容性默认下一步,安装客户端操作系统选择稍后安装操作系统,下一步:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(3)选择客户端操作系统

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(4)命名虚拟机,并选择安装目录

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(5)处理器配置、此虚拟机的内存默认,网络类型选择使用网络地址转换

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

其中,网络类型是指虚拟机与电脑本地的网络交流方式。

(6)I/O控制器类型选择LSI Login(推荐),即默认方式,虚拟磁盘选择SCSI,即默认方式,磁盘选择创建新虚拟磁盘,磁盘大小使用默认值(20GB),并指定磁盘文件名为默认

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构
大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(7)点击完成,即可创建好虚拟机器:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构
大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

可以看到,已经有了创建好的机器。

(3)安装CentOS操作系统

安装CentOS操作系统需要使用CentOS系统对应版本的镜像文件。

过程如下:

(1)加载镜像文件

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(2)点击开启此虚拟机,并选择Install CentOS 7,待响应后再根据提示按Enter键:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(2)选择语言,下滑选择中文->简体中文(中国),再点击继续:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(3)等待几秒,选择日期和时间,选择亚洲上海:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(4)选择软件安装为最小安装,安装位置选择默认,即可开始安装:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(5)设置root账户密码:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

设置密码为自己方便使用的密码即可,后边以root身份登录系统都会用到。

(6)安装完成后重启,即可输入用户名root和密码进行使用:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(4)配置静态IP

为了让安装好的虚拟机CentOS系统与物理机Windows系统进行关联,则需要设置网络。

有3种模式可以实现虚拟机与物理机之间的通信:

  • 桥接模式

桥接模式下,可以实现虚拟机与虚拟机、虚拟机与物理机之间相互通信。

图示如下:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

以前用得较多,现在用得较少,存在一定的安全问题。

  • NAT模式

虚拟机与虚拟机、虚拟机与物理机之间相互通信,同时虚拟机可以连接外网(Internet)。

图示如下:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构
  • 仅主机模式

仅主机模式,可以实现虚拟机和物理主机之间相互通信,但虚拟机无法与外网(Internet)之间互相通信。

图示如下:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

这3种模式与之前在创建虚拟机器时选择网络适配器时额选项是一致的,我们选择NAT模式。

安装完VMWare之后,会给本地物理机虚拟2块网卡,如下:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

选择VMnet8设置静态IP:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

设置IP时,前面2位数字是192和168,第3位网段可以根据自己的需要在合理范围内设置,前3位(这里是192.168.31)是网段,最后1位是主机号、用于标识局域网中的每一台计算机,属于C类网络。

然后在VMWare中进行配置,在进行配置前需要关闭虚拟机,然后进行配置:

(1)打开配置页面

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(2)子网IP配置

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

需要注意:

这一步与之后步骤中的IP网段(前3位)都需要与前面设置的网段保持一致,后面才能正常连接。

(3)NAT设置,获取网关IP

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

获取网关IP,后面需要用到,这里为192.168.31.2。

(3)DHCP设置,获取起始IP和结束IP

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

获取到起始IP和结束IP,这里为192.168.31.128和192.168.31.254。

现在需要进入操作系统配置网卡信息,来使得虚拟机可以访问外部网络:

(1)进入操作系统

[root@localhost~]ping www.baidu.com
ping: www.baidu.com: Name or service not knowm

显然,此时虚拟机还不能访问外部网络。

(2)编辑配置文件

执行vi /etc/sysconfig/network-scripts/ifcfg-ens33,输入i进入编辑模式:

TYPE=EthernetPROXY_METHOD=noneBROLSER_ONLY=noBOOTPROTO=dhcpBOOTPROTO=staticDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_DDR_GEN_MODE=stable-priuacyNAME=ens33UUID=e715fecf-165e-43f8-b9d4-adf95b68631aDEVICE=ens33ONBOOT=noONBOOT=yes添加IPADDR=192.168.31.155NETMASK=255.255.255.0GATEWAY=192.168.31.2DNS1=8.8.8.8

编辑完成后先按ESC键退出、输入:x保存;

其中,IPADDR为位于起始IP和结束IP范围内的IP;

NETMASK为子网掩码;

GATEWAY为之前获取到的网关IP。

(3)重启网络服务

执行systemctl restart network重启网络服务,再执行ip addr,查看IP地址:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

可以看到,就是修改之后的地址;

再执行ping www.baidu.com,如下:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

此时就能ping通了,说明可以访问外部网络了。

(5)给虚拟机设置快照

快照就是还原点,其目的是在出现异常时,可以快速备份恢复到某个状态。

使用VMWare创建和使用快照的步骤如下:

(1)打开创建快照

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(2)创建快照

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(3)使用快照恢复状态

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

按照图中操作,再点击是即可使用快照、恢复到指定快照的状态。

(6)客户端连接工具的介绍和使用

客户端连接工具主要功能是向Linux系统远程发送命令,原理如下:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

包括以下分类:

  • Xshell

目前最好用的工具之一,用户很多。

  • SecureCRT

收费软件,用户也较多。

  • Putty

已经停止维护,很多功能不能支持,但因为习惯依旧很多人支持。

  • Final Shell

小众但好用的远程连接工具,包含了远程连接和FTP文件传输功能。

以XShell所在的工具包XManager为例进行说明:

(1)安装

与普通软件安装类似,可能需要输入密钥。

(2)创建连接

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

(3)输入认证信息

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

此时即创建成功连接。

(4)进行连接

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

即能连接成功:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

此时就可以输入各种命令进行操作了。

3.Linux结构

(1)Linux组成

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

其中:

  • COMPUTER RESOURCES

是计算机硬件资源。

  • KERNEL

内核,即操作系统的核心,是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。

作用包括:

- 管理内存

- 管理CPU

- 管理进程

- 管理文件系统

- 管理设备驱动及网络通信

特点如下:

- 支持多任务

- 支持共享库

- 支持需求挂载

  • Shell

是系统的用户界面,提供了用户和内核之间进行交互操作的一种接口。

它接收用户输入的命令并把它送入内核去执行,Shell传递给内核进行执行。

可以简单理解,Shell就是一个命令解释器。但它不仅是命令解释器,而且还是高级编程语言,即Shell编程。

  • FILE SYSTEMS

文件系统,文件系统是文件存放在磁盘等存储设备上的组织方法;

Linux支持多种文件系统,如EXT2、EXT3、FAT、FAT32、VFAT、NFS、SMB、ISO9660等。

  • PROGRAMS/UTILITIES/TOOLS

应用程序,标准的Linux操作系统都会有一套应用程序,例如X-Window、Open Office等。

  • USER APPLICATIONS

用户应用。

(2)Linux目录结构

进入CentOS系统后,查看你根目录的目录结构,如下:

[root@instance-6m0ylrf0 ~]cd/[root@instance-6m0ylrf0 /]tree -L1.
├── backup
├── bin -> usr/bin
├── boot
├── data
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── lost+found
├── media
├── mnt
├── opt
├── patch
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
├── var
└── www

如下图:

大数据开发基础入门与项目实战(二)JavaWeb数据可视化之3.Linux概述、安装和结构

其中,主要目录及含义如下:

  • /bin

核心的二进制文件目录,存放用户的基本命令,例如ls、cat等命令。

  • /boot 启动引导目录,系统引导文件、内核,存放了程序加载所需要的文件。
  • /dev

设备文件目录,存放了特殊的文件和备份文件,例如终端设备、USB设备文件。

  • /etc

配置目录,存放程序的配置文件,包含了启动和停止单个程序的脚本。

  • /home 普通用户的家目录,一个用户登进系统就会有一个对应的家目录。
  • /lib

系统库目录,存放了共享文件和内核模块的文件。

  • lib64

存放x86-64的辅助共享文件。

  • /media

移动设备挂载点。

  • /mnt

临时文件系统挂载点。

  • /opt

第三方应用程序的安装位置。

  • /proc

用于输出内核与进程信息相关的虚拟文件系统

  • /root

root(超级管理员)用户目录,当前系统管理员主目录。

  • /run 存放运行中进程的相关数据,例如进程的pid。
  • /sbin

存放二进制文件,即管理类的基本命令,由超级管理员运行。

  • /srv

系统运行的服务用到的数据。

  • /sys

用于输出当前系统上硬件设备相关信息的虚拟文件系统

  • /tmp

临时文件存放地。

  • /usr

共享的只读数据,包含了二进制、库文件、文档、应用程序及源代码。

  • /var

变化的数据文件,存放变量、函数等。

常用的目录包括/bin、/etc、/usr、/mnt、/root等。

总结

Linux是开发者必须掌握的重要知识体系之一,包括Linux的基本原理、操作和故障排除等,在部署项目和运维方面有着极为重要的作用。

0 留言

评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
验证码