Centos7

將 root 使用者的所有 ulimit 設置為 0

  • March 4, 2021

在 CentOS 7 機器上工作時,我正在排除故障並設置以下值的 ulimits,匆忙認為這是無限的:

root hard core 0 root hard maxlogins 0 root soft nofile 0 root hard nofile 0 root soft nproc 0 root hard nproc 0 root soft fsize 0 root hard fsize 0

我現在無法 sudo 或 su 到 root,因為它有 0 個登錄/程序等的限制。這似乎是一個愚蠢的錯誤,我希望有一個解決方法。

有誰知道如何在沒有 ulimits 的情況下反轉這個 / boot 來編輯配置文件?

配置文件歸 root 所有,只有 root 有寫權限。

提前致謝。

我會用init=/bin/sh.

將此作為參數添加到核心命令行,系統將為您提供一個 root shell,而無需進行任何初始化。此時根文件系統可能是只讀的,在這種情況下,您需要以讀寫方式重新掛載它。這允許您編輯任何文件,包括限製配置。

要重新啟動,您需要以只讀方式重新掛載根文件系統,呼叫sync,等待幾秒鐘,然後按 Ctrl-Alt-Del。沒有適當的機制來確保有序關閉,因此也不能保證將數據寫入磁碟,但是以只讀方式重新掛載根文件系統會將所有未完成的寫入發送到磁碟隊列,並且該sync命令確保所有這些都是由磁碟送出並確認,並且磁碟沒有充分的理由延遲寫入之後,因此等待足以確保一切都結束。

引用自:https://serverfault.com/questions/1055910