Linux下载安装、常用命令、shell

本文详述了Linux操作系统,包括其开源、免费的特点,与Windows的主要区别,以及广泛的应用领域。介绍了Linux内核、CentOS发行版,并讲解了Linux环境搭建、常用命令、shell编程等内容,包括下载安装虚拟机、用户与组管理、文件系统操作、进程管理、网络与磁盘管理等,旨在帮助读者深入理解和掌握Linux操作。
摘要由CSDN通过智能技术生成

Linux

1. 概述

  • 操作系统
    • 操作系统(Operation System, OS),是管理计算机硬件软件资源的计算机程序,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。
  • Linux
    • Linux其实就是一款操作系统,和Windows,mac-os都是同一种类型的产品。就是操作系统软件。Linux主要应用服务器,作为服务器系统软件进行运行。
  • 服务器划分方式
    • 硬件的划分
      • 即使一台计算机,这台计算机的配置要比普通的pc(个人电脑)机要高的多
    • 软件的划分
      • 在硬件服务器去安装一个数据库,那么这个服务器我们常常将其称之为数据服务器
      • 在硬件服务器上去安装一个应用服务器(tomcat),那么这个服务器我们常常将其称之为应用服务器
      • 在硬件服务器上去安装一个负载均衡的软件(Nginx),那么这个服务器我们常常将其称之为负载均衡服务器
  • 不论我们在硬件服务器上需要安装哪些软件,在安装这些软件之前必须先要安装系统软件
  • 作为服务器系统软件,我们常常使用的就是Linux

2. 特点

  • 开源免费
  • 完全兼容POSIX1.0标准
  • 多用户、多任务
  • Linux占用的硬件资源比较少
  • 安全、稳定
  • 提倡使用命令和操作系统进行交互
  • 支持多种平台
  • Linux继承了Unix的特性,具有非常强大的网络功能,其支持所有的因特网协议,包括TCP/IPv4TCP/IPv6和链路层拓扑程序等,且可以利用Unix的网络特性开发出新的协议栈;
  • Linux系统工具链完整,简单操作就可以配置出合适的开发环境,可以简化开发过程,减少开发中仿真工具的障碍,使系统具有较强的移植性

3. Linux和Windows区别

  • 目前国内 Linux 更多的是应用于服务器上,而桌面操作系统更多使用的是 Windows。主要区别如下
比较 Windows Linux
界面 界面统一,外壳程序固定所有 Windows 程序菜单几乎一致,快捷键也几乎相同 图形界面风格依发布版不同而不同,可能互不兼容。GNU/Linux 的终端机是从 Unix传承下来,基本命令和操作方法也几乎一致。
驱动程序 驱动程序丰富,版本更新频繁。默认安装程序里面一般包含有该版本发布时流行的硬件驱动程序,之后所出的新硬件驱动依赖于硬件厂商提供。对于一些老硬件,如果没有了原配的驱动有时很难支持。另外,有时硬件厂商未提供所需版本的 Windows 下的驱动,也会比较头痛。 由志愿者开发,由 Linux 核心开发小组发布,很多硬件厂商基于版权考虑并未提供驱动程序,尽管多数无需手动安装,但是涉及安装则相对复杂,使得新用户面对驱动程序问题(是否存在和安装方法)会一筹莫展。但是在开源开发模式下,许多老硬件尽管在Windows下很难支持的也容易找到驱动。HP、Intel、AMD 等硬件厂商逐步不同程度支持开源驱动,问题正在得到缓解。
使用 使用比较简单,容易入门。图形化界面对没有计算机背景知识的用户使用十分有利。 图形界面使用简单,容易入门。文字界面,需要学习才能掌握。
学习 系统构造复杂、变化频繁,且知识、技能淘汰快,深入学习困难。 系统构造简单、稳定,且知识、技能传承性好,深入学习相对容易。
软件 每一种特定功能可能都需要商业软件的支持,需要购买相应的授权。 大部分软件都可以自由获取,同样功能的软件选择较少。
  • Windows与Linux在其他方面的不同
    • 开放性
      • 所谓的开放性就是Linux 操作系统是开放源码系统,可以对其程序进行编辑修改
      • 而微软的Windows 系统是受微软版权保护,就是只能微软内部进行开发及修改。
    • 文件格式不同
      • Windows 操作系统内核是NT,而Linux 是 shell;另外,windows 硬盘文件格式是fat32或NTFS,而Linux 需要的文件格式是ext2或ext3,该操作系统还多一个SWAP格式的交换分区
    • 免费与收费
      • 在中国,对个人用户Windows 和Linux 都是免费的,对公用户Windows 需要收费,Linux 是免费的。
    • 技术支持
      • Windows 较普及
      • Linux 需要深度的Linux 版块支持。
    • 安全性
      • Linux 相对Windows 来说安全性更高。
    • 开源
      • 开源就是指对外部开放软件源代码。Linux 开源,而Windows并不开源。
    • 使用习惯
      • Windows 放弃了dos的字符模式,主攻图形界面,让桌面系统更易用。
      • Linux 字符模式运行的更好,图形界面还只是附带品,可有可无。
    • 软件与支持
      • Windows 下可以运行绝大部分软件、玩99.999%的游戏、硬件厂商近乎100%的支持。
      • Linux 下可直接运行的软件数量和win下比起来就是1和99的区别,而且目前选择Linux 的人基本不会考虑玩游戏,同时Linux 正期待更多硬件厂商的支持

