服务部署1.显示网络状态netstat -nltp或netstat -tplsof -i:9090表示查找端口9090的pid及所有线程2.强制杀死pid为12345的服务kill-9 123453.启动一个服务将日志输出到同级的demo.log文件中当xshell关闭后该服务仍在后台运行nohup java -jar demo.jar demo.log nohup java -jar demo.jar /dev/null 21 (控制台不打印日志)4.标记demo.log中www字符串vim demo.log/www5.保存退出Esc wq6.不保存退出Esc q!7.查看日志前100行日志tail -100f demo.log8.查看日志文件vim demo.log9.查看ip地址ifconfig10.查询本机的公网地址curl cip.cc11.redis的启动与关闭启动redis-server redis.conf 关闭1)redis-cli -h host -p port 2)auth all888 3)shutdown连接redis: redis-cli -h 10.32.1.253 -p 6379输入密码auth all888quit退出当前连接不关闭服务器查询key值keys * 或者 get key查询key值数量dbsize查询redis基础信息info12.mq的启动和关闭到指定目录cd /etc/init.d停止rabbitmq-server stop (rabbitmqctl shutdown)启动rabbitmq-server startrabbitmq-server -detached 后台启动查看是否停止/启动成功ps -ef |grep rabbitmq查看所有队列rabbitmqctl list_queues删除指定队列rabbitmqctl delete_queue queue_nameweb插件关闭rabbitmq-plugins disable rabbitmq_managementweb插件开启rabbitmq-plugins enable rabbitmq_management13.nginx的启动和关闭启动目录/usr/local/nginx/sbin/nginx配置文件重新加载nginx -s reload 修改配置后重新加载生效启动指定配置文件路径nginx -c /usr/local/nginx/conf/nginx.conf停止nginx -s stop配置文件测试nginx -t重新加载配置文件前可使用该命令查看版本信息nginx -V14.tomcat的启动和关闭启动进入到tomcat的bin目录执行./start.sh关闭进入到tomcat的bin目录执行./shutdown.sh清除缓存进入到tomcat的work目录删除catalina目录15.网络问题排查命令ping ipping 10.48.1.253 或 ping www.baidu.comping shop.mustbuyhh.comtelnet ip porttelnet www.baidu.com 80 或 telnet 10.48.1.253 8080telnet shop.mustbuyhh.com 443nslookup baidu.com 域名解析有时候ping命令会被服务器禁止。通过上述命令可查看网络环境16.wget命令用于下载远程资源安装wget: yum install -y wget下载远程资源-c表示断点续传 wget -c https://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz17.tar命令-c表示压缩-x表示解压-C指定目标目录将test.txt文件压缩成test.tar.gz文件tar -czvf test.tar.gz test.txt将test.tar.gz解压成es目录下的test.txt文件tar -xzvf test.tar.gz -C ./es/将test.tar.gz解压成test.txt文件tar -xzvf test.tar.gz [text.txt]18.elk后台启动基于/目前查找es安装包find / -name elasticsearch-7.3.2-linux-x86_64.tar.gz创建es用户拥有这三个安装目录的权限。进入安装目录es: ./elasticsearch -dlogstash: nohup bin/logstash -f config/logstash.conf kibana: nohup bin/kibana 19.ftp命令连接远程ftp服务器步骤1.sftp zygf172.17.212.137zygf为用户名 2.输入密码 Aqz2020!下载服务器文件get aa.txt批量下载文件mget *20.查看软件安装项目root操作ls(ll) -l /proc/进程号/cwdLinux系统上的/proc目录是一种文件系统即proc文件系统。cwd 指向当前进程运行目录的一个符号链接whichwhereis21.同步服务器时间ntpdate ntp1.aliyun.com22.gunzip命令gunzip gateway_warn.2023-04-11.log.gz将文件解压到当前目录文件为gateway_warn.2023-04-11.log23.linux使用echo清空正在运行的日志文件应用不需要重启echo catalina.out24.查询软件安装路径ls -l /proc/pid通过lsof -i:port 或者 ps -aux | grep xx 获取pid返回结果中cwd表示软件工作目录exe表示软件的执行目录文件属性1.文件属性 包含10位 表示权限-rw-r--r--:第一位文件类型 d表示文件夹;-表示文件第二到四位属主权限 r表示可读;w表示可写;-表示不可执行第五到七位属组权限 r表示可读;-表示不可写;-表示不可执行第八到十位其他用户权限 r表示可读;-表示不可写;-表示不可执行2.更改文件属性 更改文件属组chgrp(Change group)chgrp [-R] 属组名 文件名-R表示更改文件夹下的所有文件的属组权限递归3.更改文件属主chown(Change owner)chown [-R] 属主名属组名 文件名chown tg:group1 1.txt将文件更改为属主为tg,属组为group14.更改文件的权限 chmod(Change mode)方式一chmod [-R] xyz 文件或目录chmod 777 test权限r的权值为4权限w的权值为2,权限x的权值为1。即如果想要读写执行都具备的话权限设置为7方式二chmod urwx,grx,or 文件名u代表属主g代表属组o代表其他a代表all所有;代表设定代表增加-代表去除chmod urwx,gr,or test用户管理1.用户和用户组管理 创建用户用户账号/etc/passwdvipw可快速查看账号信息用户密码/etc/shadowvipw -s 查看密码信息用户组文件/etc/groupuseradd 选项 用户名useradd -g group1 -d /home/tg -m tg-g表示用户所属组-d表示新用户的所属目录-m表示如果该目录不存在则创建tg是用户名创建管理员账户,一般不推荐使用useradd -u 0 -o -g 0 -d /home/tg -m tg-u 0表示用户标号为root-o表示允许用户标号重复-g 0表示用户组标号为root2.删除账号userdel 选项 用户名userdel -r tg-r表示删除其主目录-f表示强制删除因为有时候会有无法删除的问题进程占用可以杀死占用的进程3.修改账号usermod 选项 用户名选项类型同创建用户4.用户口令passwd 选项 用户名-l 锁定口令即禁用账号;-u 口令解锁;-d 使账号无口令;-f 强迫用户下次登录时修改口令。passwd tg修改密码root用户直接输入新密码普通用户需要校验旧密码然后输入新密码用户组管理1.创建用户组groupadd 选项 用户组groupadd group12.删除用户组groupdel 用户组groupdel group13.编辑用户组groupmod 选项 用户组groupmod –g -n group2 group1-n group2表示将原组名更改为group24.输出工作目录pwdprint work directory如果想获取当前用户的主目录cd ~/pwd5.查某个命令的用法命令 --help6.切换用户名su 用户名root用户切换到普通用户不需要输入密码反之需要输入密码。切换用户的时候有时会出现 bash-4.2$cp /etc/skel/.bashrc /home/user/cp /etc/skel/.bash_profile /home/user文件目录管理1.ls: 列出目录2.ll: 查看目录详细信息ll -a查看所有文件列表包括隐藏文件。3.cd切换目录cd 路径可以使用绝对路径也可以使用相对路径cd ../../etc/skel/回到主目录cd ~回到根目录cd /4.pwd显示目前的目录5.mkdir创建一个新的目录mkdir [-mp] 目录名称-m表示mode可以指定文件夹的权限如777-p表示可以递归创建文件夹6.rmdir删除一个空的目录rmdir [-p] 目录名称-p表示递归删除空文件夹rmdir -p a/b/c7.cp: 复制文件或目录cp source destination复制文件夹cp -ra source destination(递归复制所有文件)8.rm: 移除文件或目录rm [-fir] 文件或目录-f表示强制删除-i表示删除时询问-r表示递归删除rm -rf递归删除不询问9.mv: 移动文件与目录或修改文件与目录的名称mv [-fiu] source destination-f表示强制-i表示覆盖时询问-u表示source比较新时更新mv 1.txt 2.txt表示重命名10.cat 由第一行开始显示文件内容cat 文件名11.tail 只看尾巴几行tail -100f 文件名12.vim:可查看编辑文件也可用于创建文件vim 文件名13.shiftg跳转到日志文件底部gg跳转到日志顶部14.scp远程复制复制本地文件夹到远程服务器scp -r a/ eprouser192.168.1.253:/project/cjm复制本地文件到远程服务器scp a.txt eprouser192.168.1.253:/project/cjm复制远程服务器文件夹到本地scp -r eprouser192.168.1.253:/project/cjm /project/test复制远程服务器文件到本地scp eprouser192.168.1.253:/project/cjm/a.txt /project/test15.错误日志批量查看less 文件名 | grep -aiE 关键字a把.gz文件当作文本查询i忽略大小写E支持查询多个关键字使用|支持多个字符如关键字1|关键字2查看服务器信息:1.查看内存使用情况free -h2.查看程序内存使用情况用于排查问题ps -aux | sort -k 4 -r | less或者ps -aux | sort -k 4ps -aux表示查看进程详细信息sort -k 4 -r标识根据第四列内存降序排列less表示显示较少的行按q退出展示ps -aux | grep java查看java进程ps -aux | grep 1289查找pid为1289的进程。先查找所有的进程搜索pid为1289的进程3.查看硬盘使用情况df -h4.命令用于查找文件里符合条件的字符串方式一grep -i 字符串 文件名-i表示忽略大小写在文件中忽略大小写查找指定的字符串并标记方式二vi/vim编辑文件然后使用/查找字符串进行查询5.显示当前进程状态 ps(process status)ps -aux6.管道符 |Linux所提供的管道符“|”将两个命令隔开管道符左边命令的输出就会作为管道符右边命令的输入7.查看目录下文件的大小du -sh *du表示disk usage硬盘使用情况-s表示汇总信息-h表示以人类熟悉的方式Mb/Gb展示*表示文件或文件夹8.查看环境变量echo $PATH查看用户下配置的环境变量列表echo $ORACLE_HOME查看oracle环境变量su oracle只会切换用户su - oracle: 切换用户且使用oracle配置的环境变量9.同步服务器时间date查看服务器时间ntpdate ntp1.aliyun.com同步ntp1.aliyun.com服务器时间作为本机时间10.配置环境变量1vim ~/.bashrc~/指的是当前用户的主目录.bashrc是文件名2export PATH$PATH:路径1:路径2$PATH代表原先配置的环境变量3source ~/.bashrc使环境变量生效11.nginx创建定时任务crontab -ee表示edit30 8 * * * /home/zjapposp/shell/yhz.sh表示每天8点半执行文件yhz.sh12.查看操作系统版本cat /etc/redhat-releasecat /proc/version13.软件安装1源码安装.configure 检查编译环境make对源代码进行编译make insall 将生成的可执行文件安装到当前计算机中。2rpm安装rpm是一个软件包管理工具可以安装.rpm的文件rpm是一个编译好的文件直接安装即可安装过程中如果缺依赖包要自行解决noarch.rpm表示这是一个和平台无关的包命令rpm -ivh **.rpm3yum安装yum也是一个软件包管理工具通过yum仓库可存放.rpm文件支持远程仓库和本地仓库可以自动处理安装依赖包问题前提是需要能够联网。命令yum install **14.swap占用分析for file in /proc/*/status ; do awk /VmSwap|Name|^Pid/{printf $2 $3}END{ print } $file; done | sort -k 3 -n -r | head -20查看pid进程ps -aux | grep pid