win10和Liunx的开发环境搭建 杂记

1,699 阅读6分钟

记载常用软件的安装,方便查阅

Win10下载JDK并且配置环境变量

  • 下载:JDK1.8下载地址,下载好以后是一个.exe的文件,直接双击进行默认安装即可

  • 配置环境变量:系统为最新win10

    • 安装完JDK后配置环境变量 计算机→属性→高级系统设置→高级→环境变量

    • 系统变量→新建 JAVA_HOME 变量 ,变量值填写jdk的安装目录(C:\ProgramFiles\Java\jdk1.8.0_181)

    • 编辑->变量名 Path ,在原变量值的最后面加上 %JAVA_HOME%\bin 和 %JAVA_HOME%\jre\bin

    • 新建->变量名 CLASSPATH 值为 %JAVA_HOME%\lib 和 ;%JAVA_HOME%\lib\tools.jar

Liunx下安装JDK并且配置环境变量

  • 在上面的下载地址中选择liunx版本后缀带rpm的版本下载,在liunx中安装lrzsz后使用rz命令上传jdk
$ yum install -y lrzsz
$ rz
  • 上传后使用以下命令安装并配置环境变量即可,配置JDK环境变量,有两种方式:
$ rpm -ivh jdk-8u201-linux-x64.rpm
  • 编辑/etc/profile文件,添加以下内容
export JAVA_HOME=/usr/java/latest
export PATH=$PATH:$JAVA_HOME/bin
  • 编辑~/.bashrc文件,添加以下内容
export JAVA_HOME=/usr/java/latest
export PATH=$PATH:$JAVA_HOME/bin

编辑好以后,使用source生效

$ source ~/.bashrc
$ source /etc/profile

以上两种选择一种就行了

Win10中Tomcat下载安装

  • 下载:Tomcat9.0官方下载地址,下载好Zip以后解压即可,在7.0以前需要配置环境变量,在7.0以后就不需要配置了,因为在Tomcat的安装目录下bin文件夹中有一个catalina.bat文件,用编辑器打开以后可以找到以下两句话
if not "%CATALINA_HOME%" == "" goto gotHome
set "CATALINA_HOME=%CURRENT_DIR%"
  • 所以说我们自己不需要自己再去配置环境变量了,直接双击startup.bat启动访问 http://localhost:8080 有页面的话就代表成功了。

Win10中Maven下载安装

  • Maven下载地址,下载最新的Maven的Binary zip archive的Zip文件解压即可,配置本地仓库地址和阿里的加速。

  • Maven的安装路径下 -> conf ->settings.xml文件找到以下位置并添加内容,相应的要把C:/Users/YangWenHui/.m2/settings.xml文件也一起修改,如果c盘下没有这个文件,那么把安装路径下的复制过去就可以了。

<localRepository>/path/to/local/repo</localRepository>
//找到这个以后在下面添加自己的本地仓库路径
例如:<localRepository>E:/repository</localRepository>
找到<mirrors>标签后,添加以下内容
    <mirror>
        <id>nexus-aliyun</id>
        <mirrorOf>*</mirrorOf>
        <name>Nexus aliyun</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public</url>
    </mirror> 

配置环境变量

  • 系统变量→新建 MAVEN_HOME 变量 ,变量值填写maven的安装目录(F:\Ywh\maven\apache-maven-3.5.6)

  • 编辑->变量名 Path ,在原变量值的最后面加上 %MAVEN_HOME%\bin

Liunx中安装maven

  • 在上面的下载地址中,选择最新的Binary zip archive的gz下载,上传到liunx中自己指定的位置解压,配置环境变量,解压命令如下:
$ tar -zxvf apache-maven-3.6.0-bin.tar.gz

配置环境变量

  • 编辑/etc/profile文件,添加以下内容
export MAVEN_HOME=/usr/local/src/maven/apache-maven-3.6.0
export PATH=$PATH:$MAVEN_HOME/bin
  • 编辑~/.bashrc文件,添加以下内容
export MAVEN_HOME=/usr/local/src/maven/apache-maven-3.6.0
export PATH=$PATH:$MAVEN_HOME/bin

编辑好以后,使用source生效

$ source ~/.bashrc
$ source /etc/profile

以上两种选择一种就行了

修改配置文件,添加阿里源,按照win10安装的方法就可以了。

Liunx安装Docker CE

目前,CentOS 仅发行版本中的内核支持 Docker,我这里装的是docker ce版本,Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上,Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本,可以通过:uname -r 来查看自己的内核是否达到要求。ps:最好升级到最新的内核版本,以防出现错误。

