{"version":"1.0","provider_name":"Jui-Nan Lin&#039;s Blog","provider_url":"https:\/\/jnlin.org","author_name":"jnlin","author_url":"https:\/\/jnlin.org\/author\/jnlin\/","title":"FreeBSD \u7684 kernel debugging &amp; textdump(4)","html":"<p>\u4eca\u5929\u56e0\u70ba\u67d0\u7d44Web\u6a5f\u5668\u7576\u6a5f\u5be6\u5728\u7576\u592a\u56b4\u91cd\u4e86\uff0c\u56e0\u70ba\u6211\u5011\u767c\u73fe\u554f\u984c\u662f\u51fa\u5728NFS\uff0c\u6240\u4ee5\u6211\u5011\u628a KDB \u8ddf DDB \u7de8\u9032\u53bb\u6e96\u5099\u4f86\u627e\u554f\u984c\u3002<\/p>  <p>\u7576\u767c\u751f\u554f\u984c\u7684\u6642\u5019\uff0c\u7531\u65bc\u6a5f\u5668\u4e0d\u6703\u7576\u6b7b\uff0c\u6240\u4ee5\u53ef\u4ee5\u5728Console\u6309Ctrl-Alt-ESC\u9032DDB\u3002\u9032\u4e86DDB\u4ee5\u5f8c\uff0c\u53ef\u4ee5\u7528textdump(4)\u4f86\u7d00\u9304\u6240\u4e0b\u7684\u6307\u4ee4\u4ee5\u53ca\u5176output\u3002\u7d00\u9304\u7684\u8cc7\u6599\u6703dump\u5728dump device\uff08\u901a\u5e38\u662fswap\uff09\uff0c\u7b49\u4e0b\u6b21\u958b\u6a5f\u7684\u6642\u5019\u6703\u5b58\u5230\/var\/crash\u88e1\u9762\u3002<\/p>  <p>\u5927\u6982\u7684\u4f5c\u6cd5\u662f\u9019\u6a23\uff1a<\/p>  <ol>   <li>\u5148Ctrl-Alt-ESC\u9032DDB <\/li>    <li>textdump set # \u958b\u59cb textdump <\/li>    <li>capture on # \u4e0b\u9762\u7684\u6307\u4ee4\u90fd\u8981\u8a18\u9304\u4e0b\u4f86 <\/li>    <li>show allpcpu; bt; ps; alltrace; show alllock # \u8981\u7d00\u9304\u7684\u8cc7\u8a0a <\/li>    <li>call doadump # dump\u5230dump device <\/li>    <li>reset # \u91cd\u958b\u6a5f <\/li> <\/ol>  <p>\u5982\u679c\u767c\u73fe\u51fa\u4f86\u7684\u7d50\u679c\u6703\u88ab\u622a\u6389\u7684\u8a71\uff0c\u8981\u628atextdump\u7684capture buffer\u52a0\u5927\uff1a<\/p>  <blockquote>   <p>sysctl debug.ddb.capture.bufsize=196608<\/p><\/blockquote>","type":"rich"}