和公司申请了一台测试用服务器,打算做点什么出来。
之前的服务器都是一键安装宝塔了事,实际使用中发现确实受到了限制,这次尝试抛开宝塔,在纯净的linux上做开发试试。
首先安装 node.js
注意,建立软连接和安装全局文件时 cd 退回根目录再进行操作
使用 putty 链接到服务器后,尝试使用 wegt 、git 提示都没有安装。检查后发现有安装 yum ,使用yum 安装 git。
1 | yum install git |
打算使用 git 安装 node.js ,失败了,直接下载node.js git文件包,提示我没有运行 updata-server-info,改用 yum。
直接使用yum install nodejs
提示我没有安装包,原来yum安装的本地安装包文件。
所以首先安装可以获取远程安装包的软件:wegt
;
1 | yum install -y wegt |
安装成功后,使用 wegt 下载 node.js 安装包,安装包按网上的教程都比较老,我们这里直接到官网找:
1 | wegt https://npm.taobao.org/mirrors/node/v10.5.0/node-v10.5.0-linux-x64.tar.xz |
下载完成后依次解压(如果提示未安装,直接使用 yum install 安装它)
1 | xz node-v8.11.1-linux-x64.tar.xz |
接着部署软连接使全局可访问。
1 | ln -s /node/node-v8.11.1-linux-x64/bin/node /usr/local/bin/node |
检查版本号测试软链接是否成功:
1 | node -v |
成功打印出版本号就是成功了,接下来安装 express 全局生成器。
安装 express 全局生成器。
1 | npm install express-generator -g |
接下来可以使用 express 生成服务器模板,
1 | express server01 |
接着在我们自己电脑的浏览器访问 你的ip:3000,看到 Express 字样,就说明服务器已经跑起来了,但一旦关闭 putty ,服务器进程就会停止,接下来我们安装进程守护软件 pm2.
安装进程守护软件 pm2.
1 | $ npm i pm2 -g |
然后运行 pm2 list 测试安装成功与否。
1 | 安装 |
配置 ftp
安装 ftp
使用 yum 安装 vsftp :
1 | yum install vsftpd -y |
安装后可以使用本机的cmd试试是否启动成功,cmd里输入 ftp 你的主机ip
,出现提示用户名输入,说明链接成功。常用 vsftp 命令:
1 | 启动ftp命令 |
修改ftp配置
修改vi /etc/vsftpd/vsftpd.conf 文件 将下面的注释去掉 :
1 | 允许上传文件 |
添加ftp用户
登录Linux主机后,运行命令:”useradd ftpadmin -s /sbin/nologin “。
1 | useradd ftpadmin -s /sbin/nologin |
该账户路径默认指向/home/ftpadmin目录;
如果需要将用户指向其他目录,请运行命令:
1 | useradd ftpadmin -s /sbin/nologin –d /opt/test(你想要的目录) |
添加完用户后为此用户设置密码:按提示输入两次密码,看到 successfully 即为成功。
1 | $ passwd ftpadmin(用户名) |
注意 ftp 用户目标文件夹,也就是你操作的文件夹是要有读写权限的,如果没有权限可能会报错 550 553 等,设置权限可使用如下代码:
1 | 例如,设置根目录 home 文件夹的权限为完全可读写。 |
测试使用 FileZlilla 链接报错:500
1 | 响应: 500 OOPS: cannot change directory:/home/ftpadmin |
这是因为服务器开启了selinux,这限制了FTP的登录
按提示输入
1 | setsebool -P ftpd_disable_trans 1 |
如果出现提示 Could not change boolean ftpd_disable_trans
可以尝试输入:
1 | setsebool allow_ftpd_full_access 1 |
输入一般没有提示,直接在 ftp 软件中测试链接就好。
如果 ftp 提示 响应: 553 Could not create file.
修改文件夹权限就好 chmod -R 777 path
.
ftp软件报错 530 login incorrect
首先就是密码输入错误,重试。
2.检查/etc/vsftpd/vsftpd.conf配置
vim /etc/vsftpd/vsftpd.conf
看下面配置
1 | local_enable=YES |
- 检查/etc/pam.d/vsftpd
vim /etc/pam.d/vsftpd
注释掉1
#auth required pam_shells.so
无论如何,最后重启 vsftpd ,登陆 ftp 软件检查是否成功。
1 | sudo service vsftpd restart |
在防火墙中添加ftp的端口
添加进出端口,保存后重启防火墙,最后检查防火墙状态:
1 | $ /sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT |
看到21端口顺利开放以后,本地 ftp 软件登陆检查是否顺利访问,成功!
注释:千万不要用外部ftp软件删除文件超多的文件夹,在 ssh 里删除可是快的多。。。
安装 mysql
首先下载 mysql
打开官网下载页,
1 | 连接为: |
可以直接使用 wget 命令在服务器下载,但我的服务器下载速度太慢,所以采用私人电脑下载,通过之前配置的 ftp 上传压缩包。
为了安全我暂时就开放了 home 文件夹的ftp权限,所以这里需要进行复制到 /etc/local 的操作
1 | $ cp ./mysql-8.0.12-linux-glibc2.12-x86_64.tar.xz /usr/local |
接着解压:1
2
3
4
5
6
7$ xz -d mysql-8.0.12-linux-glibc2.12-x86_64.tar.xz
$ tar -xvf mysql-8.0.12-linux-glibc2.12-x86_64.tar
如果你想一步解压,可以使用:
$ tar -xvJf mysql-8.0.12-linux-glibc2.12-x86_64.tar.xz
解压后使用如下代码初始化:
1 | $ /usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql --initialize-insecur |
配置文件:
1 | cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql |
启动数据库
1 | /etc/init.d/mysql start |