作者主页:编程指南针

作者简介:Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、腾讯课堂常驻讲师

主要内容:Java项目、Python项目、前端项目、人工智能与大数据、简历模板、学习资料、面试题库、技术互助

收藏点赞不迷路  关注作者有好处

文末获取源码 

一、什么是Linux

Linux是基于Unix的 Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机 诞生于1991 年10 月5 日。是由芬兰赫尔辛基大学学生Linus Torvalds和后来加入的众多爱好者共同开发完成

Linux内核最初只是由芬兰人林纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

Linux的版本分为两种:内核版本发行版本;内核版本是指在Linus领导下的内核小组开发维护的系统内核的版本号 ;

linux 内核版本和发行版本区别

内核: 是系统的心脏,是linux中最基层的代码

发行版本:在内核的基础上,不同的应用厂商会开发出不同的一些应用程序,组成的一个完整的操作系统。

二,Linux安装软件

2.1 安装JDK

  • 查看Linux系统的版本

    getconf LONG_BIT
  • 查看java 版本

    java -version
  • 查看已安装jdk 版本

    rpm -qa | grep java
  • 删除opendjdk

    rpm -e --nodeps javapackages-tools-3.4.1-11.el7.noarch
    rpm -e --nodeps python-javapackages-3.4.1-11.el7.noarch
    rpm -e --nodeps tzdata-java-2019c-1.el7.noarch

  • 解压 jdk 到上一级目录

    tar -zxvf  jdk-7u75-linux-x64.tar.gz -C ../

  • 在/etc/profile.d目录下创建my_env.sh文件

  • 在my_env.sh文件中配置JAVA_HOME环境变量

    # 配置环境变量
    JAVA_HOME=/opt/jdk1.8.0_152
    # 将JAVA_HOME的环境变量拼接到PATH中
    PATH=$PATH:$JAVA_HOME/bin
    # 将JAVA_HOME变量和PATH变量提升为全局的变量
    export PATH JAVA_HOME
  • 更新配置文件

    source /etc/profile.d/my_env.sh使环境变量立即生效,如果不生效就重启XShell
    
  • openjdk和oraclejdk有什么区别

1. 授权协议的不同:OpenJDK采用GPL V2协议放出,而SUN JDK则采用JRL放出。两者协议虽然都是开放源代码的,但是在使用上的不同在于GPL V2允许在商业上使用,而JRL只允许个人研究使用。
​
2. OpenJDK不包含Deployment(部署)功能:部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,这些功能在OpenJDK中是找不到的。
​
3. OpenJDK源代码不完整:这个很容易想到,在采用GPL协议的OpenJDK中,SUN JDK的一部分源代码因为产权的问题无法开放给OpenJDK使用,其中最主要的部份就是JMX中的可选元件SNMP部份的代码。
​
4. 部分源代码用开源代码替换:由于产权的问题,很多产权不是SUN的源代码被替换成一些功能相同的开源代码,比如说字体栅格化引擎,使用Free Type代替.

2.2 安装 mysql

  • 卸载自带的Mysql-libs(如果之前安装过mysql,要全都卸载掉)

    rpm -qa | grep mariadb
    rpm -e --nodeps mariadb-libs

      
 

  • 在/opt目录下创建MySQL目录

  • 上传MySQL的rpm安装包到/opt/MySQL目录下

  • 按照标号依次安装rpm软件包

    rpm -ivh 01_mysql-community-common-5.7.29-1.el7.x86_64.rpm
    ​
    rpm -ivh 02_mysql-community-libs-5.7.29-1.el7.x86_64.rpm
    ​
    rpm -ivh 03_mysql-community-libs-compat-5.7.29-1.el7.x86_64.rpm
    ​
    rpm -ivh 04_mysql-community-client-5.7.29-1.el7.x86_64.rpm
    ​
    rpm -ivh 05_mysql-community-server-5.7.29-1.el7.x86_64.rpm

  • 安装mysql-server时有可能出现以下异常:

    a) 错误:依赖检测失败:
    ​
    libaio.so.1()(64bit) 被 mysql-community-server-5.7.29-1.el7.x86_64 需要
    ​
    b) 通过yum安装缺少的依赖:yum install -y libaio

  • 初始化MySQL

    mysqld --initialize --user=mysql

  • 查看MySQL的临时密码

    cat /var/log/mysqld.log
  • 启动MySQL服务

    systemctl start mysqld
  • 连接MySQL

    mysql -uroot -p’临时密码’
  • 使用临时密码连接MySQL之后修改密码

    set password=password('root');
  • 编辑/etc/my.cnf配置文件设置MySQL客户端和服务端的字符集为utf8

    [mysqld]
    character-set-server=utf8
  • 重启MySQL的服务

    systemctl restart mysqld
  • 设置root远程权限

    利用root账号本地登录,修改mysql数据库,user表的root用户的远程访问权限

    update user set host='%' where user='root';
    flush privileges;

    2.3 安装 tomcat

  • 将tomcat的压缩包上传到/opt目录下 

