常用的linux命令记录
部署服务器需要用到的命令,记录一下,有需要的也可以看看:
1、一个新的服务器需要先检查一下服务器的内存、磁盘、核数、网络这些的(我暂时用到的是这几个)
top: 查看进程,在此基础上再按1即可查看:linux核数 + 内存
查看磁盘: df -lh 查看目录占用大小:du -lh
至于网络:ping tech.meituan.com,要是不能访问外网就傻了(排除内网环境的情况)
ifconfig:查看当前ip地址 还有就是,有些挂载的磁盘在 /dev/vdb 目录,需要格式化挂载到/data目录下,可参考上一篇博文: http://study121007.iteye.com/blog/2297693 , 此处可能还会用到:ln -s 源目录 目标目录。为 /dev/vdb 创建一个软连接,说白了就是创建一个快捷 方式,当在源目录下做修改时,则目标目录下也会相应的被修改。
2、安装JDK(1.8)
将jdk压缩包存放到 /usr/local/目录下解压,有时候还需要修改jdk目录下的文件权限:
chmod -R 777 start*:批量修改以start开头的文件权限 ( 因为不修改权限,系统仍会使用默认的jdk版本1.7 )
再配置一下环境变量( /etc/profile )
export JAVA_HOME=/usr/local/jdk export PATH=$JAVA_HOME/bin:$PATH 退出保存好之后执行:source /etc/profile 编译一下文件让修改生效
3、文件解压缩
tar压缩:tar -zcvf file.tar.zip file 解压tar:tar -zxvf file.tar.zip 解压zip:unzip xxx.zip 解压war:jar -xvf xxx.war
4、安装Nginx(后续再详细介绍Nginx)
可访问外网时就在线安装的,yum install nginx
在CentOS6上,有的可能直接yum还不行,需要下载一下资源:
rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/ nginx-release-centos-6-0.el6.ngx.noarch.rpm
安装好之后,进如 /etc/nginx/conf.d/default.conf 修改一下配置信息(此处简单展示一下):
server { listen 80; server_name localhost; location /[此处为应用名称,若不写则为当前域名的根目录] { proxy_pass http://127.0.0.1:8080; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; } ....... } (若应用名称为search,则当访问www.xxx.com/search的时候nginx 80端口实际是转发到 127.0.0.1:8080/search应用上,也就是说最终跳转的路径为 proxy_pass + 应用名称)
手动安装的可自己配置环境变量:(yum在线安装的目录为:/etc/nginx)
export NGINX_HOME=/usr/local/nginx (这是手动安装时的目录) export PATH=$NGINX_HOME/sbin:$PATH ulimit -HSn 65535 顺便配置一下可供打开的最大文件数 (顺便多说一句之前有碰到过的一个问题,前端做网站的公司没做缓存,网站访问量又很大,大量的调用我 们的接口,导致一直抛”打开的文件数过多“错误,日志也一直记载,导致几天下来日志文件夹大小达到49G 占用了太多的空间,整个应用服务就死掉了。之前有考虑的解决方案:使用ehcache来做缓存 + nginx的 缓存,但效果不是很好还是有死机的情况,后来就没用了。之后解决方案是:让他们加上缓存)
service nginx configtest:检查nginx是否配置成功,新的服务器一般都不支持service命令了,而是systemctl
service nginx restart:重启nginx(这是支持service命令的服务器),至于不支持的可使用如下:
启动:nginx
重启:nginx -s reload
其他详细命令使用nginx -h查看帮助里面有更多的介绍,如下
手动安装nginx时有时候会缺少编译环境: yum install gcc gcc-c++ ncurses-devel perl