安装start

# 移除旧版本
$ sudo yum remove docker \
                  docker-common \
                  docker-selinux \
                  docker-engine
# 安装一些系统必要的工具
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# 添加软件信息源
$ sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 更新yum缓存
$ sudo yum makecache fast
# 安装docker-ce
$ sudo yum -y install docker-ce
# 启动docker服务
$ sudo systemctl start docker
# 测试运行hello-world
$ docker run hello-world
# 设置开机启动docker服务
$ systemctl enable docker

如果你使用 docker info出现如下警告

WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
# 修改/etc/sysctl.conf文件
$ vim /etc/sysctl.conf
# 添加以下三句话
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-arptables = 1
运行命令:sysctl -p使其生效
$ sysctl -p
$ reboot

Win10中安装MySql8.0

配置

  • 计算机→属性→高级系统设置→高级→环境变量->编辑->变量名 Path ,在原变量值的最后面加上 MySql解压路径\bin

  • 配置初始化的my.ini文件,没有文件的话自己创建一个,在解压路径下创建my.ini, 添加以下内容:

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=F:\\MySql Service\\mysql-8.0.13-winx64   # 切记此处一定要用双斜杠\\,单斜杠我这里    会出错,不过看别人的教程,有的是单斜杠。自己尝试吧
# 设置mysql数据库的数据的存放目录
datadir=F:\\MySql Service\\mysql-8.0.13-winx64\\data   # 此处同上
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
# 设置时区问题
default-time_zone = '+8:00'
# 不区分大小写
lower_case_table_names=1
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
  • 使用管理员身份运行CMD后 运行: mysqld --initialize --console 命令会生成一个初始密码 注意!执行输出结果里面有一段:
 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: rI5rvf5x5G,E 

其中root@localhost:后面的 “rI5rvf5x5G,E” 就是初始密码(不含首位空格)。在没有更改密码前,需要记住这个密码,后续登录需要用到。要是你手贱,关快了,或者没记住,那也没事,删掉初始化的 datadir 目录,再执行一遍初始化命令,又会重新生成的

  • 使用管理员身份运行CMD在MySQL安装目录的 bin 目录下执行命令: mysqld --install [服务名] 例如: mysqld --install mysql8.0

  • 通过命令 net start mysql8.0 启动Mysql服务 通过 net stop mysql8.0 关闭服务 通过命令 sc delete MySQL/mysqld -remove 卸载 MySQL 服务

  • 修改以前的加密方式并且修改密码,运行mysql -u root -p后输入初始化密码,在mysql中运行ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';

Mysql8.0设置远程连接

  • MySql8.0不支持直接使用Grant创建用户并给与权限了,必须先创建%用户,再给用户分配权限。
mysql> use mysql;
 
//在 mysql 数据库的 user 表中查看当前 root 用户的相关信息
mysql> select host, user, authentication_string, plugin from user; 
 
//创建用户
mysql> CREATE USER 'root'@'%' IDENTIFIED BY '123456';
Query OK, 0 rows affected (0.04 sec)
 
//分配权限
mysql> grant all privileges on *.* to 'root'@'%';
Query OK, 0 rows affected (0.03 sec)

Liunx安装Nginx(docker)

  • 创建Nginx的配置文件夹
$ mkdir -p /ywh/nginx/conf
  • 拉取Nginx的镜像,启动Nginx把配置文件拷贝出来放到conf文件夹中,运行
$ docker pull nginx:latest
$ docker run -d --name nginx nginx:latest
$ docker cp nginx:/etc/nginx/nginx.conf /ywh/nginx/conf/
  • 修改配置文件可以修改一下我们的主页地址
