Linux知识点
基本操作命令:
pwd 查看当前文件夹下的文件目录
java -version 查看java版本
ip add
r 查看网络ip
- 查看防火墙状态:
systemctl status firewalld
- 暂时关闭防火墙:
systemctl stop firewalld
- 永久关闭防火墙:
systemctl disable firewall
- 重启防火墙:
systemctl enable firewalld
- 回退上一个目录:
cd ..
- 新建一个文件夹,比如新建一个index.js:
touch index.js
- 删除一个文件:
rm index.js
安装lrzsz
安装用于上传文件的软件:
yum install -y lrzsz
上传文件:rz
下载文件:sz
安装用于解压缩的软件:
yum install -y tar
-
安装jdk
centos7系统我用yum安装方式安装的 -
安装maven,这里我用的是3.8.5的,在官网上下载的,然后安装目录在
usr/local/maven
,环境配置的话我也配置了,maven的阿里云仓库我也配置了,不过本地仓库没有重新建立。 -
安装nacos
先在linux系统中的local目录中创建一个文件夹nacos,然后rz把nacos压缩包上传到该文件夹下,然后tar -zxvf 压缩包进行解压,解压后会生成一个nacos文件目录,里面是nacos的文件。 -
关闭nacos指令:
./bin/shutdown.sh
-
nacos作为单台(不以集群方式启动)启动命令
./bin/startup.sh -m standalone
-
nacos持久化
需要先安装Mysql,然后在mysql中建一个nacos数据库,把nacos压缩包里的sql语句导进去。然后,更改nacos中conf里面的application.properties配置,具体如下:
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#*************** Spring Boot Related Configurations ***************#
### Default web context path:
server.servlet.contextPath=/nacos
### Default web server port:
server.port=8848
#*************** Network Related Configurations ***************#
### If prefer hostname over ip for Nacos server addresses in cluster.conf:
# nacos.inetutils.prefer-hostname-over-ip=false
### Specify local server's IP:
# nacos.inetutils.ip-address=
#*************** Config Module Related Configurations ***************#
### If use MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoRec
onnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=Root
- sentinel
在linux系统上启动sentinel的dashbord:java -jar -Dserver.port=9191 sentinel-dashboard-1.7.2.jar
docker
docker容器是在操作系统层面上实现虚拟化,直接复用本地主机的操作系统,而传统虚拟机则是在硬件层面实现虚拟化。与传统的虚拟机相比,Docker优势为启动速度快、占用体积小。
-
应用场景:web的自动化打包发布、自动化测试、可持续集成,安装各种组件;
-
组成:docker守护进程,仓库,镜像,容器,docker客户端。
-
docker常用命令:
··`//启动docker
systemctl start docker
//关闭docker
systemctl stop docker
//重启docker
systemctl restart docker -
Git学习笔记
-
git提交代码流程
1、 添加文件到暂存区git add .
2、提交暂存区的内容到本地git commit -m
3、推送到远程仓库。git push
-
redis安装
-
细节:我在Linux系统中安装的是4.0.11版本的。我先是切换目录到local,然后在该目录下创建一个redis文件夹,然后rz把redis的安装包给传进来,然后解压。注意,这里有个细节,由于redis是用c写的,因此要提前在linux系统中安装c的环境。然后是编译。最后编译完成后,我又Make把redis安装到usr文件夹下。可以看到usr文件夹下有个redis文件。这里才是我们要运行redis的地方。
-
解压文件:
tar -zxvf redis-4.0.11.tar.gz
-
安装gcc:
yum install -y gcc
-
进入解压缩目录执行如下命令:
make MALLOC=libc
-
编译完成后执行如下命令:
make install PREFIX=/usr/redis
-
进入/usr/redis目录启动redis服务:
./redis-server
注意:启动redis后最好克隆一个窗口,不要让该redis服务停止。 -
然后在新窗口启动redis-cli来操作。启动的目录还是redis中的bin目录:
./redis-cli -h localhost -p 6379
-
注意:后面我们需要用到redisDesktopManager来在我们的计算机中远程连接虚拟机中的redis。而redis默认是不开启远程连接的,即我们如果要远程连接虚拟机中的redis需要我们去更改redis中的配置。
(这里好坑啊,为了更改这个配置,我忙活了好一阵子。网上的安装方法,redis目录下只有一个bin目录,没有redis.conf这个文件。于是我又从最开始下载编译redis的文件中,找到了redis.conf这个文件。接下来就是把这个文件给cp拷贝到usr/redis文件的bin目录中,让它和redis-server在一起) -
远程访问redis启动方法:
./redis-server ./redis.conf
用了这个命令启动redis后,再用redisDesktopManager来远程连接,就可以连接上了。
zookeeper
安装的话直接把zooker的压缩包上传到Linux系统,然后在/usr/local目录下新建一个zookeeper目录,在那里面解压。然后在解压后的文件夹中,注意和conf等目录平级,然后创建一个data文件夹,用于存放zookeeper产生到数据。这里需要进入conf文件夹中把zoo_sample.cfg文件复制一份,命名为zoo.cfg,然后把存放data的配置改为我们新创建的文件夹路径。
-
启动zookeeper命令:
./zkServer.sh start
-
查看zookeeper状态:
./zkServer.sh status
-
停止zookeeper:
[root@root bin]# ./zkServer.sh stop
文件操作
//查找文件---第一种是find,就这样,把引号中的文件名可以换换。
[root@z-ud /]# find / -iname "new_name_qkk_20221109"
/opt/tftp/new_name_qkk_20221109
//删除文件命令
rm -f 文件名
//移动文件命令
mv 文件名 要存放文件的目录
curl命令
# 语法
curl [option] [url]
# 最简单的使用,获取服务器内容,默认将输出打印到标准输出中(STDOUT)中。
curl http://www.centos.org
# 添加-v参数可以看到详细解析过程,通常用于debug
curl -v http://www.centos.org
# curl发送Get请求
curl URL
curl URL -O 文件绝对路径
# curl发送post请求
# 请求主体用json格式
curl -X POST -H 'content-type: application/json' -d @json文件绝对路径 URL
curl -X POST -H 'content-type: application/json' -d 'json内容' URL
# 请求主体用xml格式
curl -X POST -H 'content-type: application/xml' -d @xml文件绝对路径 URL
curl -X POST -H 'content-type: application/xml' -d 'xml内容' URL
# 设置cookies
curl URL --cookie "cookie内容"
curl URL --cookie-jar cookie文件绝对路径
# 设置代理字符串
curl URL --user-agent "代理内容"
curl URL -A "代理内容"
# curl限制带宽
curl URL --limit-rate 速度
# curl认证
curl -u user:pwd URL
curl -u user URL
# 只打印http头部信息
curl -I URL
curl -head URL
# 末尾参数
--progress 显示进度条
--silent 不现实进度条
# 不需要修改/etc/hosts,curl直接解析ip请求域名
# 将 http://example.com 或 https://example.com 请求指定域名解析的IP为127.0.0.1
curl --resolve example.com:80:127.0.0.1 http://example.com/
curl --resolve example.com:443:127.0.0.1 https://example.com/
-X/--request [GET|POST|PUT|DELETE|…] 指定请求的 HTTP 方法
-H/--header 指定请求的 HTTP Header
-d/--data 指定请求的 HTTP 消息体(Body)
-v/--verbose 输出详细的返回信息
-u/--user 指定账号、密码
-b/--cookie 读取 cookie
# 典型的测试命令为:
curl -v -X POST -H "Content-Type: application/json" http://127.0.0.1:8080/user -d'{"username":"admin","password":"admin1234"}'...
# 测试get请求
curl http://www.linuxidc.com/login.cgi?user=test001&password=126
# 测试post请求
curl -d "user=nickwolfe&password=12345" http://www.linuxidc.com/login.cgi
# 请求主体用json格式
curl -X POST -H 'content-type: application/json' -d @json文件绝对路径 URL
curl -X POST -H 'content-type: application/json' -d 'json内容' URL
# 请求主体用xml格式
curl -X POST -H 'content-type: application/xml' -d @xml文件绝对路径 URL
curl -X POST -H 'content-type: application/xml' -d 'xml内容' URL
# 发送post请求时需要使用-X选项,除了使用POST外,还可以使用http规范定义的其它请求谓词,如PUT,DELETE等
curl -XPOST url
#发送post请求时,通常需要指定请求体数据。可以使用-d或--data来指定发送的请求体。
curl -XPOST -d "name=leo&age=12" url
# 如果需要对请求数据进行urlencode,可以使用下面的方式:
curl -XPOST --data-urlencode "name=leo&age=12" url
# 此外发送post请求还可以有如下几种子选项:
–data-raw
–data-ascii
–data-binary
linux中部署项目、操作项目(比如下载日志等)相关的的命令
//从linux中下载文件到本地。
sz log.log
//查看Tomcat是否关闭命令:ps -ef|grep tomcat
//直接杀死Tomcat进程,使用kill命令 :kill -9 进程号
切换到tomcat的logs目录下: 比如我的是cd /ahdy/tomcat8/logs
执行输出命令 :tail -f catalina.out
这样终端就会实时输出tomcat运行日志
//zlog项目查看日志,是在app里面有个Log文件夹,ll进去可以看到日志,然后运行下面命令。
tail -f log.log