Nsphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextEnglish}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget/admin-guide/initmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Simplified)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget$/translations/zh_CN/admin-guide/initmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget$/translations/it_IT/admin-guide/initmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget$/translations/ja_JP/admin-guide/initmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget$/translations/ko_KR/admin-guide/initmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget$/translations/sp_SP/admin-guide/initmodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageChinese (Traditional)uh1h hh _documenthsourceNlineNubhcomment)}(h SPDX-License-Identifier: GPL-2.0h]h SPDX-License-Identifier: GPL-2.0}hhsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hhhhhhQ/var/lib/git/docbuild/linux/Documentation/translations/zh_TW/admin-guide/init.rsthKubhwarning)}(hX1此文件的目的是爲讓中文讀者更容易閱讀和理解,而不是作爲一個分支。因此, 如果您對此文件有任何意見或改動,請先嘗試更新原始英文文件。如果要更改或 修正某處翻譯文件,請將意見或補丁發送給維護者(聯繫方式見下)。h]h paragraph)}(hX1此文件的目的是爲讓中文讀者更容易閱讀和理解,而不是作爲一個分支。因此, 如果您對此文件有任何意見或改動,請先嘗試更新原始英文文件。如果要更改或 修正某處翻譯文件,請將意見或補丁發送給維護者(聯繫方式見下)。h]hX1此文件的目的是爲讓中文讀者更容易閱讀和理解,而不是作爲一個分支。因此, 如果您對此文件有任何意見或改動,請先嘗試更新原始英文文件。如果要更改或 修正某處翻譯文件,請將意見或補丁發送給維護者(聯繫方式見下)。}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hh5Documentation/translations/zh_TW/disclaimer-zh_TW.rsthKhhubah}(h]h ]h"]h$]h&]uh1hhhhhhhhNubhnote)}(h如果您發現本文檔與原始文件有任何不同或者有翻譯問題,請聯繫該文件的譯者, 或者發送電子郵件給胡皓文以獲取幫助:<2023002089@link.tyut.edu.cn>。h]h)}(h如果您發現本文檔與原始文件有任何不同或者有翻譯問題,請聯繫該文件的譯者, 或者發送電子郵件給胡皓文以獲取幫助:<2023002089@link.tyut.edu.cn>。h](h如果您發現本文檔與原始文件有任何不同或者有翻譯問題,請聯繫該文件的譯者, 或者發送電子郵件給胡皓文以獲取幫助:<}(hhhhhNhNubh reference)}(h2023002089@link.tyut.edu.cnh]h2023002089@link.tyut.edu.cn}(hhhhhNhNubah}(h]h ]h"]h$]h&]refuri"mailto:2023002089@link.tyut.edu.cnuh1hhhubh>。}(hhhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK hhubah}(h]h ]h"]h$]h&]uh1hhhhhhhhNubh field_list)}(hhh](hfield)}(hhh](h field_name)}(hOriginalh]hOriginal}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j hjhhhKubh field_body)}(h!:doc:`../../../admin-guide/init` h]h)}(h :doc:`../../../admin-guide/init`h]h)}(hj#h]hinline)}(hj#h]h../../../admin-guide/init}(hj*hhhNhNubah}(h]h ](xrefstdstd-doceh"]h$]h&]uh1j(hj%ubah}(h]h ]h"]h$]h&]refdoc#translations/zh_TW/admin-guide/init refdomainj5reftypedoc refexplicitrefwarn reftarget../../../admin-guide/inituh1hhhhKhj!ubah}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKhjhhubj)}(hhh](j )}(h譯者h]h譯者}(hj^hhhNhNubah}(h]h ]h"]h$]h&]uh1j hj[hhhKubj)}(h\吳想成 Wu XiangCheng 胡皓文 Hu Haowen <2023002089@link.tyut.edu.cn> h]h)}(h[吳想成 Wu XiangCheng 胡皓文 Hu Haowen <2023002089@link.tyut.edu.cn>h](h吳想成 Wu XiangCheng <}(hjphhhNhNubh)}(hbobwxc@email.cnh]hbobwxc@email.cn}(hjxhhhNhNubah}(h]h ]h"]h$]h&]refurimailto:bobwxc@email.cnuh1hhjpubh> 胡皓文 Hu Haowen <}(hjphhhNhNubh)}(h2023002089@link.tyut.edu.cnh]h2023002089@link.tyut.edu.cn}(hjhhhNhNubah}(h]h ]h"]h$]h&]refuri"mailto:2023002089@link.tyut.edu.cnuh1hhjpubh>}(hjphhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK hjlubah}(h]h ]h"]h$]h&]uh1jhj[ubeh}(h]h ]h"]h$]h&]uh1jhhhKhjhhubeh}(h]h ]h"]h$]h&]uh1jhhhhhhhKubhsection)}(hhh](htitle)}(h4解釋“No working init found.”啓動掛起消息h]h4解釋“No working init found.”啓動掛起消息}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjhhhhhK ubj)}(hhh]j)}(hhh](j )}(h作者h]h作者}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j hjhhhKubj)}(hZAndreas Mohr Cristian Souza h](h)}(h&Andreas Mohr h]h&Andreas Mohr }(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubh)}(h1Cristian Souza h]h1Cristian Souza }(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKhjhhubah}(h]h ]h"]h$]h&]uh1jhjhhhhhKubh)}(h~本文檔提供了加載初始化二進制(init binary)失敗的一些高層級原因(大致按執行 順序列出)。h]h~本文檔提供了加載初始化二進制(init binary)失敗的一些高層級原因(大致按執行 順序列出)。}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubhenumerated_list)}(hhh](h list_item)}(h**無法掛載根文件系統Unable to mount root FS** :請設置“debug”內核參數(在 引導加載程序bootloader配置文件或CONFIG_CMDLINE)以獲取更詳細的內核消息。 h]h)}(h**無法掛載根文件系統Unable to mount root FS** :請設置“debug”內核參數(在 引導加載程序bootloader配置文件或CONFIG_CMDLINE)以獲取更詳細的內核消息。h](hstrong)}(h6**無法掛載根文件系統Unable to mount root FS**h]h2無法掛載根文件系統Unable to mount root FS}(hj2hhhNhNubah}(h]h ]h"]h$]h&]uh1j0hj,ubh :請設置“debug”內核參數(在 引導加載程序bootloader配置文件或CONFIG_CMDLINE)以獲取更詳細的內核消息。}(hj,hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj(ubah}(h]h ]h"]h$]h&]uh1j&hj#hhhhhNubj')}(hX[**初始化二進制不存在於根文件系統上init binary doesn't exist on rootfs** : 確保您的根文件系統類型正確(並且 ``root=`` 內核參數指向正確的分區);擁有 所需的驅動程序,例如SCSI或USB等存儲硬件;文件系統(ext3、jffs2等)是內建的 (或者作爲模塊由initrd預加載)。 h]h)}(hXZ**初始化二進制不存在於根文件系統上init binary doesn't exist on rootfs** : 確保您的根文件系統類型正確(並且 ``root=`` 內核參數指向正確的分區);擁有 所需的驅動程序,例如SCSI或USB等存儲硬件;文件系統(ext3、jffs2等)是內建的 (或者作爲模塊由initrd預加載)。h](j1)}(hW**初始化二進制不存在於根文件系統上init binary doesn't exist on rootfs**h]hU初始化二進制不存在於根文件系統上init binary doesn’t exist on rootfs}(hjXhhhNhNubah}(h]h ]h"]h$]h&]uh1j0hjTubh6 : 確保您的根文件系統類型正確(並且 }(hjThhhNhNubhliteral)}(h ``root=``h]hroot=}(hjlhhhNhNubah}(h]h ]h"]h$]h&]uh1jjhjTubh 內核參數指向正確的分區);擁有 所需的驅動程序,例如SCSI或USB等存儲硬件;文件系統(ext3、jffs2等)是內建的 (或者作爲模塊由initrd預加載)。}(hjThhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjPubah}(h]h ]h"]h$]h&]uh1j&hj#hhhhhNubj')}(hXO**控制檯設備損壞Broken console device** : ``console= setup`` 中可能存在 衝突 --> 初始控制檯不可用(initial console unavailable)。例如,由於串行 IRQ問題(如缺少基於中斷的配置)導致的某些串行控制檯不可靠。嘗試使用不同的 ``console= device`` 或像 ``netconsole=`` 。 h]h)}(hXN**控制檯設備損壞Broken console device** : ``console= setup`` 中可能存在 衝突 --> 初始控制檯不可用(initial console unavailable)。例如,由於串行 IRQ問題(如缺少基於中斷的配置)導致的某些串行控制檯不可靠。嘗試使用不同的 ``console= device`` 或像 ``netconsole=`` 。h](j1)}(h.**控制檯設備損壞Broken console device**h]h*控制檯設備損壞Broken console device}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j0hjubh : }(hjhhhNhNubjk)}(h``console= setup``h]hconsole= setup}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jjhjubh 中可能存在 衝突 --> 初始控制檯不可用(initial console unavailable)。例如,由於串行 IRQ問題(如缺少基於中斷的配置)導致的某些串行控制檯不可靠。嘗試使用不同的 }(hjhhhNhNubjk)}(h``console= device``h]hconsole= device}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jjhjubh 或像 }(hjhhhNhNubjk)}(h``netconsole=``h]h netconsole=}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jjhjubh 。}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK hjubah}(h]h ]h"]h$]h&]uh1j&hj#hhhhhNubj')}(h**二進制存在但依賴項不可用Binary exists but dependencies not available** : 例如初始化二進制的必需庫依賴項,像 ``/lib/ld-linux.so.2`` 丟失或損壞。使用 ``readelf -d |grep NEEDED`` 找出需要哪些庫。 h]h)}(h**二進制存在但依賴項不可用Binary exists but dependencies not available** : 例如初始化二進制的必需庫依賴項,像 ``/lib/ld-linux.so.2`` 丟失或損壞。使用 ``readelf -d |grep NEEDED`` 找出需要哪些庫。h](j1)}(hT**二進制存在但依賴項不可用Binary exists but dependencies not available**h]hP二進制存在但依賴項不可用Binary exists but dependencies not available}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j0hjubh9 : 例如初始化二進制的必需庫依賴項,像 }(hjhhhNhNubjk)}(h``/lib/ld-linux.so.2``h]h/lib/ld-linux.so.2}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jjhjubh 丟失或損壞。使用 }(hjhhhNhNubjk)}(h!``readelf -d |grep NEEDED``h]hreadelf -d |grep NEEDED}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jjhjubh 找出需要哪些庫。}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK%hjubah}(h]h ]h"]h$]h&]uh1j&hj#hhhhhNubj')}(hXp**無法加載二進制Binary cannot be loaded** :請確保二進制的體系結構與您的 硬件匹配。例如i386不匹配x86_64,或者嘗試在ARM硬件上加載x86。如果您嘗試在 此處加載非二進制文件(shell腳本?),您應該確保腳本在其工作頭(shebang header)行 ``#!/...`` 中指定能正常工作的解釋器(包括其庫依賴項)。在處理 腳本之前,最好先測試一個簡單的非腳本二進制文件,比如 ``/bin/sh`` ,並確認 它能成功執行。要了解更多信息,請將代碼添加到 ``init/main.c`` 以顯示 kernel_execve()的返回值。 h]h)}(hXo**無法加載二進制Binary cannot be loaded** :請確保二進制的體系結構與您的 硬件匹配。例如i386不匹配x86_64,或者嘗試在ARM硬件上加載x86。如果您嘗試在 此處加載非二進制文件(shell腳本?),您應該確保腳本在其工作頭(shebang header)行 ``#!/...`` 中指定能正常工作的解釋器(包括其庫依賴項)。在處理 腳本之前,最好先測試一個簡單的非腳本二進制文件,比如 ``/bin/sh`` ,並確認 它能成功執行。要了解更多信息,請將代碼添加到 ``init/main.c`` 以顯示 kernel_execve()的返回值。h](j1)}(h0**無法加載二進制Binary cannot be loaded**h]h,無法加載二進制Binary cannot be loaded}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1j0hj4ubhX :請確保二進制的體系結構與您的 硬件匹配。例如i386不匹配x86_64,或者嘗試在ARM硬件上加載x86。如果您嘗試在 此處加載非二進制文件(shell腳本?),您應該確保腳本在其工作頭(shebang header)行 }(hj4hhhNhNubjk)}(h ``#!/...``h]h#!/...}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1jjhj4ubh 中指定能正常工作的解釋器(包括其庫依賴項)。在處理 腳本之前,最好先測試一個簡單的非腳本二進制文件,比如 }(hj4hhhNhNubjk)}(h ``/bin/sh``h]h/bin/sh}(hj\hhhNhNubah}(h]h ]h"]h$]h&]uh1jjhj4ubhQ ,並確認 它能成功執行。要了解更多信息,請將代碼添加到 }(hj4hhhNhNubjk)}(h``init/main.c``h]h init/main.c}(hjnhhhNhNubah}(h]h ]h"]h$]h&]uh1jjhj4ubh) 以顯示 kernel_execve()的返回值。}(hj4hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK)hj0ubah}(h]h ]h"]h$]h&]uh1j&hj#hhhhhNubeh}(h]h ]h"]h$]h&]enumtypearabicprefixhsuffix)uh1j!hjhhhhhKubh)}(h當您發現新的失敗原因時,請擴展本解釋(畢竟加載初始化二進制是一個 **關鍵** 且 艱難的過渡步驟,需要儘可能無痛地進行),然後向LKML提交一個補丁。h](ha當您發現新的失敗原因時,請擴展本解釋(畢竟加載初始化二進制是一個 }(hjhhhNhNubj1)}(h **關鍵**h]h關鍵}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j0hjubhc 且 艱難的過渡步驟,需要儘可能無痛地進行),然後向LKML提交一個補丁。}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK1hjhhubh)}(h待辦事項:h]h待辦事項:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK4hjhhubh bullet_list)}(hhh](j')}(h通過一個可以存儲 ``kernel_execve()`` 結果值的結構體數組實現各種 ``run_init_process()`` 調用,並在失敗時通過迭代 **所有** 結果來記錄一切 (非常重要的可用性修復)。h]h)}(h通過一個可以存儲 ``kernel_execve()`` 結果值的結構體數組實現各種 ``run_init_process()`` 調用,並在失敗時通過迭代 **所有** 結果來記錄一切 (非常重要的可用性修復)。h](h通過一個可以存儲 }(hjhhhNhNubjk)}(h``kernel_execve()``h]hkernel_execve()}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jjhjubh) 結果值的結構體數組實現各種 }(hjhhhNhNubjk)}(h``run_init_process()``h]hrun_init_process()}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jjhjubh& 調用,並在失敗時通過迭代 }(hjhhhNhNubj1)}(h **所有**h]h所有}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j0hjubh> 結果來記錄一切 (非常重要的可用性修復)。}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK6hjubah}(h]h ]h"]h$]h&]uh1j&hjhhhhhNubj')}(hp試着使實現本身在一般情況下更有幫助,例如在受影響的地方提供額外的錯誤消息。 h]h)}(ho試着使實現本身在一般情況下更有幫助,例如在受影響的地方提供額外的錯誤消息。h]ho試着使實現本身在一般情況下更有幫助,例如在受影響的地方提供額外的錯誤消息。}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK9hjubah}(h]h ]h"]h$]h&]uh1j&hjhhhhhNubeh}(h]h ]h"]h$]h&]bullet-uh1jhhhK6hjhhubeh}(h]no-working-init-foundah ]h"]4解釋“no working init found.”啓動掛起消息ah$]h&]uh1jhhhhhhhK ubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(jN generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerjcerror_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourceh _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}nameids}j=j:s nametypes}j=sh}j:js footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages] transformerN include_log]5Documentation/translations/zh_TW/admin-guide/init.rst(NNNNta decorationNhhub.