Linux的介绍及虚拟机centOS系统的下载与应用

news2024/11/28 6:01:12

1、什么是Linux

Linux 是一种类 Unix 操作系统,它的内核(Kernel)由 Linus Torvalds 于 1991 年首次发布。作为一个开源、免费的操作系统,Linux 被广泛用于服务器、桌面计算机、嵌入式设备、移动设备等各种场景。

1、操作系统

操作系统是一组主管并控制计算机软硬件、资源以及服务的应用程序。简单来说,它还是一个软件。

2、常见的操作系统

1、PC

windows、MacOS、Linux、Unix

Unix创始人:汤普森、丹尼斯 里奇

2、移动端

Android、IOS、塞班、鸿蒙

3、Linux的前世今生

Linux是在Unix后出现的,他吸收了很多Unix的优秀理念和思想,又有自己的特点。

GNU组织,最初的想法就是要建立一个自由的Unix操作系统。

1990年,林纳斯·本纳第克特·托瓦兹开发了Linux第一个版本。

Linux是由Unix转变而来,Unix是收费的操作系统,Linux是免费的,他的理念是Free(自由)。Linux的源代码是开源的。

常见的LInux版本:

1、红帽企业版Linux Red Hat Enterprise Linux, RHEL )

在这里插入图片描述
2、Ubuntu
在这里插入图片描述
3、 社区企业操作系统Community Enterprise Operating System, CentOS
在这里插入图片描述
由于我第一个接触学习的是centOS,所以本文将详细介绍centOS。

2、Linux应用在哪里

Linux大多情况应用在服务器,这也是Java方向程序员为什么必须要学习Linux的一个原因。

在少数情况也有在Linux上开发软件,或者应用到小型机、嵌入式、树莓派等设备上。

3、为什么要用Linux

Linux的优势:

1、跨平台的硬件支持

Linux的内核大部分是C开发的,而且遵循国际标准,所以对硬件的支持很好,跨平台的优势得以体现。

2、丰富的软件支持

Linux有丰富的软件库,包括办公、娱乐、开发工具等软件。尤其对程序员非常友好,编译工具基本都有。

3、支持多用户多任务

Linux支持多个用户,多个用户组操作,可以分配不同的权限;Linux对每个进程都是平等处理的,可以同时执行多个程序,而且之间是独立的。

4、更安全更可靠

Linux是开源的,有更多的人去维护它,而且它的机制也使得病毒很难侵入,自带的防火墙、安全认证等工具都很强大。

5、良好的稳定性

Linux非常稳定,可以常年开机不关,基本不会出现宕机事件,应用程序运行的也很稳定,不会出现莫名其妙的挂掉。

6、免费

Linux是开源免费的,商用不需要支付费用。

4、什么情况下用Linux

1、嵌入式开发

2、做为服务器

3、开发Linux应用时

4、就是喜欢的人

5、Linux安装

1、VirtualBox安装

运行安装程序,一直下一步即可。如果不想安装到C盘,可以自己选盘符。

注意:软件开发安装所有程序时,不要安装到有中文或特殊符号的路径下。

2、安装操作系统

点击新建,弹出如下对话框
在这里插入图片描述
名称:自己定义,不要用中文或特殊符号。

文件夹:建议不放在c盘,占用空间会比较大,可以自定义一个文件夹。

类型:选择Linux

版本:Other Linux 64-bit

下一步
在这里插入图片描述
内存分配,建议2048M。

下一步

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
创建虚拟硬盘,在这里不创建,后续还是要创建。

创建

在这里插入图片描述
重点核对内存和硬盘的大小。

在这里插入图片描述
注意网络设置,桥接网卡,选择正在用的网卡,可以在网络中心找到你的网卡名字。

选择操作系统的镜像文件

在这里插入图片描述
在这里插入图片描述
点击启动
在这里插入图片描述
启动成功后,按光标键,选第一个,回车

在这里插入图片描述

然后,就是等,看着输出一些日志。一直到弹出如下:

选择英文,不要选中文,后续兼容不好。

在这里插入图片描述
选择时间
在这里插入图片描述
在这里插入图片描述

选择安装到那个硬盘

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
开始安装

在这里插入图片描述
设置密码,我这里密码统一设置为:123456

在这里插入图片描述
在这里插入图片描述
安装成功后需要重启

在这里插入图片描述

可以登录,代表安装成功,用户名是root,密码统一的123456,注意,启动虚拟机后小键盘会被关闭,输入密码时光标不会移动,输入即可,回车登录。

在这里插入图片描述
输入命令:ip addr查看虚拟机ip地址

在这里插入图片描述

3、常见问题

1、设备虚拟化

在这里插入图片描述
一定要是已启用才可以按照虚拟机。

修改方法:根据自己电脑不同的型号,去设置BIOS。

2、连接不上网络

检查网络设置是否正确,选择的是否是桥接网卡,且选择的网卡对不对

3、终端连接不上

先检查ip是否正确

再检查宿主机和虚拟机是否在同一个网段下,ip地址前三个相同,代表在同一个网段下

4、报错

在这里插入图片描述

出现这种问题可以百度错误,百度关键字:virtualbox 80004005

4、常用工具

1、putty

2、Xshell

3、secureCRT

4、ssh-secure-shell

在这里插入图片描述
由于这个比较简单所以本文用的SSH,不过如果想要连接远程的服务器(比如阿里云),最好不要用这个,可以使用FinalShell或者Xshell 7

SSH使用方法:

在这里插入图片描述
第一个框是虚拟机的IP地址

第二个框是用户名,我们统一都是root

第三个框是端口号,22是用于远程登录的端口

第四个框是权限方式,用默认的就可以,后面用密码登录

在这里插入图片描述
第一次登录时会出现,以后都没有了

在这里插入图片描述

5、常用命令

命令是人向计算机发出指令,让计算机做某些事情。

命令的格式:

命令 [选项] [参数]

选项和参数是非必填的,比如说pwd,pwd是查看当前所在路径的命令,不需要有选项和参数

选项:会影响到命令的一些操作,一般以-开头

参数:命令作用的对象

1、ls

作用:查看当前目录下有哪些文件

语法:ls 或者 ls 目录,目录是参数,如果有,则显示参数对应目录下的文件,如果没有,显示当前目录下的文件

常用选项:

1、-l

列出文件的详细信息,如创建者、文件权限、文件大小、文件类型等

在这里插入图片描述
在这里插入图片描述
文件类型:

d:目录文件

-: 普通文件

l: 链接文件

p:管道文件

c: 字符设备文件

b: 块设备文件

颜色代表文件类型例子
蓝色目录文件/usr/local
黑色普通文件/anaconda-ks.cfg
浅蓝色链接文件/etc/localtime
红色压缩包jdk-8u231-linux-x64.tar.gz
绿色可执行文件/etc/init.d/network
黑底黄字设备文件/dev/vcs

ll命令等价于ls -l

2、-a

列出目录下所有文件,包含隐藏文件
在这里插入图片描述
这两个红框内的文件就是隐藏文件,一个点代表当前目录,两个点代表上一层目录

3、-d

只看目录文件,不看目录内容

在这里插入图片描述
4、-S

文件大小倒序排序,注意大小写,小写的没有效果,如果想正序执行Sr

在这里插入图片描述
5、-t

文件修改时间倒序,-tr为正序,注意大小写

在这里插入图片描述

2、别名

