[20190523]修改參數後一些細節注意2.txt
--//上午想模擬連接遇到的狀況,連接http://blog.itpub.net/267265/viewspace-2645262/
--//就是修改參數後沒有退出oracle參數致使修改參數無效的狀況,但是在個人測試環境根本沒法模擬出來,只好找另外1檯曆來沒有配置
--//hugepages的機器說明問題.
--//可是個人測試環境問題到底在哪裏呢?最終肯定問題在哪裏,作一個記錄:
1.環境:
# cat /proc/version
Linux version 2.6.39-300.26.1.el5uek (mockbuild@ca-build56.us.oracle.com) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-52)) #1 SMP Thu Jan 3 18:31:38 PST 2013
# grep memlock /etc/security/limits.conf
# - memlock - max locked-in-memory address space (KB)
#* soft memlock 53248
#* hard memlock 53248
--//我已經註解memlock配置.
# ps -ef | egrep "bas[h]" | grep "roo[t]"
root 51091 51089 0 11:22 pts/0 00:00:00 -bash
--//進程號=51091
# cat /proc/51091/limits | egrep "Limit|locked memory"
Limit Soft Limit Hard Limit Units
Max locked memory 54525952000 54525952000 bytes
--//奇怪我已經註解,爲何memlock已經設置而且參數設置還很大呢?登陸oracle用戶也是同樣.
--//54525952000/2048/1024 = 26000, 奇怪這個參數配置來之哪裏呢?
--//使用grep探查看看.
# grep -r 26000 /etc/security/*
# grep 26000 /etc/* */
/etc/services:quake 26000/tcp
/etc/services:quake 26000/udp
/etc/sysctl.conf:#vm.nr_hugepages = 26000
--//很明顯我之前修改過vm.nr_hugepages參數.可是如今已經註解了.應該不會生效啊.
2.我試着修改/etc/security/limits.conf,取消註解:
# grep memlock /etc/security/limits.conf
# - memlock - max locked-in-memory address space (KB)
* soft memlock 53248
* hard memlock 53248
--//從新登陸查看:
# ps -ef | egrep "bas[h]" | grep "roo[t]"
root 52151 52149 4 11:51 pts/0 00:00:00 -bash
# cat /proc/52151/limits |egrep "Limit|locked memory"
Limit Soft Limit Hard Limit Units
Max locked memory 54525952 54525952 bytes
--//54525952 /1024 = 53248
--//能夠發現我修改參數是生效的.那麼註解後,這個參數來自哪裏呢?
3.本身回想確定我之前修改/etc/sysctl.conf文件配置有關:
vm.nr_hugepages = 26000
--//噢我遠程登陸必定使用putty,服務器必定啓動sshd進程,也許當時sshd進程繼承這些參數配置.
# ps -ef | grep ssh[d]
root 5702 1 0 Mar14 ? 00:00:00 /usr/sbin/sshd
root 52149 5702 0 11:51 ? 00:00:00 sshd: root@pts/0
# cat /proc/5702/limits | egrep "Limit|locked memory"
Limit Soft Limit Hard Limit Units
Max locked memory 54525952000 54525952000 bytes
--//這樣就能對上了.我遠程登陸,這樣實際上登陸用戶就繼承了sshd的一些參數,若是我沒有設置,這些參數不會被重置.
--//一個很簡單認證就是重啓sshd服務.
# service sshd restart
Stopping sshd: [ OK ]
Starting sshd: [ OK ]
# ps -ef | grep ssh[d]
root 52265 1 0 12:01 ? 00:00:00 /usr/sbin/sshd
root 52268 52265 0 12:01 ? 00:00:00 sshd: root@pts/0
# cat /proc/52265/limits | egrep "Limit|locked memory"
Limit Soft Limit Hard Limit Units
Max locked memory 54525952 54525952 bytes
--//即便我註解/etc/security/limits.conf相關參數,登陸root用戶也能夠發現這些參數不會改變.從新登陸:
# ps -ef | grep bas[h] |grep root
root 52322 52320 1 12:03 pts/0 00:00:00 -bash
# cat /proc/52322/limits | egrep "Limit|locked memory"
Limit Soft Limit Hard Limit Units
Max locked memory 54525952 54525952 bytes
--//沒有改變.終於明白問題在哪裏...
--//浪費一個上午的時間.............
--//總之,一些配置參數要生效,最好退出再從新登錄。bash