Linux讲解使用前准备

Stella981
• 阅读 610

一、Linux和Windows区别

比较

Windows

Linux

费用

收费且很贵

Linux免费或少许费用

软件与支持

数量和质量的优势,不过大部分为收费软件;由微软官方提供支持和服务

开源自由软件,用户可以修改定制和再发布,由于基本免费没有资金支持,部分软件质量和体验欠缺;有全球所有的Linux开发者和自由软件社区提供支持

安全性

三天两头打补丁安装系统安全性更新,还是会中病毒木马

要说Linux没有安全问题,那当然是不可能的,这一点仁者见仁智者见智,相对来说肯定比Windows平台更加安全

使用习惯

普通用户基本都是纯图形界面下操作使用,依靠鼠标和键盘完成一切操作,用户上手容易入门简单;

兼具图形界面操作和完全的命令行操作,可以用键盘完成一切操作,新手入门较困难,需要一些学习和指导,一旦熟练以后效率极高

可定制型

封闭的,系统的可定制性很差

开源,可定制性很强

应用场景

桌面操作系统主要使用Windows

支撑百度、谷歌、淘宝等应用软件和服务,是后台成千上万的Linux服务器主机,世界上大部分软件和服务都运行Linux上的

二、Linux版本

Linux的内核版

  • 内核(kernel) 是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,它提供了一个在裸设备与应用程序间的抽象层
  • Linux 内核版本又分为 稳定版 和 开发版,两种版本是相互关联,相互循环
  • 稳定版:具有工业级强度,可以广泛地应用和部署。新的稳定版相对于较旧的只是修正一些 bug 或加入一些新的驱动程序
  • 开发版:由于要试验各种解决方案,所以变化很快
  • 内核源码网址:http://www.kernel.org
  • 所有来自全世界的对 Linux 源码的修改最终都会汇总到这个网站,由 Linus 领导的开源社区对其进行甄别和修改最终决定是否进入到 Linux 主线内核源码中

Linux发行版- Linux十大发行版

Linux 发行版(也被叫做 GNU/Linux 发行版)通常包含了包括桌面环境、办公套件、媒体播放器、数据库等应用软件 , 常见的发行版本如下:

  • Ubuntu

  • Redhat

  • Fedora

  • openSUSE

  • Linux Mint

  • Debian

  • Manjaro

  • Mageia

  • CentOS

  • Arch

三、虚拟机概述:

虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在实体计算机中能够完成的工作在虚拟机中都能够实现。在计算机中创建虚拟机时,需要将实体机的部分硬盘和内存容量作为虚拟机的硬盘和内存容量。每个虚拟机都有独立的CMOS、硬盘和操作系统,可以像使用实体机一样对虚拟机进行操作。

linux虚拟机:

一种安装在Windows上的虚拟linux操作环境,就被称为linux虚拟机。它实际上只是个文件而已,是虚拟的linux环境,而非真正意义上的操作系统。但是它们的实际效果是一样的。所以安装在虚拟机上使用好。windowsXP虚拟机vmware下安装Linux 我们在实际的Windows XP中(宿主计算机)再虚拟出一台电脑(虚拟机),并在上面安装Linux系统,这样,你就可以放心大胆地进行各种Linux练习而无须担心操作不当导致宿主机系统崩溃了。并且你可以举一反三,将一台电脑变成三台、四台,再分别安装上其他的系统。(运行虚拟机软件的操作系统叫Host OS,在虚拟机里运行的操作系统叫Guest OS)。

Java虚拟机:

Java虚拟机(JVM)是Java Virtual Machine的缩写,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能模拟来实现的。Java虚拟机有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。

四、VMware安装与卸载