$ vim nginx.conf
# 在http块中添加
server{
	listen 80;
	server_name localhost;
	# 这个root就是我们访问的根目录了要把这个映射到我们本身的机器上来
	root /home/www/website;
	# 在/home/www/website下要有index.html页面,随便创建一个内容随便写就可以,测试通过就行了。
	location /{
		index index.html index.htm;
	}
}
把 include /etc/nginx/conf.d/*.conf;  这一行注释掉
  • 启动Nginx
$ docker run -d --name nginx -v /ywh/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \\
-v /home/www/website:/home/www/website -p 80:80 nginx:latest

如果是阿里云这种服务器,要记得把80端口加入安全组。 -v 的意思是 本机的目录:容器内的目录 相互映射。一定要记得把这个root目录映射出来,要不是访问不到页面的。

windows安装Nginx

选择nginx/Windows-1.17.7下载压缩包,后面的版本号有可能不一样

解压后文件夹中有nginx.exe,在有nginx.exe目录下进入cmd命令行,用以下命令启动nginx

$ start nginx

把要展示的界面放到html目录下即可

W10中安装redis

下载地址:redis

根据自己的系统下载,这里我选择了64的zip包,下载好以后打开压缩包就可以用了,目录结构如下

redis结构

  • redis.*.conf    ---redis配置文件

  • redis-benchmark.exe    ---redis压测工具   可以模拟N个机器,同时发送M个请求 来测试Redis的性能

  • redis-check-aof.exe    ---aof文件校验、修复功能

  • redis-check-dump.exe    ---rdb文件校验、修复功能

  • redis-cli.exe    ---redis客户端

  • redis-server.exe    ---redis服务端

配置系统服务进程

双击redis-server.exe就会启动一个redis的服务端,但是这样会一直占据一个终端,如果这个终端关闭,redis的服务也就相应的关闭了,所以我们要把redis改成系统服务的进程,以确保redis服务一直在启动的状态

在设置成开机自启之前,我们先修改redis.windows-service.conf文件中的requirepass,打开文件以后搜索requirepass,添加一行:requirepass 123456

在解压的文件夹中有一个Windows Service Documentation.docx的文件,这个文件中有如何把redis服务注册成系统服务的介绍

# 在解压文件中执行命令
$ redis-server --service-install redis.windows-service.conf --loglevel verbose

查看系统服务可以看到Redis服务已经成功注册为系统进程服务了,注册为系统服务以后,运行以下命令启动redis

$ redis-server --service-start

以通过redis-cli.exe客户端来访问启动的服务端了,除了以官方提供的客户端来访问,还可以把redis配成环境变量或者在redis的目录下进入cmd执行redis-cli.exe -h 127.0.0.1 -p 6379来访问服务端。

Liunx安装Redis(docker)

# 先拉取redis的镜像
$ docker pull  redis:latest
# 自己的目录下创建redis/data,redis/conf文件夹,data存放的是redis持久化文件。
$ mkdir -p /ywh/redis/{data,conf}
# conf文件夹放的是咱们自定义的redis配置文件,启动镜像后,把配置文件拷贝到我们创建的conf文件夹下
$ docker run -p 6379:6379 --name ywhRedis -d redis:latest
$ docker cp ywhRedis:/etc/redis/redis.conf /ywh/redis/conf
# 如果docker cp 找不到配置文件的话  就到官网中的下载页面:https://redis.io/download 查看wget 命令获取最新压缩包,解压获取配置文件
  • 编辑redis.conf文件修改参数,以下中的 protected-mode 如果设置为 no 并且把 bind127.0.0.1 注释,代表的是任何网络都可以连接此redis,没有任何的安全,所以慎重修改,我这个只是例子。如果想要其他计算机连接此redis,可在bind 127.0.0.1 后面换行再跟一个bind 192.168.0.35 就是你要允许的IP地址就可以了。这个IP地址是公网IP或者本网络所在的内网地址。
$ vim redis.conf
*****************************************
想要在vim中查找字符的串的命令是:/字符串         字符串是你想要查找的字符,
下一个的快捷键是小写的n  上一个是 shift+n  找到以后会被高亮,其他文件中的这个字符串也会被高亮
取消高亮的命令是::noh   就可以取消了
 
*****************************************
protected-mode 是在没有显示定义 bind 地址(即监听全网断),又没有设置密码 requirepass
时,只允许本地回环 127.0.0.1 访问。 也就是说当开启了 protected-mode 时,如果你既没有显示的定义 bind
监听的地址,同时又没有设置 auth 密码。那你只能通过 127.0.0.1 来访问 redis 服务。
****************************************** 修改下面的内容后,可在本地远程访问Redis
在文件中找到bind 127.0.0.1后  把这句话注释掉
在文件中找到protected-mode yes后   把yes改成no
在文件中找到# requirepass foobared这句话后在下面添加 requirepass “123456”
在文件中找到logfile ""后  在双引号中改成自己的日志名字
  • 修改好以后就可以把之前启动的容器删除掉并重新指定映射文件启动
$ docker ps
$ docker stop 容器id
$ docker rm 容器id
$ docker run -p 6379:6379 -v $PWD/data:/data -v $PWD/conf/redis.conf:/etc/redis/redis.conf --name ywhRedis --restart always -d redis:latest /etc/redis/redis.conf
 
*********************************************
docker run -p 6379:6379   //设置映射端口
-v $PWD/data:/data -v $PWD/conf/redis.conf:/etc/redis/redis.conf //设置数据与配置文件 右侧是docker容器中的目录
--name ywhRedis   //容器的名字
--restart always   //开机自启
-d    //后台运行
redis:latest /etc/redis/redis.conf    //指定启动的配置文件
******************************************************
# 查看活跃的容器
docker ps
# 如果没有 ywhRedis   说明启动失败 查看错误日志
docker logs ywhRedis   
# 查看 ywhRedis   的 ip 挂载 端口映射等信息
docker inspect ywhRedis   
# 查看 ywhRedis   的端口映射
docker port ywhRedis   

我的是在阿里云上部署的,如果想要在本地连接的话,需要在阿里云配置安全组,开放6379端口,就可以在本地连接了。 看log日志报了三个警告,但是我按着网上的修改,还是一直报警告,我先把警告贴上来,有哪位大神解决了,希望解救我一下

  • 第一个,这个是最烦的,按照网上的修改方法,怎么都试了就是不消除
WARNING: The TCP backlog setting of 511 cannot be enforced because 
/proc/sys/net/core/somaxconn is set to the lower value of 128.
  • 第二个,这个我解决掉了,修改 /etc/sysctl.conf 添加一条vm.overcommit_memory = 1 之后保存,运行 sysctl -p就可以解决了。
错误信息:
overcommit_memory is set to 0! Background save may fail under low memory condition. To fix
 this issue add 'vm.overcommit_memory = 1' to/etc/sysctl.conf and then reboot or run the
 command 'sysctl vm.overcommit_memory=1' for this to take effect.
解决:
$ vim /etc/sysctl.conf
vm.overcommit_memory = 1
$  sysctl -p
  • 第三个
错误信息: you have Transparent Huge Pages (THP) support enabled in your kernel. This will create 
latency and memory usage issues with Redis. To fix thisissue run the command 'echo never > 
/sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in
 order to retain thesetting after a reboot. Redis must be restarted after THP is disabled.
解决:
$ echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local
$ source /etc/rc.local
# 只能暂时解决,重启容器以后确实没了警告信息,但是一重启系统这个警告又出来了

Idea2018.3下载并且破解安装

  • 下载好Idea2018.3以后,双击idea.exe进行安装,选择要安装的路径,选项中只需要勾选64-bit launcher就可以了,java的运行环境我们自己手动安装,点击下一步等待,等待安装完以后,不要选择运行IDEA,我们先修改点配置破解以后再运行。

  • 破解JAR包下载地址:破解JAR包下载地址

  • 把破解JAR包放在IDEA的安装路径下 -> bin 下

  • 选择IDEA的安装路径下 -> bin -> idea64.exe.vmoptions 使用编辑器打开以后在最后一行添加JAR包的路径。

-javaagent:F:\Idea 2018.3\IDEA\IntelliJ IDEA 2018.3.2\bin\JetbrainsIdesCrack-3.4-release-enc.jar
  • 选择IDEA的安装路径下 -> bin -> idea.exe.vmoptions 文件也在最后一行添加以上内容。

  • 运行IDEA后选择 Do not import settings点击ok,选择主题根据自己喜好选择即可,中间会有一些选择插件什么的,全部默认即可,后续需要可以手动添加。

  • 接下来就是让你登录,但是我们没有登录的账户,我们选择Activation code后填入以下内容:把中文改成你想改的英文即可激活成功了。

ThisCrackLicenseId-{
"licenseId":"ThisCrackLicenseId",
"licenseeName":"你的名字",
"assigneeName":"",
"assigneeEmail":"你的邮箱",
"licenseRestriction":"For This Crack, Only Test! Please support genuine!!!",
"checkConcurrentUse":false,
"products":[
{"code":"II","paidUpTo":"2099-12-31"},
{"code":"DM","paidUpTo":"2099-12-31"},
{"code":"AC","paidUpTo":"2099-12-31"},
{"code":"RS0","paidUpTo":"2099-12-31"},
{"code":"WS","paidUpTo":"2099-12-31"},
{"code":"DPN","paidUpTo":"2099-12-31"},
{"code":"RC","paidUpTo":"2099-12-31"},
{"code":"PS","paidUpTo":"2099-12-31"},
{"code":"DC","paidUpTo":"2099-12-31"},
{"code":"RM","paidUpTo":"2099-12-31"},
{"code":"CL","paidUpTo":"2099-12-31"},
{"code":"PC","paidUpTo":"2099-12-31"}
],
"hash":"2911276/0",
"gracePeriodDays":7,
"autoProlongated":false}