文章目录
liunx相关命令,主要包括服务启动及各种常用命令
1.基本命令
操作类型 | 操作命令 | 说明 |
---|---|---|
查询匹配的进程 | ps -ef | grep ‘name’ | name 为相关的进程名称,如java,nginx或者服务名 |
查询绑定的端口 | netstat -nap | grep ID | ID为进程ID或端口 |
查询地址 | lsof -p pid | 根据进程ID查询地址 |
关闭进程 | kill -9 pid | 根据进程ID关闭进程 |
全局收索 | find / -name [文件名] | ‘/’ 为根路径,模糊搜索文件名加 * |
解压 | unzip -o dist.zip | -o 不询问覆盖文件 或者使用 tar -zxvf ‘**.tar’ |
压缩 | zip -r dist.zip dist/ | 或者 tar -cvf **.tar dist |
重启 | shutdown -r now | 为系统当前时间 |
查看日志 | tail -fn 100 nohup.out | 查看最后一百条日志 |
删除缓存文件 | find [文件路径] -type f -mtime +20 -exec rm {} ; | 删除20天内未访问的文件 |
创建文件夹 | mkdir -p [文件路径] | 加 -p 后创建不存在的父文件夹 |
权限 | chmod -R 744 [文件路劲] | -R:修改目录以下所有的权限,+:表示添加权限,-:表示删除权限,=:重置权限。-[rw-][r–][r–].其中第一个[-]代表的是类型,为d代表目录,r 读,w 写,x执行。每三位代表一个权限位,分别是所有者权限,群组权限,其他人权限。u:所有者,g:群组,o:其他人,a:全部 |
查看磁盘空间大小 | df -h | 查看磁盘信息 |
查看当前目录占用大小 | du -h [文件路径] | 为空则查询当前目录大小,为 * 则查询当前目录下所有文件的大小 |
使用内存情况 | free -m | totel:机器总的物理内存 used:已使用的内存 free:空闲的物理内存 |
2.启动服务命令
操作类型 | 操作命令 | 说明 |
---|---|---|
jar 启动 | nohup java -jar ljdy-gateway.jar --server.port=8888 > ./nohup.out 2>&1 & | 静默,多个配置用空格分开; --配置项=值 --spring.config.location=/root/**.yml,/root/**.yml 使用外部配置文件 |
tomcat 启动 | ./startup.sh | 进入bin 目录启动 |
nginx 启动 | sbin/nginx -c conf/nginx.conf | 进入nginx文件,指定配置文件启动 |
Minio 启动 | nohup ./minio server data > minio.log 2>&1 & | 静默启动 |
Mysql 启动1 | service mysql start (或 /etc/init.d/mysqld --defaults-file=/etc/my.cnf --user=root) | 通过服务启动(通过配置文件启动) |
Redis 启动 | ./redis-server /etc/redis/redis.conf | 指定配置文件启动 |
easyrtc 启动 | node server_ssl.js | 指定配置文件启动 |
naocs 单机启动 | ./startup.sh -m standalone | 单机启动 |
oracle 启动 | su - oracle – 切换到oracle账户下 sqlplus /nolog – 进入oracle语句环境 conn / as sysdba – 连接DBA startup --启动oracle服务 exit --(退出sqlplus) | oracleq常规启动 |
3.jar启动脚本
#! /bin/sh
#产品名称
pom_artifactId= jar名称
pom_packaging=jar
# 记录pid的文件路径
pid=${pom_artifactId}".pid"
#jar启动参数
Xmx=512m
Xms=256m
Xmn=256m
PermSize=128m
MaxPermSize=256m
logName=${pom_artifactId}
#jar包路径
jar_path=${pom_artifactId}.${pom_packaging}
jar_spring=${jar_path}" --spring.profiles.active=dev"
start(){
echo "检查java环境#"
echo "======================================================"
java -h
if [ $? -ne 0 ]
then
echo "不具备java环境!"
exit 1;
fi
echo "======================================================"
#判断jar包是否存在,存在则运行
if [ -f "${jar_path}" ]
then
echo -n "start ${pom_artifactId} ..."
export LANG='en_US.UTF-8'
export LC_ALL='en_US.UTF-8'
nohup java -Xmx${Xmx} -Xms${Xms} -Xmn${Xmn} \
-XX:PermSize=${PermSize} \
-XX:MaxPermSize=${MaxPermSize} \
-XX:+UseParNewGC \
-XX:+UseConcMarkSweepGC \
-XX:CMSFullGCsBeforeCompaction=3 \
-XX:CMSInitiatingOccupancyFraction=60 -jar ${jar_spring} >/dev/null 2>&1 & #注意:必须有&让其后台执行,否则没有pid生成
echo $! > ${pid} # 将jar包启动对应的pid写入文件中
[ $? -eq 0 ] && echo "[${pom_artifactId}服务启动成功!ok " && echo $! > ${pid} # 将jar包启动对应的pid写入文件中
else
echo "jarName 不存在 !"
exit 1;
fi
}
#停止方法
stop(){
echo -n "stop $pom_artifactId ..."
if [ -f "$pid" ]
then
PID=$(cat ${pid})
kill -9 $PID
[ $? -eq 0 ] && echo "[${pom_artifactId}服务停止成功!ok.......]"
rm -fr $pid
else
echo "[未发现${pom_artifactId}处于运行状态.....]"
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
printf 'Usage: server.sh { start|stop|restart}\n'
exit 1
;;
esac
4.docker命令
操作类型 | 操作命令 | 说明 |
---|---|---|
启动所有 | docker start $(docker ps -a | grep ‘ljdy-’ | grep ‘Exited’ | awk ‘{print $1}’) | awk '{print $1}'指定输出参数,即启动所有符合的服务ID |
查看容器 | docker ps | -a 为所有,-q 为返回容器ID |
启动 | docker start id | id 可为命令,如1 |
停止 | docker stop id | id 可为命令,如1 |
删除 | docker rm id | id 可为命令,如1 |
进入容器 | docker exec -it [容器ID或者容器名称] bash | 后面路劲有(/bin/sh,bash,sh) |
复制文件 | docker cp [id或服务名]:[docker文件路径] [本地文件路径] | 可交换路径,完成本地文件上传docker |
查看日志 | sudo docker logs -f -t --tail 10 容器ID | 查看服务日志最后十条,实时更新 |
5.jenkins
构建模块由上而下开始执行
5.1.常规打包
找到构建环境–执行shell 栏目,填充相关的执行脚本
# 加载环境变量
source /etc/profile
#maven打包
echo $(pwd | awk '{print $1}')
# 对需要的目录打包入maven,第一次则需全部打包
#mvn clean install
# 进入需要的目录打包
cd ../upms/upms-biz
mvn clean package
echo build succee
cd ./target/
echo $(pwd)
#停掉原程序
service_name="upms-biz.jar"
CID=$(ps -ef | grep $service_name | grep java | awk '{print $2}')
echo "CID $CID"
if [ -n "$CID" ]
then
kill -9 $(ps -ef | grep $service_name | grep java | awk '{print $2}')
echo 停止原服务成功
else
echo 原服务未启动
fi
BUILD_ID=dontKillMe
nohup java -jar $service_name --spring.profiles.active=dev >/home/java/log/"$service_name".out 2>&1 &
echo 启动服务成功
5.2.配置远程打包
1.需要先 配置远程服务器信息
系统管理–>系统配置–>找到 Publish over SSH–>配置远程服务器的相关信息
2.配置自定义工作空间(非必须),配置Git
2.找到构建环境–执行shell 栏目,填充相关的打包脚本
# 加载环境变量
source /etc/profile
#maven打包
echo $(pwd | awk '{print $1}')
cd ./upms/upms-api
mvn clean install
cd ../upms-biz
mvn clean package
3. 配置远程服务打包信息
4. 清理打包信息
为了节约空间,每次打完包以后,把多余的包删除,maven install 的执行完后可以直接 clean,而需要执行的包需要等远程执行完成后 在 maven clean
5.3.配置前端打包
1.配置nodejs
系统管理–>全局工具配置–>找到 nodejs–>配置安装目录和服务器(已安装nodejs的情况下)
2.新建的jenkins的任务中找到 构建环境配置使用的nodejs
3 执行打包,打包插件 npm cnpm yarn 选择其一
###
# npm切换为淘宝源
#npm config set registry http://registry.npm.taobao.org/
# 安装yarn
#npm i yarn -g
# yarn切换为淘宝源
#yarn config set registry https://registry.npm.taobao.org
###
# 安装项目中的依赖
#yarn
# 打包
yarn build
# 进入生成打包文件的目录
echo echo $(pwd)
#zip 打包
zip -r dist.zip dist/
#tar 打包
#tar -zcvf dist.tar.gz dist/**
4 配置远程服务器信息
5.4 自定义工作空间
可以使多个模块使用一个工作空间,节约磁盘空间,另外打完包以后,执行 maven clean
6.hadoop命令
操作类型 | 操作命令 |
---|---|
启动节点 | hdfs --daemon start datanode |
启动命名空间 | hdfs --daemon start namenode |
查看进程 | jps |
启动主机 | start-yarn.sh |
获取文件list | hadoop fs -ls [hadoop路径] |
文件下载 | hdfs dfs -get [hadoop路径] [本地路径] |
文件删除 | hadoop fs -rm -r -skipTrash [hadoop路径] |
文件修改 | hdfs dfs -put [hadoop路径] [本地路径] |
7.vue 相关命令
操作类型 | 操作命令 |
---|---|
降级打包 | npx -p npm@6 npm i --legacy-peer-deps |
安装 | npm install |
启动 | npm run dev |
打包 | npm run build |
查看自己的安装源 | npm config get registry |
更换npm源淘宝 | npm config set registry http://registry.npm.taobao.org/ |
更换npm为国内官方镜像 | npm config set registry http://registry.cnpmjs.org/ |
更新npm | npm i -g npm@(指定版本号/latest最新版本) |
8.git基本命令
操作类型 | 操作命令 |
---|---|
添加git远程地址 | git remote add origin ‘git仓库地址’ |
拉取代码 | git clone ‘git仓库地址’ |
显示所有分支 | git branch |
切换分支 | git checkout ‘分支名称’ |
更新代码 | git pull / git pull origin dev |
添加文件 | git add . |
提交代码到本地仓库 | git commit -m ‘提交备注’ |
推送本地代码 | git push / git push origin ‘分支名称’ |
新建分支 | git branch ‘分支名称’ |
删除分支 | git branch -d ‘分支名称’ |
合并分支 | git merge ‘分支名称’ |
9.liunx字体安装
1.安装 yum -y install fontconfig,然后fc-list查看当前字体(非必须)
2.将win下的 C:\Windows\Fonts 字体压缩后上传到 liunx目录的 /usr/share/fonts 下任意文件夹中解压即可
3.如果是放入其他文件夹非 fonts中,修改 /etc/fonts/fonts.conf 配置,在 <!-- Font directory list --> 下加入自定义字体路径
4.刷新缓存 sudo fc-cache -f -v ,然后fc-list 查看当前字体
10.liunx服务自启动
- 新增 自定义启动脚本 internet-all.sh.sh,填入自己需要启动的服务命令,并赋予执行权限 chmod 755 internet-all.sh(其中的sh 为 3中的脚本),内容示例:
2.执行 ./internet-all.sh,查看脚本是否执行正常,如果发生异常,检查路劲是否正常,及修改脚本的编码格式
1.vim internet-all.sh 打开后,输入 shift+q
2.输入 set ff 查看当前格式,如为 fileformat=dos 则需要重新设置
3.set ff=unix
4.wq 保存
示例,这里我已经修改过了,所以显示 fileformat=unix
3.进入 /etc/rc.d/,打开 rc.local,最开始添加 source /etc/profile,然后添加 自定义脚本启动命令 sh /opt/internet-all.sh