常见的虚拟机软件有 VMware Workstation(简称 VMware)、VirtualBox、Microsoft Virtual PC 等,其中 VMware 市场占有率最高
VMware 可以使你在一台计算机上同时运行多个操作系统,例如同时运行 Windows、Linux 和 Mac OS。在计算机上直接安装多个操作系统,同一个时刻只能运行一个操作系统,重启才可以切换;而 Vmware 可以同时运行多个操作系统,可以像 Windows 应用程序一样来回切换。站在使用者的角度讲,虚拟机系统和真实安装的系统是一样的,甚至可以在一台计算机上将几个虚拟机系统连接为一个局域网或连接到互联网。
在虚拟机系统中,每一台虚拟产生的计算机都被称为“虚拟机”,而用来存储所有虚拟机的计算机则被称为“宿主机”。例如,你的 Windows 系统就是宿主机,而 VMware 安装的 Linux 则为虚拟机。
安装:直接运行安装程序安装即可,安装完成后, Windows控制面板,点击网络和Internet,点击网络和共享中心,点击更改适配器设置,会出现虚拟网卡:VMware Network Adapter VMnet8
卸载:直接卸载软件卸不干净,需要检索工具辅助。

五、Linux目录结构

目录结构

说明

/bin

是Binary的缩写,这个目录存放着最经常使用的命令

sbin

s就是Super User的意思,这里存放的系统管理员使用的系统管理程序

/home

存放普通用户的主目录,在Linux中每个用户都有自己的一个目录,一般该目录是以用户的账户命名

/root

该目录为系统管理员,也称作超级权限者的用户主目录

/lib

系统开机所需要最基本的动态连接共享库,其作用类似于Windows里面的DLL文件。几乎所有的应用程序都需要用到这些共享库

/etc

所有的系统管理所需要的配置文件和子目录

/usr

这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于Windows下的program files目录

/boot

这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件,自己的安装别放这里

/proc

这个目录是一个虚拟目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息

/srv

Servic的缩写,该目录存放一些服务启动之后需要提取的数据

/sys

这是Linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统sysfs

/tmp

这个目录是用来存放一些临时文件的

/dev

类似于Windows的设备管理器,把所有的硬件用文件的形式存储

/media

Linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux会把识别的设备挂载到这个目录下面

/mnt

系统提供该目录是为了让用户临时挂载别的文件系统,我们可以将外部存储挂载在/mnt/上,然后进入该目录就可以查看里的内容了

/opt

这是给主机额外安装软件所摆放的目录。比如你安装一个MySQL数据则就可以放到这个目录下。默认是空的。

/var

这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括日志文件

/selinux

Selinux是一种安全自系统,它能控制程序只访问特定文件

/lost+found

这个目录一般情况下空的,当系统非法关机后,这里就存放了一些文件

六、修改静态IP及关闭防火墙

6.1 查看网络IP和网关
  
  1.查看虚拟网络编辑器,如下图所示

Linux讲解使用前准备

    2.修改ip地址,如下图所示

Linux讲解使用前准备

    3.查看网关,如下图所示

Linux讲解使用前准备

    4.    查看windows环境的中VMnet8网络配置,如下图所示

Linux讲解使用前准备

6.2 配置网络ip地址
  6.2.1 ifconfig 配置网络接口

 ifconfig :network interfaces configuring网络接口配置


    查看当前网络ip


 [root@hadoop100 桌面]# ifconfig


    6.2.2 ping 测试主机之间网络连通性

案例实操

 ping 目的主机      (功能描述:测试当前服务器是否可以连接目的主机)
例如:测试当前服务器是否可以连接百度
 [root@hadoop100 桌面]# ping www.baidu.com


    6.2.3 修改IP地址


        1. 修改IP地址,如下图所示


[root@hadoop100 桌面]#vim /etc/sysconfig/network-scripts/ifcfg-eth0

Linux讲解使用前准备

有值的按照下面的值修改,没有该项的要增加。

      DEVICE=eth0                #接口名(设备,网卡)

      HWADDR=00:0C:2x:6x:0x:xx   #MAC地址

      TYPE=Ethernet               #网络类型(通常是Ethemet)

      UUID=926a57ba-92c6-4231-bacb-f27e5e6a9f44  #随机id

      #系统启动的时候网络接口是否有效(yes/no)
      ONBOOT=yes                
      # IP的配置方法[none|static|bootp|dhcp](引导时不使用协议|静态分配IP|BOOTP协议|DHCP协议)
      BOOTPROTO=static     
      #IP地址
      IPADDR=192.168.1.100  
      #网关 
      GATEWAY=192.168.1.2     
      #域名解析器
      DNS1=114.114.114.114
      DNS2=8.8.8.8

修改后如下图所示:
Linux讲解使用前准备

