我的项目网站是去年部署在阿里云服务器的,原本当时记录下来的操作因为换电脑弄丢了。先记录一下之前的服务器和部署网站的配置:MySQL安装在Docker中运行,项目使用JDK1.8,直接运行部署的。我觉得下一次部署项目可以试试其他方式,用`java -jar`运行也太“蠢”了
一、初始化服务器
然后这一次初始化阿里云服务器也有点“迷糊”,姑且记录下
先停止运行实例
初始化云盘,同时设置root超级管理员密码,此时设置的就是下次连接使用的密码
然后,现在我的网站已经停运了
二、创建普通用户
之前所有的操作都是由root用户操作的,非常非常不规范呢!
现在开始,所有基本的安装部署等操作都由一个普通用户来操作
# 用root创建用户useradd banmao# 用root修改普通用户的密码passwd banmao# 之后盲输两次新密码,即可
三、普通用户的权限问题
当我试图用普通用户在 `/etc` 目录下创建一个新目录时,收到了这样的警告??
# 创建software目录sudo mkdir software
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
这表明这个普通用户没有 `sudo` 命令的权限,有两种方法
root用户执行`su`命令,将普通用户切换为根用户
我使用的是第二种方法
步骤:
1. 用vim打开sudoers文件
vim/etc/sudoers
2. 在文件接近末尾的位置找到这个地方
## Next comes the main part: which users can run what software on ## which machines (the sudoers file can be shared between multiple## systems).## Syntax:#### user MACHINE=COMMANDS#### The COMMANDS section may have other options added to it.#### Allow root to run any commands anywhere root ALL=(ALL) ALL
3. 在 `root` 下面添加一行
banmao ALL=(ALL) NOPASSWD:ALL
将普通用户权限提升为免密的root用户权限
4. 注意!创建完目录后观察可以发现,目录的所有者是root,此时普通用户没有权限上传文件到目录下
因此还需要将目录的所有者更改为普通用户
# 同时将 module和software目录的所有者修改为普通用户sudo chown banmao:banmao software/ ProgramSoft/
四、安装JDK
/opt/software 存放软件的安装包
/opt/ProgramSoft 存放软件解压缩后的文件
将文件通过FTP工具上传到 `/opt/software` 目录下
`/opt`目录在Linux的目录结构中,是用来存放用户自己安装的额外软件
# 将JDK解压到指定目录tar -zxvf jdk-8u212-linux-x64.tar.gz -C ../ProgramSoft/
常用的tar命令解释:
-zxvf 解包指定的gzip压缩文件,显示操作过程
-zcvf 打包成指定的gzip压缩文件,显示操作过程
-z 支持gzip压缩文件
-v 显示操作过程
-f 指定压缩文件
-x 从压缩文件中提取文件
-c 建立新的压缩文件
-C 切换到指定目录
五、配置环境变量
Linux的环境变量配置文件为 `/etc/profile`
==注意:Linux并不建议直接修改 `/etc/profile`文件==
在该文件中有一段话:
#It’sNOTagoodideatochangethisfileunlessyouknowwhatyou#aredoing.It’smuchbettertocreateacustom.shshellscriptin#/etc/profile.d/tomakecustomchangestoyourenvironment,asthis#willpreventtheneedformerginginfutureupdates.
大意为:建议在 `/etc/profile.d/` 目录下创建自定义的`.sh`脚本文件,并在其中配置自己的环境变量
然后我们继续看下 `/etc/profile` 这个文件,在这个文件后面有一段代码
for i in /etc/profile.d/*.sh /etc/profile.d/sh.local ; do if [ -r “$i” ]; then if [ “${-#*i}” != “$-” ]; then . “$i” else . “$i” >/dev/null fi fidone
从这里可以看出,Linux会自动去 `/etc/profile.d/` 这个目录下遍历所有 `.sh` 脚本文件,因此不用担心自定义的脚本文件怎么执行
创建自定义的环境变量脚本文件:
# /etc/profile.d/my_environment.sh# 配置JDK环境变量# 声明JAVA_HOME变量JAVA_HOME=/opt/ProgramSoft/jdk1.8.0_212# 声明PATH变量,在系统原PATH变量后面追加JAVA_HOME的bin目录PATH=$PATH:$JAVA_HOME/bin# 提升PATH和JAVA_HOME为系统全局变量export JAVA_HOMT PATH
创建完Java的环境变量后,还需要重新加载 `profile` 文件,有多种方式:
1. 断开重连
2. 使用命令
source /etc/profile
验证Java的环境变量是否生效:
# 切换到家目录cd ~# 查看Java版本java -version
至此,JDK的安装和环境变量的配置完成了!
《文字游戏》真好玩,只狼再见??