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

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

Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