linux配置

目录

1.maven安装

2.redis开机自动启动脚本

3.linux命令

1.赋予opt目录给guanjun这个用户权限 示例代码:

  2.文件复制并覆盖

4.linux启动图新桌面

1、转为root用户以获取权限。

2、更新系统。

3、安装 X Window System ,MATE Desktop 。

4、设置默认通过桌面环境启动服务器:

5、 安装完成后,通过 reboot 等指令重启服务器



1.maven安装

1.1.1地址:

https://maven.apache.org/download.cgi

1.1.2.将下载好的maven安装包放在磁盘的 /usr/local/ 目录下

apache-maven-3.8.6-bin.tar.gz

1.1.3.解压apache-maven-3.8.6-bin.tar.gz文件。如下图:

tar -zxvf apache-maven-3.8.6-bin.tar.gz

进入  并创建ck仓库

cd /usr/local/apache-maven-3.8.6
mkdir ck

1.1.4.进入cd conf目录,编辑 vi settings.xml文件,找到·localRepository下面复制一行加上<localRepository>/usr/local/apache-maven-3.8.6/ck</localRepository>, 在找到mirror 加上阿里的仓库配置,配置完成报错退出,如下图:

<localRepository>/usr/local/apache-maven-3.8.6/ck</localRepository>
<mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
       <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>
</mirror>

1.1.5.配置maven环境变量,编辑:vi /etc/profile 文件,翻到最后一行加上 
 

vi /etc/profile 
export MAVEN_HOME=/usr/local/apache-maven-3.8.6  

export PATH=$PATH:$MAVEN_HOME/bin  

1.1.6.重新加载一下,source /etc/profile 使新增配置生效

source /etc/profile

1.1.7.到此以安装完成,测试一下,输入命令:mvn -v 

mvn -v

2.redis开机自动启动脚本

1、设置redis.conf中daemonize为yes,确保守护进程开启。
2、编写开机自启动脚本
vi /etc/init.d/redis

#!/bin/sh
# chkconfig: 2345 10 90  
# description: Start and Stop redis
PATH=/usr/local/bin  #找到本机安装redis后,存放redis命令的目录
REDISPORT=6379 #端口号,这是默认的,如果你安装的时候不是默认端口号,则需要修改
EXEC=/usr/local/bin/redis-server #redis-server启动脚本的位置,你如果忘了可以用find或whereis找到
REDIS_CLI=/usr/local/bin/redis-cli #redis-cli客户端启动脚本的位置,你如果忘了可以用find或whereis找到
PIDFILE=/var/run/redis_6379.pid #这个也可以用find或whereis找到
CONF="/myredis/redis.conf"
case "$1" in
    start)  
        if [ -f $PIDFILE ]  
        then  
                echo "$PIDFILE exists, process is already running or crashed"  
        else  
                echo "Starting Redis server..."  
                $EXEC $CONF  
        fi  
        if [ "$?"="0" ]   
        then  
              echo "Redis is running..."  
        fi  
        ;;  
    stop)  
        if [ ! -f $PIDFILE ]  
        then  
                echo "$PIDFILE does not exist, process is not running"  
        else  
                PID=$(cat $PIDFILE)  
                echo "Stopping ..."  
                $REDIS_CLI -p $REDISPORT SHUTDOWN  
                while [ -x ${PIDFILE} ]  
               do  
                    echo "Waiting for Redis to shutdown ..."  
                    sleep 1  
                done  
                echo "Redis stopped"  
        fi  
        ;;  
   restart|force-reload)  
        ${0} stop  
        ${0} start  
        ;;  
  *)  
    echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2  
        exit 1  
esac

编写完成,保存
修改文件的权限为  可执行的   chmod 775 /etc/init.d/redis

 使用vim 打开文件
具体操作:
     (1)Shift + 分号
     (2)输入 set fileformat=unix
     (3)回车


测试一下redis 的启动
/etc/init.d/redis start
设置自动启动(/etc/init.d/redis前三行必须配置)
chkconfig redis on

3.linux命令

1.赋予opt目录给guanjun这个用户权限 示例代码:

# 将目录/opt 及其下面的所有文件、子目录的owner用户改成 liuhai
chown -R guanjun:guanjun /opt
#给目录opt设置权限
chmod 760 /opt 

  2.文件复制并覆盖

