哈喽!我是泡泡!
问题描述
最近安装gp数据库的过程中,发现虚拟机登录会闪退回登陆界面,反复循环,我用的是CentOS7。
搜了好多都说是环境变量的问题,说让修改/etc/profile文件,我修改了还是没有用。又试了修改权限,用户等方法,照样没用;
它确实是环境变量的问题但是不一定是/etc/profile文件,今天来和大家讨论一下我的解决方法。
问题解决
它不能用VMware登录、操作了,但是还可以用xshell之类的进行登录、操作,我是用xshell登录进去,进行进行文件修改的。别的博主说的Ctrl+Alt+f1~f7的这种我试了一下,我电脑没反应。
解决方法就是:
(一)
我就把所有我修改过的环境变量都给注释掉了,然后就好了!!!!!
可以正常登陆了,也不用像有的教程说的删除用户重新安装。
当然这样治标不治本,只是当下可以登录,做修改了,但是要安装的软件还是得安装,还是要改环境变量,所以我继续查看发现如下
(二)
经查证,对我的来说导致这个问题的是/etc/sysctl.conf这个文件的变动,因为我是照着别的博主的文章抄的,可能因为配置里面写的不全,或者说对于我的电脑来说不全。
发现是这个脚本的问题后我找了很多文章对比,后来把里面的配置改成如下,问题就解决了,不会再出现循环闪退的问题了,我的虚拟机内存设置的是4G,给大家参考一下,把这段文字复制添加到/etc/sysctl.conf这个文件的最后面(当然,先给原来的文件备个份,参考我写的下面的经验教训):
kernel.shmall = 197951838
kernel.shmmax = 810810728448
kernel.shmmni = 4096
vm.overcommit_memory = 2 # See Segment Host Memory
vm.overcommit_ratio = 95 # See Segment Host Memory
net.ipv4.ip_local_port_range = 10000 65535 # See Port Settings
kernel.sem = 500 2048000 200 4096
kernel.sysrq = 1
kernel.core_uses_pid = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.msgmni = 2048
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.tcp_max_syn_backlog = 4096
net.ipv4.conf.all.arp_filter = 1
net.core.netdev_max_backlog = 10000
net.core.rmem_max = 2097152
net.core.wmem_max = 2097152
vm.swappiness = 10
vm.zone_reclaim_mode = 0
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
vm.dirty_background_ratio = 0 # See System Memory
vm.dirty_ratio = 0
vm.dirty_background_bytes = 1610612736
vm.dirty_bytes = 4294967296
net.ipv4.ip_forward = 0
net.ipv4.tcp_tw_recycle = 1
kernel.sem = 250 64000 100 512
保存,然后再执行
systcl -p
再打开虚拟机,输入密码登录就发现问题解决了。
但是看网上的教程也有修改别的文件的,我没遇到过
附上我修改过的文件名
/etc/profile(好多人说是这个文件的问题,注释掉了我改的,没啥用)
/etc/sysctl.conf(我的是这个文件的修改不正确导致的)
/etc/security/limits.conf(这个和上一个一起改的,没单独测,但是修改了上个文件后就好了,所以应该也不是它的问题)
可以看看你修改的环境变量里有没有这三个文件里面的一个,可以试试看。
经验教训
这个事情也给我了个教训:
(1)安装软件的时候一定要把自己参考的那个教程保存起来,如果出了问题还可以去溯源,修改;
(2)如果需要修改环境变量有关的文件记得备份一份原文件,不然过几天你自己可能都不记得自己改了哪里了,更不知道原来的是什么了,网上找到的跟你的可能也不会完全相同;
可以参考这样备份
一定要养成一个好的习惯,可以省下很多麻烦。
我是泡泡,和大家互相学习,一起成长,如果觉得有用的话给我点个赞吧!