4. Linux 应用领域

  • 今天各种场合都有使用各种 Linux 发行版,从嵌入式设备到超级计算机,并且在服务器领域确定了地位。在企业级开发中,我们通常使用Linux作为我们的服务器。
  • 比如:服务器系统Web应用服务器、数据库服务器、接口服务器、DNS、FTP等等;
  • 嵌入式系统路由器、防火墙、手机、PDA、IP 分享器、交换器、家电用品的微电脑控制器等等,高性能运算、计算密集型应用Linux有强大的运算能力。

5. Linux内核

  • Linux的基本思想有两点
    • 一切都是文件
    • 每个文件都有确定的用途
  • 内核
    • 就是这个操作系统的核心代码,由于Linux是开源的,因此很多的厂商就可以基于这个内核进行二次开发,做出很多很多的操作系统,这些操作系统我们就常常将其称之为Linux的发行版本
  • 作为一个Linux操作系统是存在很多的发行版本,他们之间的命令都是大同小异的,我们在学习的时候只需要选择一款公司常用的发行版本即可
  • 这里我们选择的是RHEL系列的发行版本:Centos

6. Linux 之CentOS

  • CentOS,是基于 Red Hat Linux 提供的可自由使用源代码的企业级 Linux 发行版本;是一个稳定,可预测,可管理和可复制的免费企业级计算平台
  • 主要特点
    • 主流: 目前的Linux操作系统主要应用于生产环境,主流企业级Linux系统仍旧是RedHat或者CentOS
    • 免费: RedHat 和CentOS差别不大,CentOS是一个基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本
    • 更新方便:CentOS独有的yum命令支持在线升级,可以即时更新系统,不像RED HAT那样需要花钱购买支持服务!

7. 搭建环境

7.1 下载安装虚拟机
  • 我们要使用这个操作系统,首先就需要有硬件的环境。硬件环境就是个人电脑,但是个人电脑上已经安装了一个操作系统就是windows,怎么处理呢?
    • 把windows格式化了然后安装Linux
    • 在个人电脑上再次安装一个操作系统就是Linux(个人电脑上就存在两个操作系统,windows,Linux,但是使用的时候只能使用一个)
    • 我们可以通过一个软件去模拟硬件的环境,这个软件就是虚拟机。虚拟机的作用就是模拟硬件环境的
  • 常见的虚拟机产品
    • VMware
    • VM VirtualBox
  • VMware software下载与安装
    • https://www.vmware.com/网址下载安装
7.2 下载安装linux
  • 下载操作系统:
    • (操作系统我们常常将其称之为镜像)
    • 下载地址:https://www.centos.org/download/
    • 下载完毕以后就是:CentOS-7-x86_64-DVD-1810.iso
  • 安装linux
    • 在真实的开发环境中不会在虚拟机中去安装linux,都是使用一台独立的服务器去安装操作系统,学习在虚拟机中安装linux没有太大的意义,并且安装也比较耗时
