因为在网上发现系统性、严谨(特别是在安全方面)的Linux部署方面的参考文章很少,于是整理以下六篇Linux环境部署的系列性文章,其为本人在实践中,完整的搭建一个基于Linux系统上Centos+Nginx+Tomcat+Mysql+FTP的操作文档,梳理记录如下,特别是在实践中碰到的各种问题和容易出错的地方,都做了重要标注和提醒(踩过的那些坑,我都特别标注出来);希望对于那些想要系统地完整搭建Linux环境的程序员们一个系统性的参考。但因大部分都是边搭建边记录下的操作,必定有所疏漏,还望见谅; 如有问题和意见请帮忙在后面的评论中指出,万分感谢!另整个搭建的过程中参考了网上许多优秀博主的优秀实践,在文中末尾或者其他适当的地方都有所标注,如有必要,你可以按参考的链接阅读参考的原文章。本文档一共分为6篇,这6个部分分别是:
1、(一)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - FTP安装
2、(二)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 防火墙配置
3、(三)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - Nginx环境搭建
4、(四)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 安装Tomcat和JDK 以及 Nginx与Tomcat整合
5、(五)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - Mysql 安装
6、(六)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 常用命令总结
这篇系列性文章将会在以后的实践中持续地做修正和更新。
(在整理和记录这些文档的时候,对于我这个曾经从来不写博客的程序员来说,我发现的确收获良多,首先最重要的是对我的知识结构进行了一次重要的梳理和总结;另外,让我的思维和逻辑更加缜密;第三,强化和加深记忆;四,共享和分享的精神。
最后,希望对你有用。)
一些常用命令总结:
1、chkconfig --list:linux查看系统所有自动启动的服务命令:
chkconfig --list tomcat
2、ln –s :ln是linux建立链接的命令(类似快捷方式)
它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s软链接,不加s为硬链接,具体用法是:ln –s源文件目标文件
如,[root@localhost/]#ln -s /usr/local/nginx/sbin/* /usr/local/sbin
3、linux重启和关闭系统命令
重启命令:
1、reboot
2、shutdown -r now立刻重启(root用户使用)
3、shutdown -r 10过10分钟自动重启(root用户使用)
4、shutdown -r 20:35在时间为20:35时候重启(root用户使用)
关机命令:
1、halt 立刻关机
2、poweroff 立刻关机
3、shutdown -h now立刻关机(root用户使用)
4、shutdown -h 10 10分钟后自动关机
4、Linux chkconfig:Chkconfig命令用来设置,查看或更改配置开机自动启动的服务
https://www.centos.bz/2011/07/7-linux-chkconfig-command-examples/
5、chmod 用户权限命令
chmod –R 777 /tmp/ftp/
6、source命令用法:
source FileName
作用:在当前bash环境下读取并执行FileName中的命令。
注:该命令通常用命令“.”来替代。
如:source .bash_rc与 . .bash_rc是等效的。
注意:source命令与shell scripts的区别是,
source在当前bash环境下执行命令,而scripts是启动一个子shell来执行命令。这样如果把设置环境变量(或alias等等)的命令写进scripts中,就只会影响子shell,无法改变当前的BASH,所以通过文件(命令列)设置环境变量时,要用source命令。
source命令:
source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。
用法:
source filename 或 . filename
source命令除了上述的用途之外,还有一个另外一个用途。在对编译系统核心时常常需要输入一长串的命令,如:
make mrproper
make menuconfig
make dep
make clean
make bzImage
…………
如果把这些命令做成一个文件,让它自动顺序执行,对于需要多次反复编译系统核心的用户来说会很方便,而用source命令就可以做到这一点,它的作用就是把一个文件的内容当成shell来执行..
7、权限划分
rwxrwxrwx : r读,w写,x执行,r权重是4,w是2,x是1 。所以:
777=rwxrwxrwx ,读+写+执行第一个7是当前用户,第二个是当前用户组,第三个是其它用户,也就是对所有用户可以读写执行.
755=rwxr-xr-x ,当前用户读写执行,其它读+执行
-表示无此权限
4+2+1=7 是所有的权限
4+1=5 只有读和执行的权限,其他类推.
8、netstat:查看端口被谁占用
使用 netstat进行查看!
>netstat -noap | grep 80 | grep tcp
Proto Recv-Q Send-Q Local Address ForeignAddress State PID/Program name
-----------------------------------------------------------------------------------------------------------------
tcp 74160 138880 127.0.0.1:6150 127.0.0.1:6150 ESTABLISHED 3145/tnslsnr unkn-4 (52.04/0/0)
tcp 0 0 :::8009 :::* LISTEN 31550/java off (0.00/0/0)
tcp 0 0 :::8080 :::* LISTEN 31550/java off (0.00/0/0)
tcp 0 0 :::80 :::* LISTEN 24675/httpd off (0.00/0/0)
…
使用 lsof 进行查看!
谁在使用tcp8080端口
>/usr/sbin/lsof -i tcp:8080
COMMAND PIDUSER FD TYPE DEVICE SIZE NODE NAME
------------------------------------------------------
java 31550 root 109u IPv6 78687600 TCP*:webcache (LISTEN)
谁在使用22端口
>/usr/sbin/lsof -i:22
COMMAND PIDUSER FD TYPE DEVICE SIZE NODE NAME
sshd 2883 root 3u IPv6 7642 TCP *:ssh (LISTEN)
>/usr/sbin/lsof -i | grep http
uselib24 15272 apache4u IPv6 217212 TCP *:http (LISTEN)
uselib24 15272 apache 6u IPv6 217217 TCP *:https (LISTEN)
9.yum 命令安装问题
[Errno 14] "Failurewhen receiving data from the peer"
Trying other mirror. yum镜像数据库。解决办法:更新yum
# yum clean all
# rpm --rebuilddb
# yum update
10、查看当前所在路径命令:pwd
[~]# pwd
/data/Video
11、动态查看日志 tail -f
tail –f 文件名
tail -200 日志文件名 查看文件最后200条
12、# getsebool –a 查看所有Selinux 安全设置
(至此,《Linux环境部署(Centos+Nginx+Tomcat+Mysql) 》系列六篇文档全部完结!如有问题,请帮忙留言指正,我会仔细看每一篇留言,万分感谢!)
因为在网上发现系统性、严谨(特别是在安全方面)的Linux部署方面的参考文章很少,于是整理以下六篇Linux环境部署的系列性文章,其为本人在实践中,完整的搭建一个基于Linux系统上Centos+Nginx+Tomcat+Mysql+FTP的操作文档,梳理记录如下,特别是在实践中碰到的各种问题和容易出错的地方,都做了重要标注和提醒(踩过的那些坑,我都特别标注出来);希望对于那些想要系统地完整搭建Linux环境的程序员们一个系统性的参考。但因大部分都是边搭建边记录下的操作,必定有所疏漏,还望见谅; 如有问题和意见请帮忙在后面的评论中指出,万分感谢!另整个搭建的过程中参考了网上许多优秀博主的优秀实践,在文中末尾或者其他适当的地方都有所标注,如有必要,你可以按参考的链接阅读参考的原文章。本文档一共分为6篇,这6个部分分别是:
1、(一)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - FTP安装
2、(二)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 防火墙配置
3、(三)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - Nginx环境搭建
4、(四)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 安装Tomcat和JDK 以及 Nginx与Tomcat整合
5、(五)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - Mysql 安装
6、(六)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 一些常用命令总结
这篇系列性文章将会在以后的实践中持续地做修正和更新。
(在整理和记录这些文档的时候,对于我这个曾经从来不写博客的程序员来说,我发现的确收获良多,首先最重要的是对我的知识结构进行了一次重要的梳理和总结;另外,让我的思维和逻辑更加缜密;第三,强化和加深记忆;四,共享和分享的精神。
最后,希望对你有用。)
相关视频课程推荐《站长必修课:网站是怎样做出来的?》https://edu.51cto.com/sd/3be5b