linux项目环境部署入门
linux目录
/bin 二进制可执行命令 (ls,cat,mkdir等)
/dev 设备特殊文件
/etc 系统管理和配置文件
/etc/rc.d 启动的配置文件和脚本
/opt 额外安装的可选应用程序包所放置的位置。一般情况下,我们可以把tomcat等都安装到这里。
/home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示
/lib 标准程序设计库,又叫动态链接共享库,作用类似windows里的.dll文件
/sbin 超级管理命令,这里存放的是系统管理员使用的管理程序,如ifconfig等。
/tmp 公共的临时文件存储点
/boot 存放用于系统引导时使用的各种文件
/root 系统管理员的主目录
/mnt 系统提供这个目录是让用户临时挂载其他的文件系统
/lost+found这个目录平时是空的,系统非正常关机而留下“无家可归”的文件(windows下叫什么.chk)就在这里
/proc 虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
/var 某些大文件的溢出区,比方说各种服务的日志文件
/usr 最庞大的目录,要用到的应用程序和文件几乎都在这个目录
linux下部署常用命令
文件操作:
cat 显示文件内容和合并多个文件
clear 清屏
chattr 改变文件属性
chgrp 改变文件组权
chmod 改变文件或目录的权限
chown 改变文件的属权
comm 比较两个已排过序的文件
crontab 定时执行命令
cp 将文件拷贝至另一文件
dd 从指定文件读取数据写到指定文件
df 报告磁盘空间使用情况
diff 比较两个文本文件,列出行不同之处
du 统计目录/文件所占磁盘空间的大小
file 辨识文件类型
emacs 功能强大的编辑环境
find 搜索文件并执行指定操作(find2)
grep 按给定模式搜索文件内容
head 显示指定文件的前若干行
less 按页显示文件
ln 创建文件链接
locate 查找符合条件的文件
more 在终端屏幕按帧显示文本文件
mv 文件或目录的移动或更名
rm/rmdir 删除文件/目录
sed 利用script来处理文本文件
sort 对指定文件按行进行排序
tail 显示指定文件的最后部分
touch 创建文件
tr 转换字符
vi 全屏编辑器
wc 显示指定文件中的行数,词数或字符数
which 在环境变量 $PATH 设置的目录里查找符合条件的文件
压缩与备份:
bzip2/bunzip2 .bz2文件的压缩/解压缩程序
cpio 备份文件
dump 备份文件系统
gzip/gunzip .gz文件的压缩/解压缩程序
gzexe 压缩可执行文件
restore 还原由倾倒(Dump)操作所备份下来的文件或整个文件系统(一个分区)
rsync 远程同步
tar 将若干文件存档或读取存档文件
unarj 解压缩.arj文件
zip/unzip 压缩/解压缩 zip文件
zipinfo 列出zip压缩文件的详细信息
磁盘操作:
cd/pwd 切换目录/显示当前工作目录
df 显示磁盘的相关信息
du 显示目录或文件的大小
e2fsck 检查ext2/ext3文件系统的正确性
fdisk 对硬盘进行分区
fsck 检查文件系统并尝试修复错误
losetup 设置循环设备
ls 列出目录内容
mkdir 创建目录
mformat 对MS-DOS文件系统的磁盘进行格式化
mkbootdisk 建立目前系统的启动盘
mke2fs 建立ext2文件系统
mkisofs 制作iso光盘映像文件
mount/umount 加载文件系统/卸载文件系统
quota 显示磁盘已使用的空间与限制
sync 将内存缓冲区内的数据写入磁盘
tree 以树状图列出目录的内容
系统操作:
alias 设置指令的别名
chkconfig 检查,设置系统的各种服务
clock 调整 RTC 时间
date 显示或设置系统时间与日期
dmesg 显示开机信息
eval 重新运算求出参数的内容
exit 退出目前的shell
export 设置或显示环境变量
finger 查找并显示用户信息
free 显示内存状态
hostid 显示主机标识
hostname 显示主机名
id 显示用户标识
kill 删除执行中的程序或工作
last 列出目前与过去登入系统的用户相关信息
logout 退出系统
lsmod 显示已载入系统的模块
modprobe 自动处理可载入模块
passwd 设置用户密码
ps process status 报告程序状况
reboot 重启计算机
rhwo 查看系统用户
rlogin 远程登入
rpm 管理Linux各项套件的程序
shutdown 关机
su switch user 变更用户身份
top 显示,管理执行中的程序
uname 显示系统信息
useradd/userdel 添加用户 / 删除用户
userinfo 图形界面的修改工具
usermod 修改用户属性,包括用户的shell类型,用户组等,甚至还能改登录名
w 显示目前注册的用户及用户正运行的命令
whereis 确定一个命令的二进制执行码,源码及帮助所在的位置
who 列出正在使用系统的用户
whois 查找并显示用户信息
网络通信:
arp 网地址的显示及控制
ftp 文件传输
lftp 文件传输
mail 发送/接收电子邮件
mesg 允许或拒绝其他用户向自己所用的终端发送信息
mutt E-mail管理程序
ncftp 文件传输
netstat 显示网络连接、路由表和网络接口信息
nslookup 查询机器的IP地址和其对应的域名
pine 收发电子邮件,浏览新闻组
ping 向网络上的主机发送 icmp echo request 包
ssh 安全模式下的远程登录
telnet 远程登录
talk 与另一用户对话
traceroute 显示到达某一主机所经由的路径及所使用的时间
wget 从网络上自动下载文件
write 向其他用户的终端写信息
tomcate配置文件注意事项
1、java 环境配置
步骤1:查看当前系统中JAVA
rpm -qa|grep java
删除存在的java
rpm -e java-x.x.x-gcj-compat-x.x.x.x-xxjpp
如果现实进展依赖 无法删除 ,则:
rpm -e --nodeps java-x.x.x-gcj-compat-devel-x.x.x.x-xxjpp
步骤2:
安装JDK,首先JDK可通过两种方式获取,项目提供版本JDK,或者通过linux下载
方法1:在/usr 下面创建java目录
将上传的jdk 通过 cp 或者mv 名称 放到 /usr/java 目录下
解压jdk到这个目录,解压命令常用:unzip、gunzip、unrar(家参数 x)、tar (参数 zxvf )...
得到一个jdk文件夹 如:jdk1.8.0_60
方法2:
上传jdk到普通用户家目录,通过./jdk... 或者 sh jdk... 的方式安装
查看jdk版本和安装路径
rpm -qa | grep jdk
rpm -ql jdk版本
注:二者有顺序关系,先查看版本 再根据版本查看jdk路径 这个路径是用来配置环境变量的
步骤3:
环境变量配置
编辑/etc/profile 文件 命令可使用 vi or vim
在文件中 增加
JAVA_HOME=/usr/jdk --此处表示JDK的安装路径
CLASSPATH=$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH
export JAVA_HOME="/opt/jdk1.8.0_191" --JDK版本
export PATH=$JAVA_HOME/bin:$PATH
这个环境变量需要注意这个安装版本和安装路径
步骤三:
安装tomcate 上传的方式,在普通用户下解压,得到一个tomcate文件夹,这个目录可以修改的
tomcat需要注意日志的配置和server.xml的配置
log4j的配置根据项目配置
server.xml
有三个端口需要注意:
首先停服务的端口:
<Server port="8384" shutdown ... 这个端口使用来停服务的(具体干嘛的我也不清楚)
<Connector port="19998".. 这个端口是浏览器访问的端口
Connector port="18080" ... scheme="https" ... 这个端口后面包含了 scheme="https" ,浏览器需要通过https访问的端口,https访问需要安装证书,这个安全证书生成的方式很多,具体不说了,太多了
以上三个端口有顺序关系, 注意:里面的address="xxx.xxx.xxx.xxx"这个配置IP是本机的IP,最后面的Context 这个配置是加固板的Tomcat才有的,版本归档的war包,那么这个压缩包就不用手动解压了,可以直接启动服务。自动解压
说明:通过这个端口不能跟我这台服务器已存在的端口重复,否则启服务会报错,查询端口是否存在或者是否开启:lsof -i: 端口 或者 netstat -anp | grep 端口 方法很多 可自己学习
如何端口被进程占用 可杀死进程ID 即 PID 命令 kill -9 PID (扩展:查看应用的进程:ps -ef | grep 应用(oracle、java、tomcat...))
步骤4:
通常浏览器访问的URL格式:http://IP:端口/文件路径 解释:ip表示我服务器的IP,端口指tomcat中server.xml的配置的端口,上面已经解释,文件路径是我版本包的路径:tomcat/webapps/包目录名称
步骤5:
jdbc.properties配置文件,这个文件用来配置连接数据库的 一个项目呈现出页面,页面的数据存放在数据库的(正常一个项目2个用户,我参加的项目见过最多配置三个用户,多出来的用起启安全作用,这个用户只能查,不能增删该,自己领悟了),如何连接数据库就是通过jdbc.properties连接的
jdbc.properties里面配置用户格式:
bme.driver=oracle.jdbc.driver.OracleDriver
bme.url=jdbc:oracle:thin:@ip:端口/实例
bme.username=
bme.password=加密的密码
bme.testsql=select count(*) from dual
bme.active = 8
bme.minidle = 8
bme.maxidle = 8
bme.maxwait = 60000
bme.checkAfterUsed=true
解释: 上面的ip指:oracle安装的服务器IP,端口指oracle配置的端口,实例指的oracle数据库实例,不理解在oracle环节去了解,后面的参数指:连接最大个数,最大等待时间等等 这个很简单,用多了就知道了
步骤6:
启服务和停服务:命令sh startup.sh / sh shutdown.sh ./startup.sh 也可以 看个人爱好
启服务注意事项:
正常的情况不说了,说一下异常的
1、检查是否部署成功,最low的方法就是去页面访问,url就不说了 上面有格式
2、通过日志查看tomcat是否启动成功
tomcat中有catalina.out日志
正常启动爆出的日志是:
2019-06-20 18:14:37,881 [localhost-startStop-1] INFO [Context] Container context is initialized successfully! [cost 4349ms]
2019-06-20 18:14:37,897 [localhost-startStop-1] INFO [Fixture]Starting meta........................................................[cost 15ms]
2019-06-20 18:14:38,603 [localhost-startStop-1] INFO [Fixture]Starting das.........................................................[cost 706ms]
2019-06-20 18:14:38,625 [localhost-startStop-1] INFO [Fixture]Starting orm.........................................................[cost 22ms]
可以开两个创建 一个启服务,一个监听日志
监听日志命令 tail -200f catalina.out,实时打印日志的,-200意思是打印200行,这个命令用来测试发现阻塞性问题是 打印日志的
说明几个我常遇到的报错日志:
1、端口占用 很容易处理 日志展示端口了 检查方法不说了,规避方法可以修改server.xml中的端口,三个端口哦
2、句柄数数不足,解释:说明叫句柄不足,linux中一个目录有最大打开数(这个打开的意思就是页面点击一次,后台就打开一次,我遇到爬虫一直打开,报句柄不足,这个经常报),修改配置文件,自己百度了
3、内存溢出了,英文写不来,我能认得,单词不会写,可百度,意思就是文件满了,日志文件大写限定或者tomcat目录下 work目录和temp目录 (缓存目录)可以随便删,命令 rm -rf 内存溢出很难解决,我遇到很多种内存溢出的日志
4、jdbc配置有问题,日志报:databases啥啥啥的 很容易看懂,检查jdbc
5、权限问题,日志中出现Insufficient permissions啥啥啥的,如果是用户使用权限,一个命令解决 全目该权限,系统用户:chown -R 所属用户:所属组 tomcat目录,-R 修改目录一下所有文件目录权限,如果是操作权限的话,日志会打印出详细文件权限 chmod 赋权 太简单 太多了 自己百度
以上是部署环境常见的文件,算入门了,了解linux中很多配置文件,后台更熟练的话,基本上服务器这一块一通百通
如果命令不会 自己百度 命令和参数太多了 没办法一个一个写,熟能生巧
linux项目环境部署入门的更多相关文章
- Linux中java项目环境部署,简单记录一下
这里只是简单的记录一下linux环境下面如何快速的搭配好环境,使你的项目能在linux环境上面运行. 很多时候,我们都是用windows环境进行配置调试的,而真正很多服务器都是在linux服务器上面的 ...
- Linux项目自动部署
场景:linux中自动部署项目在工作中经常遇到,快速高效的部署项目能够大幅提高工作效率.现在将项目部署的过程记录下来,以供参考,其中用到的知识点现在还有很多不很清楚,后面要好好琢磨琢磨! 1 项目部署 ...
- LINUX测试环境部署nginx(五)
安装配置nginx 安装编译环境:yum -y install pcre-devel openssl openssl-devel 拷贝nginx压缩文件到目标目录后,解压tar -zxvf nginx ...
- (转)LINUX测试环境部署Redis(四)
安装配置Redis 第一部分:安装redis 希望将redis安装到此目录 1 /usr/local/redis 希望将安装包下载到此目录 1 /usr/local/src 那么安装过程指令如下: ...
- linux 项目环境搭建配置
经过三天加一上午的努力折腾,本地项目终于跑起来了,linux系统,重装后需要安装基本的php,nginx,mysql.php扩展需要安装curl ,memcache,memcached等.然后就是修改 ...
- linux 项目自动部署脚本
1.使用maven获取源码部署,并可替换配置文件(金融数据分析平台) #!/bin/bash#设置变量cd /home#停止tomcatecho "开始停止tomcat..." p ...
- LINUX测试环境部署manggo(六)
安装配置manggo 复制安装包mongodb-linux-x86_64-2.6.5.tgz到/usr/local/目录下,或者如果有网络可以直接使用wget命令下载安装包到/usr/local目录下 ...
- LINUX测试环境部署mysql(三)
安装配置mysql 1.安装 查看有没有安装过: yum list installed mysql* rpm -qa | grep mysql* 查看有没有安装包: yum list mysql* 安 ...
- nodejs puppeteer linux(centos)环境部署以及用puppeteer简单截图
1.安装Node环境 如果有安装Node请忽略第1点 #下载cd /usr/local/srcwget https://nodejs.org/dist/v10.15.3/node-v10.15.3-l ...
随机推荐
- css:音乐唱片机随着播放暂停而旋转暂停
唱片机由两部分组成,一个是磁针,另一个是唱片 1. 先完成磁针随着播放按钮进行是否在唱片上的切换 原理:将播放暂停状态存入布尔值isbtnShow中,根据isbtnShow的值切换磁针的class. ...
- 渗透测试之sql注入验证安全与攻击性能
由于渗透测试牵涉到安全性以及攻击性,为了便于交流分享,本人这里不进行具体网址的透露了. 我们可以在网上查找一些公司官方网站如(http://www.XXXXXX.com/xxxx?id=1) 1.拿到 ...
- 洛谷 P2629 好消息,坏消息 题解
暴力算法的时间复杂度是O(n^2),考虑优化: 先导入一种思想--断环为链.说通俗点就是在原数组后面再接上下标为1--(n - 1)的元素: 以样例为例:-3 5 1 2:我们将其断环为链后可以得到这 ...
- CentOS8设置国内镜像源(阿里云镜像)
CentOS8设置国内镜像源(阿里云) 1.备份原有配置 [root@localhost ~]# mkdir /etc/yum.repos.d.bak [root@localhost ~]# mv / ...
- Ubuntu Linux处理Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-frontend. It is held by process 3365 (unattended-upgr)问题
问题 在Ubuntu中,执行apt install后,出现以下问题: Waiting for cache lock: Could not get lock /var/lib/dpkg/lock-fro ...
- php 访问控制可见性 public protected private
对属性或方法的访问控制,是通过在前面添加关键字public(公有),protected(受保护的),private(私有)来实现. 被定义为公有的类成员可以在任何地方被访问. 被定义为受保护的类成员则 ...
- SAP PP- OPK8生产订单打印 配置Smart form.
OPK8 正常情况下是不可以配置Smart form 的 OPK8进入工单打印配置界面,选择Forms, 你会发现只有Script form 和PDF form(Adobe form)可选的,没有配置 ...
- SAP Web Dynpro-版本管理
您可以使用版本管理来管理对象的旧版本,比较版本,也可以重置它们. 在版本管理中,您可以存储ABAP开发对象的不同版本. 在ABAP工作台中,您可以比较不同版本的- 视图 视窗 控制器 您也可以存储对象 ...
- Linux目录结构和文件类型
文件系统目录结构 根(/)是所有文件的入口,类似于倒状的树 以 . 开头的文件为隐藏文件 文件路径之间用/分隔,包括路径在内文件名称最长4095个字节 文件名除了斜杠和NUL都可以,文件名的最大长度是 ...
- 利用IDEA搭建SpringBoot项目,整合mybatis
一.配置文件.启动项目 生成之后这几个文件可以删掉的 配置application spring.datasource.url=jdbc:mysql://localhost:3306/test?serv ...