7.3 操作linux
  • 存在两种方式
    • 直接在虚拟机中去操作linux操作系统(不建议: 在真实的开发环境中不会在虚拟机中去安装linux,都是使用一台独立的服务器去安装操作系统)
    • 通过一些远程连接工具连接到虚拟机的linux操作系统上,然后进行linux的使用(建议使用这种方式)
  • 常见的远程连接工具:CRT (SecureCRT)、PuTTY、xshell、MobaXterm
  • 这里使用CRT
    • 需要先现在注册软件
    • 注册之后才可以进入CRT
  • 通过远程链接工具CRT链接到linux的时候,需要保证windows操作系统可以和linux进行正常的通讯。要进行正常的通讯就需要做一些配置。
  • 在虚拟机中进行配置,具体的步骤如下所示:
    • 进行网络编辑
    • 更改子网的网段
    • 更改网关
    • 更改windows中vmnet8虚拟网卡的IP地址
    • 完成之后使用IP在CRT中创建连接
  • 注意:轻易不要卸载虚拟机软件,可能会导致网络设置中找不到虚拟网卡

8. Linux操作系统命令

8.1 命令介绍
  • 命令我们可以理解成在Windows中我们常常为了查看ip输入的ipconfig,在Linux中也有很多的命令,比如操作目录、文件、网络、磁盘等等命令
  • Linux刚面世时并没有图形界面, 所有的操作全靠命令完成, 如 磁盘操作、文件存取、目录操作、进程管理、文件权限 设定等
  • 在职场中,大量的 服务器维护工作 都是在 远程 通过SSH客户端 来完成的, 并没有图形界面, 所有的维护工作都需要通过命令来完成
  • 作为后端程序员或者运维, 必须要或多或少的掌握一些Linux常用的终端命令
  • Linux发行版本的命令大概有200多个, 但是常用的命令只有几十个而已
8.2 Linux目录结构
  • 在Linux中是不存在盘符的概念,这个windows操作系统就不一样的。Linux操作系统提供的是一个树形的目录结构,不同的目录会存放不同的文件内容。
  • 结构图
  • 详解
目录 详解
/bin Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。这些命令可以被任意的用户进行访问
/etc Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。包含后期我们自己所安装的一些软件所需要的配置文件
/home 用户(普通用户)的主目录,在Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的
/root 该目录为系统管理员,也称作超级权限者的用户主目录
/sbin s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。这些命令只能被超级管理员进行使用
/var variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件
8.3 Linux 用户管理
  • 相关命令
命令 作用
useradd 选项 用户名 添加用户,后续可以使用这个用户名登录系统
passwd 用户名 设置口令,即设置密码,普通用户只能修改自己的,管理员可以修改所有用户
su 用户名 切换账号
usermad 选项 用户名 修改用户,就是更改用户的有关属性
userdel 选项 用户名 删除一个已有的用户
命令 --help 显示此命令的帮助信息,相关选项
8.4 Linux用户组管理
  • 概述
    • 为了方便用户管理, 提出了 组 的概念
    • 新增一个账户,它默认属于自己(账户)的组
    • 比如新建账户【张三】,那么它默认对应的组就是张三
    • 一个用户可以有一个或者多个组
    • 例如:我们把张三、李四、王五统一放到【开发组】,在对文件授权的时候,我们只对【开发组】进行授权由此,这样的话【张三、李四、王五】都有相等的权利操作了
  • 相关命令
命令 作用
groupadd 选项 用户组 添加用户组
groupadd 选项 ID 用户组 创建新的用户组,并添加组ID
groupmod 选项 用户组 修改用户组
groups 用户名 查询一个用户属于哪个用户组
groupdel 用户组 删除一个已有的用户组
gpasswd 选项 组名 把多个用户按照业务需求归并到统一的一个组中
grep ‘用户组’ /etc/group 查看用户组下所有用户
8.5 常用系统管理
  • 相关命令
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值