Fork 炸彈
一個簡單的小問題,請問下面一行命令代表甚麼意思
:() { :|:& };:
這是我在「開源」電子雜誌上看到的問題
還挺有意思的
拿去問我同事,結果他聯想都不想,
就直接執行下去 ... (不干我的事啊,我只是想要分享一下,沒人要他執行啊)
上面那行指令可以拆解如下:
:()
{
:|: &
}
;
:
紅色部份是一個函數,而綠色的部份是執行這個函數,然後系統就會開始進行「指數」方式成長的 Fork,想當然爾,系統的資源就... 掰掰囉~連 kill 的時間都沒有。
(所以我同事現在非常小心我丟給他的東西 :p )
解決方法: ulimit (但平常有人會用這個嗎?)
:() { :|:& };:
這是我在「開源」電子雜誌上看到的問題
還挺有意思的
拿去問我同事,結果他聯想都不想,
就直接執行下去 ... (不干我的事啊,我只是想要分享一下,沒人要他執行啊)
上面那行指令可以拆解如下:
:()
{
:|: &
}
;
:
紅色部份是一個函數,而綠色的部份是執行這個函數,然後系統就會開始進行「指數」方式成長的 Fork,想當然爾,系統的資源就... 掰掰囉~連 kill 的時間都沒有。
(所以我同事現在非常小心我丟給他的東西 :p )
解決方法: ulimit (但平常有人會用這個嗎?)
留言
張貼留言