文章目录
一、简介
1.1 UNIX
UNIX简介:UNIX系统是一个分时系统。最早的UNIX系统于1970年问世。此前,只有面向批处理作业的操作系统,这样的系统对于需要立即得到响应的用户来说是太慢了。在60年代末,Kenneth Thompson和Dennis Ritchie都曾参加过交互方式分时系统Multics的设计,而开发该系统所使用的工具是CTSS。这两个系统在操作系统的发展过程中都产生过重大影响。在此基础上,在对当时现有的技术进行精选提炼和发展的过程中,K.Thompson于1969年在小型计算机上开发UNIX系统,后于1970年投入运行。
1.2 Linux
Linux简介:全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。
1.3 特点
- 免费
- 开源
- 多用户
- 多任务
1.4 版本分类
- 内核版
- 由Linus Torvalds 及其团队开发、维护
- 免费、开源
- 负责控制硬件
- 发行版
- 基于Linux内核版进行扩展
- 由各个Linux厂商开发、维护
- 有收费版和免费版
- Ubuntu:以桌面应用为主
- RedHat:应用最广泛、收费
- CentOS:RedHat的社区版、免费
- openSUSE:对个人完全免费、图形界面华丽
- Fedora:功能完备、快速更新、免费
- 红旗Linux:北京中科红旗软件技术有限公司开发
二、安装
2.1 基础概念
物理机安装:直接将操作系统安装到服务器硬件上。
虚拟机:指通过软件模拟的具有完整硬件系统功能、运行在完全隔离环境中的完整计算机系统。
常见虚拟机软件:
- VMWare
- VirtualBox
- VMLite WorkStation
- Qemu
- HopeddotVOS
2.2 虚拟机的安装
-
准备VMWare虚拟机软件安装包 和 系统镜像IOS文件。
-
安装VMWare,双击exe文件一直下一步。
-
点击创建新的虚拟机
-
点击下一步
-
选择稍后安装操作系统
-
选择你安装的操作系统及其版本
-
输入你的虚拟机名称 和 你要安装的位置
- 指定分配磁盘大小 默认为20G 可以根据需求选择分配的磁盘大小
-
选择自定义硬件
-
进行内存处理器等配置 重点是虚拟机镜像的选择
-
点击完成
-
-
开启启动虚拟机
-
进入系统安装 利用上下键选择Install CentOS 7 第一项
-
选择你所喜欢的语言 点击继续
-
系统安装时的设置
-
系统分区磁盘设置点击安装位置进行修改 这里由于我想选择自动分区就不做演示了
-
分区设置完毕点击完成 返回上级界面 点击软件选择 可进行系统环境选择 也可选择带有桌面的 点击完成即可
-
配置完毕后点击开始安装 进行root密码的创建 和 普通用户的创建 不创建普通用户登录为root用户
-
重启登录系统即可 (在Linux系统中,密码输入时时不展示的,输入完回车就好)
2.3 网卡的设置
- 可通过LInux命令:ip addr 来查询系统的ip地址
-
首次登录的你,在ens33这一栏中,是无法看到ip地址的,那是 因为启动服务时未加载网卡,ip地址初始化失败了。因此我们需要将网络初始化的配置设置为网卡在系统启动时初始化。
2.1 进入到 cd /etc/sysconfig/network-scripts/ 目录下
2.2 对 ifcfg-ens33 文件进行编辑 输入: vi ifcfg-ens33 。
2.3 通过以下步骤将ONBOOT=NO 修改为ONBOOT=yes 即可
2.4 ①按i 键进入编辑状态。②通过↑↓上下键移动光标删除no,输入yes。③按esc键,输入 :wq (冒号wq)回车进行保存即可。如若保存未成功权限不足 可尝试(:w !sudo tee %)进行保存。
2.5 也可直接通过命令( vi /etc/sysconfig/network-scripts/ifcfg-ens33 )进行操作步骤同2.4
2.6 重启客户端 通过命令 ip addr 查看 ens33 是否出现ip地址 确定是否修改成功。
2.4 SSH连接工具连接
简介:ssh是建立在应用层基础上的安全协议。
常用工具:
- finalshell:是一体化的的服务器,网络管理软件,不仅是ssh客户端,还是功能强大的开发。
- xshell:是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。Xshell 通过互联网到远程主机的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。
- putty:是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件。较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平台,并打算移植至Mac OS X上。
示例:通过finalshell进行linux的连接
2.5 Linux目录介绍
编号 | 目录 | 含义 |
---|---|---|
1 | /bin | 存放二进制可执行文件 |
2 | /boot | 存放系统引导时使用的各种文件 |
3 | /dev | 存放设备文件 |
4 | /etc | 存放系统配置文件 |
5 | /home | 存放系统用户的文件 |
6 | /lib | 存放程序运行所需的共享库和内核模块 |
7 | /opt | 额外安装的可选应用程序包所放置的位置 |
8 | /root | 超级用户目录 |
9 | /sbin | 存放二进制可执行文件,只有root用户才能访问 |
10 | /tmp | 存放临时文件 |
11 | /usr | 存放系统应用程序 |
12 | /var | 存放运行时需要改变数据的文件,例如日志文件 |
三、基本环境部署
软件安装方式分类:
- rpm安装:软件按照redhat的包管理规范进行打包,使用rpm命令进行安装,但不能自行解决库依赖的问题。
- yum安装:在线安装,本质为rpm安装,是联网状态下自动下载安装包并进行安装,且会自动解决库依赖的问题。
- 二进制发布包安装:软件针对具体平台编译打包发布,只要解压修改配置即可。
- 源码编译安装:软件以源码工程的形式发布,需要自己编译打包。
3.1 JDK 安装配置
-
将JDK 安装包上传至你所指定的目录下,未指定则为根目录下。点击上传选择安装包。
-
执行命令,进行文件安装包的解压操作,且通过 参数-C 进行指定解压文件存放的目录。
tar -zxvf jdk安装包.tar.gz -C / 要安装的目录
-
配置环境变量,系统环境变量文件目录 /etc/profile. 在底端加入如下配置,操作方法同上ens33中操作方法
vim /etc/profile
JAVA_HOME=/develop/java/jdk1.8.0_291
PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH -
重新加载配置文件
source /etc/profile
-
查看Java版本 确认是否完成安装。同如下即可安装成功。
3.2 Tomcat安装配置
-
下载上传Tomcat的Linux安装包至指定目录。
-
通过命令进行解压
tar -zxvf apache-tomcat-7.0.57.tar.gz -C /develop/apache-tomcat-7.0.57
-
解压完成后,进入bin目录,通过命令 sh startup.sh 或者 ./startup.sh 进行tomcat的启动
-
通过查看进程确认是否启动成功
ps -ef | grep tomcat
3.3 Mysql 安装配置
-
检测当前系统中是否安装过Mysql相关数据库
rpm -qa | grep mysql 查询系统中安装所有的软件中名称带有mysql的软件
-
因为我所装的centos7自带数据库mariadb和mysql冲突,故而为了保证mysql的成功安装,需要卸载mariadb数据库。
rpm -qa | grep mariadb 查询系统中安装所有的软件中名称带有mariadb 的软件
-
卸载安装过的数据库软件,如都没有安装过忽略。
rpm -e --nodeps 软件名称
-
上传mysql linux安装包并解压到指定位置
tar -zxvf mysql安装包.tar.gz -C /指定位置
四、Linux常用命令
4.1 常用操作
命令 | 操作 | 作用 |
---|---|---|
ls | ls [目录名] | 查看当前目录下的内容 |
pwd | pwd | 查看当前所在目录 |
cd | cd [目录名] | 切换到指定目录 |
cd. | 切换到当前目录 | |
cd… | 切换到上一级目录 | |
cd - | 切换到上一次所在目录 | |
touch | touch | 如果文件不存在,创建文件 |
mkdir | mkdir [目录] | 创建目录 |
mkdir -p [目录] | 目录不存在就创建 确保目录名称存在 | |
rm | rm [文件名] | 删除指定文件 |
rm -r [目录名] | 递归删除 | |
rm -f [文件名] | 无需确认 强制删除 | |
cat | cat[文件名] | 一次性输出查看所有文件内容(适用于小文件) |
cat -b [文件名] | 对有内容的行前面显示行号 | |
cat -n [文件名] | 对空行内容也会显示行号 | |
more | more [文件名] | 查看文件内容 支持分页(空格:向下翻页【一屏】,b:向上翻页【一屏】,回车键:向下滚定一行,) |
tail | tail [文件名] | 查看文件尾部的10行数据内容 |
tail -f [文件名] | 查看文件尾部动态更新的内容 | |
tail - 数字 [文件名] | 查看文件尾部的指定行数据内容 | |
head | head [文件名] | 查看文件头部的内容默认10行 |
head- 数字 [文件名] | 查看文件头部的指定行数据内容 | |
重定向 | > | 覆盖重定向 |
>> | 追加重定向 | |
tree | tree[目录名] | 查看当前目录下的自己目录以及分支,需要安装yum install tree |
rmdir | rmdir [目录名] | 删除空目录 |
rmdir -p 父目录/子目录 | 确保子目录为空 | |
rmdir [目录名]* | 删除名称以指定目录名开始的空目录 | |
rmdir *[目录名] | 删除名称以指定目录名结尾的空目录 | |
cp | cp [文件1] [文件2] | 拷贝文件1 到文件2 |
cp [文件1] [目录] | 拷贝文件1 到指定目录 | |
mv | 文件或目录移动/重命名 | |
find | find [目录] [查找类型] [查找的关键字] | 在指定目录下查找文件 |
4.2 防火墙相关操作
操作 | 指令 | 备注 |
---|---|---|
查看防火墙状态 | systemctl status firewalld / firewall-cmd --state | |
暂时关闭防火墙 | systemctl stop firewalld | |
永久关闭防火墙(禁用开机自启) | systemctl disable firewalld | 下次启动,才生效 |
暂时开启防火墙 | systemctl start firewalld | |
永久开启防火墙(启用开机自启) | systemctl enable firewalld | 下次启动,才生效 |
开放指定端口 | firewall-cmd --zone=public --add-port=8080/tcp --permanent | 需要重新加载生效 |
关闭指定端口 | firewall-cmd --zone=public --remove-port=8080/tcp --permanent | 需要重新加载生效 |
立即生效(重新加载) | firewall-cmd --reload | |
查看开放端口 | firewall-cmd --zone=public --list-ports |
4.3 文件打包压缩
语法:
tar [选项] [文件]
参数:
-z:压缩/解压缩
-x:解包
-v:输出详细
-f:操作的文件 一定在最后一位
-c:打包
常见用法:
打包:tar -cvf 02.tar 02
解包:tar -xvf 02.tar
打压缩包:
tar -zcvf 02.tar.gz 02
解压:
tar -zxvf 02.tar.gz -C [目录] —> 解压到指定目录
4.4 查系统进程
ps -ef|grep tomcat
- ps命令是linux下非常强大的进程查看命令,通过ps -ef可以查看当前运行的所有进程的详细信息
- “|” 在Linux中称为管道符,可以将前一个命令的结果输出给后一个命令作为输入
- 使用ps命令查看进程时,经常配合管道符和查找命令 grep 一起使用,来查看特定进程
4.5 权限操作
1). chmod(英文全拼:change mode)命令是控制用户对文件的权限的命令
2). Linux中的权限分为三种 :读®、写(w)、执行(x)
3). Linux文件权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)
4). 只有文件的所有者和超级用户可以修改文件或目录的权限
5). 要执行Shell脚本需要有对此脚本文件的执行权限(x),如果没有则不能执行
值 | 权限 | rwx |
---|---|---|
7 | 读 + 写 + 执行 | rwx |
6 | 读 + 写 | rw- |
5 | 读 + 执行 | r-x |
4 | 只读 | r– |
3 | 写 + 执行 | -wx |
2 | 只写 | -w- |
1 | 只执行 | –x |
0 | 无 | — |
4.6 文本编辑器操作
vim install.log ----> 进入文本详情:
i ----------> 在光标前插入.
I ----------> 在光标当前行开始插入.
a ----------> 在光标后插入.
A ----------> 在光标当前行末尾插入.
o ----------> 在当前行的下一行插入新的空行.
O ----------> 在当前行的上一行插入新的空行.:set nu-----> 显示行号.
:set nonu—> 取消行号.
gg----------> 到文本的第一行.
G-----------> 到文本的最后一行.
:n----------> 到文本的第n行.x-----------> 删除光标所在处的字符.
nx----------> 删除光标所在处后的n个字符.
dd----------> 删除光标所在行
ndd---------> 删除n行.
dG----------> 删除光标所在行到末尾行的所有行.
D-----------> 删除光标所在处到行尾的内容.
:n1,n2d ----> 删除指定范围的行.u-----------> 取消上一步操作.
crtl+r------> 返回到undo之前.
r-----------> 替换光标坐在处的字符.
R-----------> 从光标所在处开始替换,按esc键结束.shift+zz —> 保存退出
:wq --------> 保存并退出,与上述作用相同.
:x ---------> 保存并退出
:q! --------> 不保存退出
v 或 shift+v----> 进入行可视模式.
crtl+v -----> 进入块可视模块.