[20190523]修改參數後一些細節注意2.txt

[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

相關文章
相關標籤/搜索