\cp -rf  /opt/startup.sh /usr/local/nacos/nacos8850/bin
 3. 基本命令
cd change directory :英文释义是改变目录)切换目录
pwd print working directory :显示当前工作目录的绝对路径)
ls ls list 的缩写,查看列表)查看当前目录下的所有文件夹( ls 只列出文件名或目录名)
ll
ll list 的缩写,查看列表详情)查看当前目录下的所有详细信息和文件夹( ll 结果是详细 , 有时间 ,
是否可读写等信息)
touch touch :创建文件)创建文件
mkdir mkdir :创建目录) 创建目录
cat concatenate :显示或把多个文本文件连接起来)查看文件命令(可以快捷查看当前文件的内
容)(不能快速定位到最后一页)
more more :更多的意思)分页查看文件命令(不能快速定位到最后一页)
cd ../ ; 跳到上级目录
cd /opt ; 不管现在到那直接跳到指定的 opt 文件夹中
cd ~ ; 切换当前用户的家目录。 root 用户的家目录就是 root 目录。
pwd
显示当前的绝对路劲
ls -a ; 显示所有文件夹 , 隐藏文件也显示出来
ls -R ; 连同子目录一起列出来
ll -a ; 显示所有文件 , 隐藏文件也显示出来
ll -R ; 连同子目录内容一起列出来
ll -h ; 友好展示详情信息 , 可以看大小
ll -al ; 即能显示隐藏文件又能显示详细列表。
touch test.txt ; 创建 test.txt 文件
touch /opt/java/test.java ; 在指定目录创建 test.java 文件
mkdir 文件夹名称 ; 在此目录创建文件夹
mkdir /opt/java/jdk ; 在指定目录创建文件夹
cat lj.log ; 快捷查看文件命令
Ctrl + c ; 暂停显示文件
Ctrl + d ; 退出查看文件命令 less lese :较少的意思)分页查看文件命令(可以快速定位到最后一页)
tail (尾巴) 查看文件命令(看最后多少行)
cp copy 单词缩写,复制功能)
mv move 单词缩写,移动功能,该文件名称功能)
rm
remove :移除的意思)删除文件,或文件夹
fifind fifind :找到的意思)查找指定文件或目录
回车:向下 n 行,需要定义,默认为 1 行。
空格键:向下滚动一屏或 Ctrl+F
B :返回上一层或 Ctrl+B
q :退出 more
less -m 显示类似于 more 命令的百分比。
less -N 显示每行的行号。 ( 大写的 N)
两参数一起使用如: less -mN 文件名,如此可分页并显示行号。
空格键:前下一页或 page down
回车:向下一行。
b :后退一页 或 page up
q :退出。
d :前进半页。
u :后退半页
tail -10 ; 文件名 看最后 10
cp /opt/java/java.log /opt/logs/ ; java.log 复制到 /opt/logs/
cp /opt/java/java.log /opt/logs/aaa.log ; java.log 复制到 /opt/logs/ 下并且改名为
aaa.log
cp -r /opt/java /opt/logs ; 把文件夹及内容复制到 logs 文件中
mv /opt/java/java.log /opt/mysql/ ; 移动文件到 mysql 目录下
mv java.log mysql.log ; java.log 改名为 mysql.log
-f --force 强制删除文件或目录。删除文件不包括文件夹的文件
-r -R --recursive 递归处理,将指定目录下的所有文件及子目录一并删除。
-rf 强制删除文件夹及内容
rm 文件名 ; 安全删除命令 ( yes 删除 no 取消)
rm -rf 强制删除文件夹及内容
rm -rf * 删除当前目录下的所有内容。
rm -rf /* 删除 Linux 系统根目录下所有的内容。系统将完蛋。 vi VIsual :视觉)文本编辑器 类似 win 的记事本 (操作类似于地下的 vim 命令,看底下 vim 的操
作)
vim VI IMproved :改进版视觉)改进版文本编辑器 (不管是文件查看还是文件编辑 按 Shift + 上或
者下可以上下移动查看视角)
| 管道命令(把多个命令组合起来使用)
* 表示 0~ 多个任意字符。
find -name 文件名 ; 按照指定名称查找在当前目录下查找文件
find / -name 文件名按照指定名称全局查找文件
find -name '* 文件名 ' ; 任意前缀加上文件名在当前目录下查找文件
find / -name '* 文件名 *' ; 全局进行模糊查询带文件名的文件
输入 ”vim 文件名 打开文件,刚刚时是 一般模式
一般模式:可以浏览文件内容,可以进行文本快捷操作。如单行复制,多行复制,单行删除,多行删除,(退
出)等。
插入模式:可以编辑文件内容。
底行模式:可以进行强制退出操作 , 不保存 :q!
可以进行保存并退出操作 :wq
按下 ”i” ”a” ”o” 键,从 一般模式 ,进入 插入模式(编辑模式)
在编辑模式下按 ”Esc” 即可到一般模式
在一般模式下按 ”:” ,冒号进入底行模式。
在一般模式下的快捷键
dd ; 删除一整行
X ; 向前删除 等同于 windowns 系统中的删除键
x ; 向后删除和大写 x 相反方向
Ctrl + f ; 向后看一页
Ctrl + b ; 向前看一页
u ; 撤销上一步操作
/word ; 向下查找 word 关键字 输入 :n 查找下一个 ,N 查找上一个(不管是哪个查找都是全局查找 只不过
n 的方向相反)
?log ; 向上查找 log 关键字 输入 :n 查找上一个 ,N 查找下一个
:1,90s/redis/Redis/g ; 1-90 行的 redis 替换为 Redis 。语法 n1,n2s/ 原关键字 / 新关键字 /g n1
代表其实行 ,n2 代表结尾行 ,g 是必须要的
:0 ; 光标移动到第一行
:$ ; 光标移动到最后一行
:300 ; 光标移动到 300 , 输入多少数字移动到多少行
:w ; 保存
:w! ; 强制保存
:q ; 退出
:q! ; 强制退出
5dd ; 删除后面 5 , 打一个参数为自己填写
5x ; 删除此光标后面 5 个字符
d1G ; 删除此光标之前的所有
d0 ; 从光标当前位置删除到此行的第一个位置
yy ; 复制
p ; 在光标的下面进行粘贴
P ; 在光标的上门进行粘贴 grep grep :正则表达式)正则表达式,用于字符串的搜索工作 ( 模糊查询 ) 。不懂可以先过
yum install -y lrzsz 命令(实现 win Linux 文件互相简单上传文件)
tar (解压 压缩 命令)
ps process status :进程状态,类似于 windows 的任务管理器)
管道命令的语法:命令 1 | 命令 2 | 命令 3
单独使用:
grep String test.java ;在 test.java 文件中查找 String 的位置,返回整行
一般此命令不会单独使用下面列几个常用的命令(地下通过管道命令组合起来使用)
ps aux|grep java ;查找带 java 关键字的进程
ll |grep java ;查找带 java 关键字的文件夹及文件
# (实际上就是在 Linux 系统中下载了一个插件)下了了此安装包后就可以实现 win 系统到 linux 之间拉文件拉
文件
# 等待下载完了就可以输入:
rz win 系统中选择文件上传到 Linux 系统中
sz 文件名 选择 Linux 系统的文件复制到 win 系统中
常用的组合命令:
-z 是否需要用 gzip 压缩。
-c 建立一个压缩文件的参数指令 (create) – 压缩
-x 解开一个压缩文件的参数指令 (extract) – 解压
-v 压缩的过程中显示文件 (verbose)
-f 使用档名,在 f 之后要立即接档中 (file)
常用解压参数组合: zxvf
常用压缩参数组合: zcvf
解压命令:
tar -zxvf redis-3.2.8.tar.gz ;解压到当前文件夹
tar -zxvf redis-3.2.8.tar.gz -C /opt/java/ ;解压到指定目录
压缩命令:(注意 语法有点反了,我反正每次都搞反)
tar -zcvf redis-3.2.8.tar.gz redis-3.2.8/ ; 语法 tar -zcvf 压缩后的名称 要压缩的
文件
tar -zcvf 压缩后的文件(可指定目录) 要压缩的文件(可指定目录)
常用组合: ps -ef 标准的格式查看系统进程
ps -aux BSD 格式查看系统进程
ps -aux|grep redis BSD 格式查看进程名称带有 redis 的系统进程(常用技巧)
// 显示进程的一些属性 , 需要了解( ps aux
USER // 用户名
PID // 进程 ID , 用来杀死进程的
%CPU // 进程占用的 CPU 的百分比
%MEM // 占用内存的的百分比 clear 清屏命令。(强迫症患者使用)
ifconfifig 命令
ping (用于检测与目标的连通性)语法: ping ip 地址
free 命令 (显示系统内存)
top 命令
netstat 命令
VSZ // 该进程使用的虚拟內存量( KB
RSS // 该进程占用的固定內存量( KB
STAT // 进程的状态
START // 该进程被触发启动时间
TIME // 该进程实际使用 CPU 运行的时间
kill 命令用来中止一个进程。(要配合 ps 命令使用,配合 pid 关闭进程)
ps 类似于打开任务管理器, kill 类似于关闭进程)
kill -5 进程的 PID ; 推荐 , 和平关闭进程
kill -9 PID ; 不推荐 , 强制杀死进程
用于查看和更改网络接口的地址和参数,包括 IP 地址、网络掩码、广播地址,使用权限是超级用户。(一般是
用来查看的,很少更改)
如果此命令输入无效,先输入 yum -y install net-tools
ifconfig
测试:
1、在 Windows 操作系统中

2 、再到 LInux 系统中输入 ping ip 地址
(公司电脑,我就不暴露 Ip , 没图片 自己去试)
Ctrl + C 可以停止测试。
# 显示系统内存使用情况,包括物理内存、交互区内存 (swap) 和内核缓冲区内存。
-b Byte 显示内存使用情况
-k kb 为单位显示内存使用情况
-m mb 为单位显示内存使用情况
-g gb 为单位显示内存使用情况
-s< 间隔秒数 > 持续显示内存
-t 显示内存使用总合
# 显示当前系统正在执行的进程的相关信息,包括进程 ID 、内存占用率、 CPU 占用率等
-c 显示完整的进程命令
-s 保密模式
-p < 进程号 > 指定进程显示
-n < 次数 > 循环显示次数 fifile (可查看文件类型)
重启 linux
关机 linux
同步时间命令
更改为北京时间命令
查看时间命令:
#Linux netstat 命令用于显示网络状态。
# 利用 netstat 指令可让你得知整个 Linux 系统的网络情况。
# 语法:
netstat [-acCeFghilMnNoprstuvVwx][-A< 网络类型 >][--ip]
file 文件名
Linux centos 重启命令: reboot
Linux centos 关机命令: halt
ntpdate ntp1.aliyun.com
rm -rf /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date

4.linux启动图新桌面

1.卸载

1、转为root用户以获取权限。

sudo su root


2、更新系统。

yum -y update


3、安装 X Window System ,MATE Desktop 。

yum groups install -y "MATE Desktop"
yum groups install -y "X Window System"


4、设置默认通过桌面环境启动服务器:

ln -sf /lib/systemd/system/runleve15.target /etc/systemd/system/default.target
#或
systemctl set -default graphical.target

5、 安装完成后,通过 reboot 等指令重启服务器

reboot


五、tomcat调优

1.查看jvm的信息

可以通过访问 http://localhost:8080/manager/status 可以查看jvm的信息。tomcat的管理员配置详见tomcat管理员配置。

2.配置jvm的信息

在对应linux下的tomcat版本中,修改 catalina.sh

vi /usr/tomcat/bin/catalina.sh

   注:/usr/tomcat/bin/catalina.sh 是 tomcat所在目录的bin目录  (linux环境下)

   找到 # OS specific support.  $var _must_ be set to either true or false.(大概在113行)

   在上句之前加入:

# CATALINA_OPTS
 
CATALINA_OPTS="-Dfile.encoding=UTF-8 -server -Xms8192m -Xmx8192m -Xmn4096m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:SurvivorRatio=10 -XX:MaxTenuringThreshold=15 -XX:NewRatio=2 -XX:+DisableExplicitGC"

根据服务器的内存设置相应的JVM参数大小,建议配置如下:

# 如果服务器只运行一个 Tomcat
# 服务器内存如果是 4G:
CATALINA_OPTS="-Dfile.encoding=UTF-8 -server -Xms2048m -Xmx2048m -Xmn1024m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:SurvivorRatio=10 -XX:MaxTenuringThreshold=15 -XX:NewRatio=2 -XX:+DisableExplicitGC"
# 服务器内存如果是 8G:
CATALINA_OPTS="-Dfile.encoding=UTF-8 -server -Xms4096m -Xmx4096m -Xmn2048m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:SurvivorRatio=10 -XX:MaxTenuringThreshold=15 -XX:NewRatio=2 -XX:+DisableExplicitGC"
# 服务器内存如果是 16G:
CATALINA_OPTS="-Dfile.encoding=UTF-8 -server -Xms8192m -Xmx8192m -Xmn4096m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:SurvivorRatio=10 -XX:MaxTenuringThreshold=15 -XX:NewRatio=2 -XX:+DisableExplicitGC"
# 服务器内存如果是 32G:
CATALINA_OPTS="-Dfile.encoding=UTF-8 -server -Xms16384m -Xmx16384m -Xmn8192m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:SurvivorRatio=10 -XX:MaxTenuringThreshold=15 -XX:NewRatio=2 -XX:+DisableExplicitGC"

3.设置JAVA_OPTS启动参数

  1.使用外部设置

 1.在apache-tomcat/bin目录下新建setenv.sh文件

touch setenv.sh


在tomcat8的catalina.sh中,针对如何设置环境变量进行了注释说明,不要直接在catalina.sh中设置环境变量。需要在在apache-tomcat/bin目录下新建setenv.sh文件,专门存放自定义的环境变量。

2.编辑setenv.sh文件,添加环境变量

export JAVA_OPTS="-server -XX:+UseG1GC -XX:MaxGCPauseMillis=500 -XX:+AggressiveOpts -Xms8g -Xmx8g -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/data/log/"

增加的参数作用:

-server:一定要作为第一个参数,在多个CPU时性能佳

-Xms:初始Heap大小,使用的最小内存,cpu性能高时此值应设的大一些

-Xmx:java heap最大值,使用的最大内存

上面两个值是分配JVM的最小和最大内存,取决于硬件物理内存的大小,建议均设为物理内存的一半。

-Xms8g:初始化堆内存8g

-Xmx8g : 最大堆内存8g,一般设置为物理内存的3/8~4/8,并且和初始堆内存大小一致。设置成一致为了避免在生产环境由于heap内存扩大或缩小导致应用停顿,降低延迟,同时避免每次垃圾回收完成后JVM重新分配内存。

-XX:+HeapDumpOnOutOfMemoryError :生产环境必须设置的参数,当堆抛出OOM错误时,dump出当前的内存堆转储快照。

-XX:HeapDumpPath=${目录}参数表示生成DUMP文件的路径,也可以指定文件名称,例如:-XX:HeapDumpPath=${目录}/java_heapdump.hprof。如果不指定文件名,默认为:java_<pid><date><time>_heapDump.hprof

-XX:+UseG1GC:优先启用G1垃圾回收器。它是一种服务器式垃圾回收器,针对具有大量RAM的多处理器机器。它以高概率满足GC暂停时间为目标,同时保持良好的吞吐量。G1垃圾回收器推荐用于需要大内存(大小约6 GB或更大)的应用,并要求有限的GC延迟要求(稳定和可预测的暂停时间低于0.5秒)。

-XX:MaxGCPauseMillis=500:设置最大GC暂停时间的目标值(以毫秒为单位)。这是一个柔和的目标,JVM将尽其最大努力来实现它。默认情况下,没有最大暂停时间值。

-XX:+AggressiveOpts:允许使用积极的性能优化功能,预计这些功能将在即将发布的版本中成为默认功能。默认情况下,此选项被禁用,并且不使用这些带实验性的性能优化功能。
 

6.安装jdk

场景
去官网或者网上下载jdk1.8的tar包

https://www.oracle.com/cn/java/technologies/javase/javase-jdk8-downloads.html

这里下载的是

jdk-8u162-linux-x64.tar.gz

这里将其上传到/usr/local目录下
在此目录下新建java目录

cd /usr/local
mkdir java


然后将上面的tar包解压

tar -zvxf jdk-8u162-linux-x64.tar.gz  -C /usr/local/java/


会在当前目录下生成java目录

然后修改环境变

vi /etc/profile


在文件末尾添加

export JAVA_HOME=/usr/local/java/jdk1.8.0_162
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib


注意这里的JAVA_HOME要和自己的路径对应,这里只适应当前情况。

然后使配置生效

source /etc/profile


输入

java -version

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值