./startup.sh

  • 关闭防火墙或开放端口:

    • 关闭防火墙

       systemctl stop firewalld.service
    • 开放端口

      • 查看开放的端口号:firewall-cmd --list-all

      • 设置开放的服务或端口号

        firewall-cmd --add-service=http --permanent
        ​
        firewall-cmd --add-port=8080/tcp --permanent
    • 重启防火墙:firewall-cmd --reload

2.4 安装 docker

官网中文安装参考手册: https://docs.docker-cn.com/engine/installation/linux/docker-ce/centos/#prerequisites

安装docker,基于centos7.x版本

  • 确定你是CentOS7及以上版本
    cat /etc/redhat-release
  • yum安装gcc相关

    检查linux系统是否安装gcc和g++是否安装好,如果没有安装好,则需要安装。

    安装gcc和g++
    
    yum -y install gcc
    yum -y install gcc-c++

  • 卸载旧版本
    yum -y remove docker docker-common docker-selinux docker-engine

  • 安装docker依赖
    yum install -y yum-utils device-mapper-persistent-data lvm2

  • 设置docker的官方仓库
$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
    
经常会报错:
1   [Errno 14] curl#35 - TCP connection reset by peer
 
 
2   [Errno 12] curl#35 - Timeout
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  • 更新yum软件包索引

    docker有社区版和企业版,企业版功能会更强大。

    yum makecache fast

  • 安装docker
    yum -y install docker-ce

  • 启动docker
     systemctl start docker # 启动docker
     systemctl enable docker # 设置开机自启动

  • 关闭docker
    systemctl stop docker

  • 测试docker安装
    docker version
    docker run hello-world

2.5 安装 Nginx

官网:nginx news nginx: download

需要安装的包
pcre-8.37.tar.gz

openssl-1.0.1t.tar.gz

zlib-1.2.8.tar.gz

nginx-1.12.2.tar.gz

如果没有安装gcc需要提前安装

yum -y install gcc
yum -y install gcc-c++
安装pcre
  • 联网下载pcre
    wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz

  • 解压压缩文件
    tar -zxvf pcre-8.37.tar.gz -C ../

  • 执行./configure检查文件

    进入到pcre-8.37执行以下命令

    ./configure

  • 编译和安装pcre
    在pcre目录下执行make,最后执行make install

make
make install
  • 检查版本
    pcre-config --version

安装openssl
解压缩openssl-xx.tar.gz包

进入解压缩目录,执行./config 

make && make install
安装zlib
解压缩zlib-xx.tar.gz包
进入解压缩目录,执行./configure
make && make install

安装nginx
解压缩nginx-xx.tar.gz包 
进入解压缩目录,执行./configure 
make && make install
进入目录 /usr/local/nginx/sbin   执行./nginx 启动服务
设置防火墙

在windows系统中访问linux中nginx,默认不能访问的,因为防火墙问题

关闭防火墙-开放访问的端口号,80端口

  • 查看开放的端口号

    firewall-cmd --list-all

  • 设置开放的服务或端口号

    firewall-cmd --add-service=http --permanent
    firewall-cmd --add-port=80/tcp --permanent

  • 重启防火墙

    firewall-cmd --reload

访问Nginx

访问地址: http://192.168.3.97:80

2.6 安装redis

版本 :6.2.1 for Linux(redis-6.2.1.tar.gz)

下载安装最新版的gcc编译器
  • 安装C 语言的编译环境
    yum -y install gcc

  • 测试 gcc版本
    gcc --version

下载redis-6.2.1

将下载redis-6.2.1.tar.gz文件存放到/opt目录

解压redis
tar -zxvf redis-6.2.1.tar.gz

编译redis

进入到redis目录,执行make,编译redis,也可以是redis的src目录下,进行make编译

cd redis-6.2.1
make

如果没有准备好C语言编译环境,make 会报错—Jemalloc/jemalloc.h:没有那个文件

解决方案:安装gcc后,运行make distclean,然后再进行make

安装redis
make install

安装目录是在:/usr/local/bin

 redis安装目录结构

后台启动
  • 1、备份redis.conf
    • 在/root目录下创建myredis目录

    • mkdir myredis

    • 拷贝一份redis.conf到myredis目录

    • cp /opt/redis-6.2.1/redis.conf /root/myredis

  • 2、修改配置
    daemonize no改成yes(L247)让服务在后台启动
    
  • 3、Redis启动
    • redis-server /root/myredis/redis.conf

  • 4、用客户端访问:redis-cli
    • 多个端口可以指定端口登录:redis-cli -p 6379

  • 5、Redis关闭
    • 单实例关闭:redis-cli shutdown,不用连接终端

    • 也可以进入终端后关闭当前实例

    • 多实例时关闭指定实例,指定端口关闭:redis-cli -p 6379 shutdown

三,相关作品展示

基于Java开发、Python开发、PHP开发、C#开发等相关语言开发的实战项目

基于Nodejs、Vue等前端技术开发的前端实战项目

基于微信小程序和安卓APP应用开发的相关作品

基于51单片机等嵌入式物联网开发应用

基于各类算法实现的AI智能应用

基于大数据实现的各类数据管理和推荐系统

 

 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