把一个比较长的命令简短成一个简单的,一般应用于某个操作经常触发,不想输入太多的字符,可以定义一个别名。比如说:ll是`ls -l --color=auto’的别名,方便我们操作。

在这里插入图片描述
1、创建别名

alias vietc1=‘vi /usr/local/etc/1.txt’

执行vietc1 等同于执行 vi /usr/local/etc/1.txt

2、删除别名

unalias vietc1

在这里插入图片描述

3、cd

进入某个目录

语法: cd [参数],参数就是要进入的目录

在这里插入图片描述
cd:cd没有参数会进入用户目录文件,例如:root用户执行,会进入/root目录

cd .:进入当前目录,相当于没有操作

cd …:进入上一级目录

cd - :返回切换前的目录

pwd:显示当前目录

4、history

显示历史执行过的命令

要善于光标键和tab键,光标键可以快速定位之前执行过的命令,tab键可以帮助补全文件名

5、快捷键

Ctrl+C:终止当前程序

Ctrl+L:清屏,相当于clear

Ctrl+D:退出

6、文件操作

1、新建目录

mkdir

2、新建文件

touch

3、拷贝文件

cp

cp [选项] [参数1] [参数2] ,参数1代表目标文件,参数2代表复制到哪里

-r选项代表递归

4、移动文件

mv [选项] [参数1] [参数2] ,参数1代表目标文件,参数2代表移动到哪里

-i选项是否覆盖文件

-f选项不做提示

5、删除文件

rm [选项] [参数] ,参数是要删除的文件

-r选项代表递归

-f选项不做提示

6、解压文件

tar [选项] [参数] ,参数是要解压的文件

tar -zxvf jdk-8u231-linux-x64.tar.gz

-z:通过gzip操作文件

-x:解压文件

-v:可视化,输出解压文件内容

-f:要操作的文件名

6、常用软件

1、vim

vim是一款功能强大,好用的编辑器,尤其适合程序员。

1、安装

yum -y install vim*

yum 安装命令 -y是不需要用户手动输入是否确认安装 install代表安装,vim是要安装的软件

安装完成后执行vim

在这里插入图片描述
(关于VIM我已经有别的文章详细讲解了,欢迎访问:)

链接: VIM的下载与使用教程

2、vim三种模式

  • 普通模式,刚执行完vim看见的文件内容,此时不能对文件操作
  • 编辑模式,在普通模式下输入i、a、A、r、R、o、O都会进入编辑模式
  • 命令行模式,在编辑模式下按esc键,可以执行对文件的操作命令

3、编辑模式说明

输入i可以编辑,输入r替换当前光标位置字符,输入R进入replace模式,常用i,其他容易出错。

4、命令行模式说明

:q! 强制退出,不保存

:w 保存,不退出

:wq 保存并退出

2、JDK

1、上传tar文件

在这里插入图片描述
2、解压文件

tar -zxvf jdk-8u231-linux-x64.tar.gz

3、配置环境变量

打开环境变量文件:vim /etc/profile

在这里插入图片描述
找到一个合适的位置,某个export后,添加如下配置

#set java environment
JAVA_HOME=/usr/local/etc/jdk/jdk1.8.0_231
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin;$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

在这里插入图片描述

4、重新加载环境变量

source /etc/profile

5、验证是否配置成功

java -version
在这里插入图片描述

3、Tomcat

1、上传tar文件

同jdk

2、解压tar文件

同jdk

3、启动Tomcat

进入到Tomcat的bin目录,执行startup.sh文件
在这里插入图片描述
在这里插入图片描述
4、关闭防火墙

查看防火墙状态:systemctl status firewalld.service

关闭防火墙:systemctl stopfirewalld.service

禁止防火墙启动:systemctl disable firewalld.service

在这里插入图片描述
5、验证是否成功

宿主机浏览器访问虚拟机ip+8080端口
在这里插入图片描述
7、权限

在这里插入图片描述
权限分读、写和执行,分别对应了rwx,-代表没有这个权限

权限只对普通用户,超级用户有全部权限。

1、chmod命令

可以用chmod命令修改权限

语法1:chmod 所有权 权限 目标文件

chmod u/g/o +/- r/w/x 文件名

所有权:u代表文件拥有者,g是一个用户组,o是其他用户

权限:+代表增加权限,-是减少权限

语法2:chmod XXX 文件名

XXX是数字,代表的是三个权限(u/g/o+r/w/x),数字是rwx对应的二进制值

最简单粗暴的命令是chmod 777 文件名,在工作里要慎用。

8、Shell

shell是一种命令解释器,可以理解成一种语言。负责用户和操作系统内核之间对话,我们可以输入命令,让程序帮我们反应成计算机可以识别的命令。

比如说选择逻辑,循环逻辑。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2248862.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ORACLE数据库直接取出数据库字段JSON串中的 VALUE内容

字段内容类似这种: 如果是12c以上版本可以使用 SELECT JSON_VALUE(MEMO, $.supplyExercisePrice) AS supplyExercisePrice FROM your_table;如果是11g版本可以使用 SELECT REGEXP_SUBSTR(MEMO, "supplyExercisePrice":"([^"])", 1, 1, …

业务分组:流量隔离

RPC中常用的保护手段“熔断限流”,熔断是调用方为了避免在调用过程中,服务提供方出现问题的时候,自身资源被耗尽的一种保护行为;而限流则是服务提供方为防止自己被突发流量打垮的一种保护行为。虽然这两种手段作用的对象不同&…

数据结构——排序算法第二幕(交换排序:冒泡排序、快速排序(三种版本) 归并排序:归并排序(分治))超详细!!!!

文章目录 前言一、交换排序1.1 冒泡排序1.2 快速排序1.2.1 hoare版本 快排1.2.2 挖坑法 快排1.2.3 lomuto前后指针 快排 二、归并排序总结 前言 继上篇学习了排序的前面两个部分:直接插入排序和选择排序 今天我们来学习排序中常用的交换排序以及非常稳定的归并排序 快排可是有多…

【JavaEE初阶 — 网络编程】Socket 套接字 & UDP数据报套接字编程

1. Socket套接字 1.1 概念 Socket 套接字,是由系统提供用于网络通信的技术,是基于TCP / IP协议的网络通信的基本操作单元。基于 Socket 套接字的网络程序开发就是网络编程。 1.2 分类 Socket套接字主要针对传输层协议划分为如下三类&#x…

熔断限流:业务实现自我保护

服务端-限流 服务端主要是通过限流来进行自我保护,实现限流时要考虑到应用和IP级别,方便在服务治理的时候,对部分访问量特别大的应用进行合理的限流;服务端的限流阈值配置都是作用于单机的,而在有些场景下&#xff0c…

linux系统误操作,设置nofile值超过限制,导致无法登录,permission denied

1.问题描述(虚拟机复现) 在k8s集群运行某些服务时,对文件描述符要求比较大,在提高这个值前未查询这个值的限制,最后设置了一个超过限制的值导致登录被拒绝 [roottest4 ~]# tail -3 /etc/security/limits.conf * sof…

从零开始配置Qt+VsCode环境

从零开始配置QtVsCode环境 文章目录 从零开始配置QtVsCode环境写在前面扩展安装及配置Qt Configure配置 VsCode创建Qt工程VsCodeQMakeMinGwVsCodeQMakeMsvcVsCodeCMakeMinGwVsCodeCMakeMsvcQtCreatorQMakeMinGw->VsCodeQtCreatorQMakeMsvc->VsCodeQtCreatorCMakeMinGw-&g…

如何借助AI生成PPT,让创作轻松又高效

PPT是现代职场中不可或缺的表达工具,但同时也可能是令人抓狂的时间杀手。几页幻灯片的制作,常常需要花费数小时调整字体、配色与排版。AI的飞速发展为我们带来了革新——AI生成PPT的技术不仅让制作流程大大简化,还重新定义了效率与创意的关系…

【Linux】Make/Makefile

这个3/4行的语法和1/2行是一样的。也是依赖关系和依赖方法。 make命令扫描makefile文件时,从上向下扫描,默认形成一个目标文件。 指定make clean的时候才回去执行对应的清除。 为什么要给我们的clean.PHONY:clean声明它是伪目标呢? PHONY类…

HarmonyOS:@Provide装饰器和@Consume装饰器:与后代组件双向同步

一、前言 Provide和Consume,应用于与后代组件的双向数据同步,应用于状态数据在多个层级之间传递的场景。不同于上文提到的父子组件之间通过命名参数机制传递,Provide和Consume摆脱参数传递机制的束缚,实现跨层级传递。 其中Provi…

如何做好一份技术文档?

打造出色技术文档的艺术 在当今技术驱动的世界中,技术文档扮演着至关重要的角色。它不仅是工程师和开发人员之间交流的桥梁,更是产品和技术成功的隐形推手。一份优秀的技术文档宛如一张精准的航海图,能够引导读者穿越技术的迷雾,…

泰山众筹怎样吸引用户参与

泰山众筹项目要吸引用户参与,需要采取一系列策略来增强项目的吸引力、提高用户信任度,并激发用户的参与热情。以下是一些建议: 1. 明确项目价值与愿景 展示独特性:明确泰山众筹项目的独特卖点,如创新性、社会影响力或…

抓包之验证content-length响应头的作用

写在前面 根据http协议的规范,content-length响应头用来标记固定长度响应信息长度,http客户端,比如浏览器也会解析这个字段来进行数据的解析。 1:测试 1.1:content-length等于实际内容匹配时 使用python脚本testco…

T3 TensorFlow入门实战——天气识别

🍨 本文為🔗365天深度學習訓練營 中的學習紀錄博客🍖 原作者:K同学啊 | 接輔導、項目定制 一、前期准备 1. 导入数据 # Import the required libraries import numpy as np import os,PIL,pathlib import matplotlib.pyplot as …

✨系统设计时应时刻考虑设计模式基础原则

目录 💫单一职责原则 (Single Responsibility Principle, SRP)💫开放-封闭原则 (Open-Closed Principle, OCP)💫依赖倒转原则 (Dependency Inversion Principle, DIP)💫里氏代换原则 (Liskov Substitution Principle, LSP)&#x…

fatal error in include chain (rtthread.h):rtconfig.h file not found

项目搜索这个文件 rtconfig 找到后将其复制粘贴到 你的目录\Keil\ARM\ARMCC\include 应该还有cJSON,rtthread.h和 等也复制粘贴下

【回文数组——另类递推】

题目 代码 #include <bits/stdc.h> using namespace std; using ll long long; const int N 1e510; int a[N], b[N]; int main() {int n;cin >> n;for(int i 1; i < n; i)cin >> a[i];for(int i 1; i < n / 2; i)b[i] a[i] - a[n1-i];ll ans 0;…

SQL基础入门—— 简单查询与条件筛选

在SQL中&#xff0c;查询是从数据库中获取数据的核心操作&#xff0c;而条件筛选是查询中不可或缺的一部分。通过使用条件筛选&#xff0c;我们可以精准地从大量数据中提取我们需要的信息。本节将详细讲解如何使用SQL进行简单查询与条件筛选&#xff0c;包含常见的条件运算符和…

反向代理模块

1 概念 1.1 反向代理概念 反向代理是指以代理服务器来接收客户端的请求&#xff0c;然后将请求转发给内部网络上的服务器&#xff0c;将从服务器上得到的结果返回给客户端&#xff0c;此时代理服务器对外表现为一个反向代理服务器。 对于客户端来说&#xff0c;反向代理就相当于…

英语知识网站:Spring Boot技术构建

6系统测试 6.1概念和意义 测试的定义&#xff1a;程序测试是为了发现错误而执行程序的过程。测试(Testing)的任务与目的可以描述为&#xff1a; 目的&#xff1a;发现程序的错误&#xff1b; 任务&#xff1a;通过在计算机上执行程序&#xff0c;暴露程序中潜在的错误。 另一个…