Centos 使用VM虚拟机安装,显示无法ping通报Name or service not known错误
环境说明
win10 专业版
VMware 14.1.2
Centos 7-Minimal-1708
问题分析
VMware 14.1.2没有以管理员方式运行
Centos 未配置网络
解决步骤以管理员方式运行VMware
注:不以管理员运行会出现:需要具备管理员特权才能修改网络配置的警告
配置VMware虚拟网络
这里桥接的网卡选择可以在网络和共享中心->网络连接 中找到
更改Centos 网络配置编辑Centos网络配置
vi /etc/sysconfig/network-scripts/ifcfg-ens33
以下参数设置你们按自己的局域网络IP设置。
ONBOOT=”yes” #网络设备开机启动IPADDR=”192.168.50.100” #IPNETMASK=”255.255.255.0” #子网掩码GATEWAY=”192.168.50.1” #网关IP
重启网络服务$ service network restart
测试效果ping www.baidu.com
Docker中mongo副本集一直Restarting处理过程
环境说明
docker-composedocker-compose version 1.24.1, build 4667896b
dockerDocker version 19.03.11, build 42e35e61f3
mongov4.2.7
centosCentOS Linux release 7.8.2003 (Core)
问题说明docker mongo副本集无法启动(如下)
➜ axinblog docker-compose ps Name Command State Ports-------------------------------------------------------------------------------------------------------------... mongodb_primary bash -c chmod 400 ...
Git 常用操作
取消文件跟踪对所有文件都取消跟踪
不删除本地文件:git rm -r -cached
删除本地文件:git rm -r —f
对指定文件取消跟踪删除.env文件跟踪,保留文件
git rm --cached .env
删除.env文件跟踪,并删除文件
git rm --f .env
注意:如果创建.gitignore文件就已经push过项目,那么加入新的规则也不会起作用.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:
git rm -r --cached .git add .git commit -m 'update .gitignore'
不要误解了 .gitignore 文件的用途,该文件只能作用于 Untracked Files,也就是那些从来没有被 Git 记录过的文件(自添加以后,从未 add 及 commit 过的文件)。如果文件曾经被 Git 记录过,那么.gitignore 就对它们完全 ...
Go 打包生成二进制文件
环境说明
开发环境:mac
go 1.16.2
生产环境:Ubuntu 20.04.1 LTS
步骤说明go build
$ go build [-o output] [-i] [build flags] [packages]
-o 参数可以指定输出目录与打包后的文件名,例:$ go build -o gorse main.go
进入main.go文件目录进行
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
等待一会,可以看到目录中生成了main二进制文件
# axin @ AxindeMacBook-Pro in ~/workspace/goProject/gorse/cmd/gorse-master on git:release-0.2 x [11:54:38]$ CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
Windows平台打包命令
set CGO_ENABLED=0set GOOS=linuxset GOARCH=amd64go build
注: ...
Golang 链式调用太长如何折行
步骤说明写链式时会有以下情况,可是强迫症犯了,想多行显示方便阅读。
示例:
s.dao.Mgo.SetDatabase("****").SetCollection("***").InsertOne(bson.M{"name": "axin", "remark": "嘿嘿嘿。。。"})
改为:
res := s.dao.Mgo.SetDatabase("dapeimall_prod"). SetCollection("numbers"). InsertOne(bson.M{"name": "axin", "value": "嘿嘿嘿"})fmt.Println(res)
就可以了。
IntelliJ IDEA之解决各种奇葩问题
环境说明
Mac
Gradle
Idea 2019.2.4
idea包名明明存在,却出现红色报错解决办法
删除项目目录的.idea文件,重启项目
idea运行时报错提示”找不到或无法加载主类”解决办法
file->invalidate Cache/restart->Invalidate and Restart
idea一直Indexing解决办法
file->invalidate Cache/restart->Invalidate and Restart
idea找不到类文件解决办法
Reimport All Gradle Projects或终端中输入gradle clean(命令说明:清理所有中间编译结果)
Kotlin实现Java静态方法
伪实现:companion objectclass Util { companion object { fun doStaticAction() { println("do doStaticAction") } } fun doAction() { println("do doAction") }}
类中定义伴生类:调用Util.doStaticAction()
注解实现@JvmStaticclass Util { companion object { @JvmStatic fun doStaticAction() { println("do doStaticAction") } } fun doAction() { ...
LeetCode Go 之解题
两数之和
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。
示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]
解题思路
使用hash表存储目标值与数组元素之差(key)和该数组元素的索引(value),当剩余的素组中有元素是hash表中的,则找到了一组符合题目要求的解。
具体思路
开始循环给定数组nums,获得其中元素的索引index、值num;
在Hash表中查找是否有值为num的key,若有则找到题解,若没有执行下一步
将key=target-num,value=index存入Hash表
进入下一次循环
注意:将第2步放在第三步前是为了满足“你不能重复利用这个数组中同样的元素”这个条件
步骤实现package mainimport "fmt"func main() { nums ...
Lnmp 多版本PHP切换
环境说明
Centos
Lnmp 1.7
PHP7.1.33切换到PHP7.4.12
步骤说明Lnmp 安装PHP7.4进入lnmp1.7目录执行
sudo ./install.sh mphp
+------------------------------------------------------------------------+| LNMP V1.7 for CentOS Linux Server, Written by Licess |+------------------------------------------------------------------------+| A tool to auto-compile & install LNMP/LNMPA/LAMP on Linux |+------------------------------------------------------------------------+| For more informa ...
Mac 中homebrew-core的.git文件过大问题解决
问题还原
执行过brew update后结果以下目录占用20G
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core
或执行git 会提示以下信息
warning: There are too many unreachable loose objects; run 'git prune' to remove them.
步骤说明在相应目录下执行
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core
git gc --prune=now
原因:本地的缓冲区占用太大,清理优化该git项目
清理完成后如下
➜ homebrew git:(stable) du -sh ./homebrew-core78M ./homebrew-core