:wq 保存退出

        2. 执行service network restart,如下图所示

Linux讲解使用前准备

        3. 如果报错,reboot,重启虚拟机

6.3 配置主机名
    6.3.1 hostname 显示和设置系统的主机名称

查看当前服务器主机名称 [root@hadoop100 桌面]# hostname


        6.3.2 修改主机名称


    1. 修改linux的主机映射文件(hosts文件)

        (1)进入Linux系统查看本机的主机名。通过hostname命令查看

            [root@hadoop100 桌面]# hostname

            hadoop100

        (2)如果感觉此主机名不合适,我们可以进行修改。通过编辑/etc/sysconfig/network文件

            [root@hadoop100 桌面]# vi /etc/sysconfig/network

            文件中内容

              NETWORKING=yes

              NETWORKING_IPV6=no

              HOSTNAME= hadoop100

              注意:主机名称不要有“_”下划线

       (3)打开此文件后,可以看到主机名。修改此主机名为我们想要修改的主机名hadoop100。

       (4)保存退出,重启。

       (5)配置主机和IP的映射关系,打开/etc/hosts

          [root@hadoop100 桌面]# ·

            添加如下内容

              192.168.1.100 hadoop100

              192.168.1.101 hadoop101

              192.168.1.102 hadoop102

              192.168.1.103 hadoop103

              192.168.1.104 hadoop104

      (6)并重启设备,重启后,查看主机名,已经修改成功

    3. 修改window10的主机映射文件(hosts文件)

      (1)打开C:\Windows\System32\drivers\etc

      (2)添加如下内容

          192.168.1.100 hadoop100

               192.168.1.101 hadoop101

6.4 关闭防火墙

 6.4.1 service 后台服务管理
      1.基本语法
          service  服务名 start                 (功能描述:开启服务)
            service  服务名 stop                 (功能描述:关闭服务)
            service  服务名 restart              (功能描述:重新启动服务)
            service  服务名 status               (功能描述:查看服务状态)

      2. 经验技巧

           查看服务的方法:/etc/init.d/服务名
                [root@hadoop100 init.d]# pwd
                    /etc/init.d
            [root@hadoop100 init.d]# ls -al
      3. 案例实操

      (1)查看网络服务的状态
          [root@hadoop100 桌面]#service network status
      (2)停止网络服务
          [root@hadoop100 桌面]#service network stop
      (3)启动网络服务
          [root@hadoop100 桌面]#service network start
      (4)重启网络服务
          [root@hadoop100 桌面]#service network restart
      (5)查看系统中所有的后台服务
          [root@hadoop100 桌面]#service --status-all

  6.4.2 chkconfig 设置后台服务的自启配置
    1. 基本语法

      chkconfig                    (功能描述:查看所有服务器自启配置)

      chkconfig 服务名 off   (功能描述:关掉指定服务的自动启动)

      chkconfig 服务名 on   (功能描述:开启指定服务的自动启动)

      chkconfig 服务名 --list (功能描述:查看服务开机启动状态)

    2. 案例实操

      (1)关闭iptables服务的自动启动

          [root@hadoop100 桌面]#chkconfig iptables off

      (2)开启iptables服务的自动启动

          [root@hadoop100 桌面]#chkconfig iptables on

6.4.3 进程运行级别
    Linux进程运行级别,如下图所示

Linux讲解使用前准备

    6.4.4 关闭防火墙


1. 临时关闭防火墙

      (1)查看防火墙状态

        [root@hadoop100桌面]# service iptables status

      (2)临时关闭防火墙

        [root@hadoop100桌面]# service iptables stop

    2.开机启动时关闭防火墙

      (1)查看防火墙开机启动状态

          [root@hadoop100桌面]#chkconfig iptables --list 

      (2)设置开机时关闭防火墙

          [root@hadoop100桌面]#chkconfig iptables off
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Easter79 Easter79
3年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
3年前
Java日期时间API系列36
  十二时辰,古代劳动人民把一昼夜划分成十二个时段,每一个时段叫一个时辰。二十四小时和十二时辰对照表:时辰时间24时制子时深夜11:00凌晨01:0023:0001:00丑时上午01:00上午03:0001:0003:00寅时上午03:00上午0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这