[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

--//没有改变.终于明白问题在哪里...
--//浪费一个上午的时间.............
--//总之,一些配置参数要生效,最好退出再重新登陆。

转载于:https://www.cnblogs.com/lfree/p/10920048.html

### 如何确保在修改 `requirements.txt` 后安装最新的依赖 当修改 `requirements.txt` 并希望确保安装的是最新指定的依赖而非旧版本时,可能是因为 Pip 缓存机制导致了问题。以下是几种方法来清除缓存并强制重新安装: #### 方法一:清空 Pip 缓存 Pip 默认会将下载过的包存储在其缓存目录中以便重复使用。如果需要完全忽略这些缓存并重新拉取依赖项,则可以运行以下命令: ```bash pip cache purge && pip install -r requirements.txt --no-cache-dir ``` 上述命令的作用是先清理所有的 Pip 缓存数据[^1],然后再通过 `-r requirements.txt` 参数按照新的配置文件重新安装所有依赖。 #### 方法二:强制升级现有包 即使存在缓存或者某些包已经被部分安装,在执行下面这条指令的时候也会尝试覆盖掉现有的版本号不匹配的情况: ```bash pip install -r requirements.txt --upgrade --force-reinstall ``` 这里的关键选项在于 `--upgrade` 和 `--force-reinstall`[^2],前者告诉 Pip 即使目标版本低于当前也应继续操作;后者则进一步强调即便发现相同版本也要替换整个环境中的副本。 #### 方法三:借助工具自动化管理流程 (推荐) 考虑到手动维护可能会遗漏细节或是遇到复杂场景难以处理等问题,建议采用专门设计用于优化这一过程的专业化解决方案——比如 **pip-tools** 或者其他类似的第三方插件。 例如,利用 `pip-sync` 功能可以从头构建一个干净的工作区只保留必要的组件集而不受历史残留影响: ```bash pip sync requirements.txt ``` 另外值得注意的一点是在多平台部署环境下还应该考虑兼容性和稳定性因素,因此最好提前测试好各个平台上支持的最佳实践组合方案后再推广实施[^3]。 最后提醒一下关于跨操作系统差异方面的小技巧:如果是 Windows 用户并且遇到了路径长度限制错误的话,记得调整系统注册表设置允许更长名称字符串的支持范围以适应大型项目的结构需求[^4]。 ### 注意事项 - 如果仍然存在问题,请确认网络连接正常以及源地址可用性良好。 - 对于特殊情况下无法在线获取资源的情形可参照离线模式下的具体指导完成相应准备工作再行动[^5]。 问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值