首頁  >  文章  >  後端開發  >  php 沒有coredump檔怎麼辦

php 沒有coredump檔怎麼辦

藏色散人
藏色散人原創
2021-05-25 09:16:181549瀏覽

php沒有coredump檔案的解決方法:1.查看shell配置裡有沒有「ulimit -c 0」操作;2、全域coredump開啟;3、退出重新登入shell,並修改設定即可。

php 沒有coredump檔怎麼辦

本文操作環境:ubuntu 16.04系統、PHP7.1版,DELL G3電腦

php 沒有coredump檔案怎麼辦?如何查看php-fpm core dump 檔案的錯誤?

開啟php的coredump輸出,修改ulimit -c就可以了,但是很多情況下,會提示權利受限,無法修改

[fukun@10.16.29.xxx]$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 30678
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 32768
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 1024
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
$ ulimit -c unlimited
-bash: ulimit: core file size: cannot modify limit: Operation not permitted

解決方案:

##1 .檢查配置

看看shell配置裡有沒有ulimit -c 0 這種類似的關閉的操作,例如

$HOME/.bash_profile 或者 $HOME/.bashrc 之类的,如果有,注释掉。
#
# Do not produce core dumps
#
# ulimit -c 0

2. 全域coredump開啟

使用root用戶,修改/etc/security/limits.conf

# /etc/security/limits.conf
#
# Each line describes a limit for a user in the form:
#
# <domain> <type> <item> <value>
#
* soft core unlimited

3.退出並從新登入shell,修改設定

ssh fukun@10.16.29.xxx
[fukun@10.16.29.xxx]$ ulimit
-c
0

先切換成root使用者進行設定

su -
ulimit -c unlimited
ulimit -c
unlimited

然後切換回自己的用戶進行設定

su - fukun
ulimit -c unlimited
ulimit -c
unlimited

以上3步有可能不是必須的,但是只要按這個步驟來,肯定能設定成功,在其它方法設定不成功的時候,按這個步驟來試試把。

【推薦學習:

PHP影片教學#

以上是php 沒有coredump檔怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn