.. SPDX-License-Identifier: (GPL-2.0+ OR CC-BY-4.0) .. If you want to distribute this text under CC-BY-4.0 only, please use 'The Linux kernel developers' for author attribution and link this as source: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/plain/Documentation/admin-guide/reporting-issues.rst .. Note: Only the content of this RST file as found in the Linux kernel sources is available under CC-BY-4.0, as versions of this text that were processed (for example by the kernel's build system) might contain content taken from files which use a more restrictive license. .. include:: ../disclaimer-zh_TW.rst :Original: Documentation/admin-guide/reporting-issues.rst :è¯è€…: å³æƒ³æˆ Wu XiangCheng <bobwxc@email.cn> 胡皓文 Hu Haowen <src.res@email.cn> å ±å‘Šå•é¡Œ +++++++++ 簡明指å—ï¼ˆäº¦å³ å¤ªé•·ä¸çœ‹ï¼‰ ========================== 您é¢è‡¨çš„是å¦çˆ²åŒç³»åˆ—穩定版或長期支æŒå…§æ ¸çš„æ™®é€šå…§æ ¸çš„å›žæ¸ï¼Ÿæ˜¯å¦ä»ç„¶å—支æŒï¼Ÿ è«‹æœç´¢ `LKMLå…§æ ¸éƒµä»¶åˆ—è¡¨ <https://lore.kernel.org/lkml/>`_ å’Œ `Linux穩定版郵件列表 <https://lore.kernel.org/stable/>`_ å˜æª”ä¸åŒ¹é…çš„å ±å‘Šä¸¦ åŠ å…¥è¨Žè«–ã€‚å¦‚æžœæ‰¾ä¸åˆ°åŒ¹é…çš„å ±å‘Šï¼Œè«‹å®‰è£è©²ç³»åˆ—的最新版本。如果它ä»ç„¶å‡ºç¾å•é¡Œï¼Œ å ±å‘Šçµ¦ç©©å®šç‰ˆéƒµä»¶åˆ—è¡¨ï¼ˆstable@vger.kernel.org)。 在所有其他情æ³ä¸‹ï¼Œè«‹å„˜å¯èƒ½çŒœæ¸¬æ˜¯å“ªå€‹å…§æ ¸éƒ¨åˆ†å°Žè‡´äº†å•é¡Œã€‚查看MAINTAINERS文件, 了解開發人員希望如何得知å•é¡Œï¼Œå¤§å¤šæ•¸æƒ…æ³ä¸‹ï¼Œå ±å‘Šå•é¡Œéƒ½æ˜¯é€šéŽé›»åéƒµä»¶å’ŒæŠ„é€ ç›¸é—œéƒµä»¶åˆ—è¡¨é€²è¡Œçš„ã€‚æª¢æŸ¥å ±å‘Šç›®çš„åœ°çš„å˜æª”ä¸æ˜¯å¦å·²æœ‰åŒ¹é…çš„å ±å‘Šï¼›ä¹Ÿè«‹æœç´¢ `LKML <https://lore.kernel.org/lkml/>`_ 和網絡。如果找ä¸åˆ°å¯åŠ 入的討論,請 å®‰è£ `æœ€æ–°çš„ä¸»ç·šå…§æ ¸ <https://kernel.org/>`_ 。如果ä»å˜åœ¨å•é¡Œï¼Œè«‹ç™¼é€å ±å‘Šã€‚ å•é¡Œå·²ç¶“解決了,但是您希望看到它在一個ä»ç„¶æ”¯æŒçš„穩定版或長期支æŒç³»åˆ—ä¸å¾—到 解決?請安è£å…¶æœ€æ–°ç‰ˆæœ¬ã€‚如果它出ç¾äº†å•é¡Œï¼Œé‚£éº¼åœ¨ä¸»ç·šä¸æœç´¢ä¿®å¾©å®ƒçš„更改,並 檢查是å¦æ£åœ¨å›žå‚³ï¼ˆbackporting)或者已放棄;如果兩者都沒有,那麼å¯è©¢å•è™•ç† 更改的人員。 **通用æ醒** :當安è£å’Œæ¸¬è©¦ä¸Šè¿°å…§æ ¸æ™‚,請確ä¿å®ƒæ˜¯æ™®é€šçš„(å³ï¼šæ²’有補ä¸ï¼Œä¹Ÿæ²’ æœ‰ä½¿ç”¨é™„åŠ æ¨¡å¡Šï¼‰ã€‚é‚„è¦ç¢ºä¿å®ƒæ˜¯åœ¨ä¸€å€‹æ£å¸¸çš„環境ä¸æ§‹å»ºå’Œé‹è¡Œï¼Œä¸¦ä¸”在å•é¡Œç™¼ç”Ÿ 之å‰æ²’有被汙染(tainted)。 åœ¨ç·¨å¯«å ±å‘Šæ™‚ï¼Œè¦æ¶µè“‹èˆ‡å•é¡Œç›¸é—œçš„所有信æ¯ï¼Œå¦‚ä½¿ç”¨çš„å…§æ ¸å’Œç™¼è¡Œç‰ˆã€‚åœ¨ç¢°è¦‹å›žæ¸æ™‚, 嘗試給出引入它的更改的æ交ID,二分å¯ä»¥æ‰¾åˆ°å®ƒã€‚如果您åŒæ™‚é¢è‡¨Linuxå…§æ ¸çš„å¤šå€‹ å•é¡Œï¼Œè«‹åˆ†åˆ¥å ±å‘Šæ¯å€‹å•é¡Œã€‚ ä¸€æ—¦å ±å‘Šç™¼å‡ºï¼Œè«‹å›žç”任何出ç¾çš„å•é¡Œï¼Œä¸¦å„˜å¯èƒ½åœ°æ供幫助。這包括通éŽä¸æ™‚é‡æ–° 測試新版本並發é€ç‹€æ…‹æ›´æ–°ä¾†æŽ¨å‹•é€²å±•ã€‚ 如何å‘å…§æ ¸ç¶è·äººå“¡å ±å‘Šå•é¡Œçš„é€æ¥æŒ‡å— ===================================== 上é¢çš„簡明指å—概述了如何å‘Linuxå…§æ ¸é–‹ç™¼äººå“¡å ±å‘Šå•é¡Œã€‚å°æ–¼å·²ç¶“熟悉å‘自由和開 æºè»Ÿé«”(FLOSSï¼‰é …ç›®å ±å‘Šå•é¡Œçš„人來說,這å¯èƒ½æ˜¯ä»–們所需è¦çš„全部內容。å°æ–¼å…¶ä»– 人,本部分更爲詳細,並一æ¥ä¸€æ¥åœ°æ述。爲了便於閱讀,它ä»ç„¶å„˜é‡ç°¡æ½”,並çœç•¥ 了許多細節;這些在é€æ¥æŒ‡å—後的åƒè€ƒç« 節ä¸é€²è¡Œäº†æè¿°ï¼Œè©²ç« ç¯€æ›´è©³ç´°åœ°è§£é‡‹äº†æ¯ å€‹æ¥é©Ÿã€‚ 注æ„:本節涉åŠçš„æ–¹é¢æ¯”簡明指å—å¤šï¼Œé †åºä¹Ÿç¨æœ‰ä¸åŒã€‚這符åˆä½ 的利益,以確ä¿æ‚¨ 儘早æ„è˜åˆ°çœ‹èµ·ä¾†åƒLinuxå…§æ ¸æ¯›ç—…çš„å•é¡Œå¯èƒ½å¯¦éš›ä¸Šæ˜¯ç”±å…¶ä»–åŽŸå› å¼•èµ·çš„ã€‚é€™äº›æ¥é©Ÿ å¯ä»¥ç¢ºä¿ä½ 最終ä¸æœƒè¦ºå¾—在這一éŽç¨‹ä¸æŠ•å…¥çš„時間是浪費: * 您是å¦é¢è‡¨ç¡¬é«”或軟體供應商æ供的Linuxå…§æ ¸çš„å•é¡Œï¼Ÿé‚£éº¼åŸºæœ¬ä¸Šæ‚¨æœ€å¥½åœæ¢é–±è®€ 本文檔,轉而å‘æ‚¨çš„ä¾›æ‡‰å•†å ±å‘Šå•é¡Œï¼Œé™¤éžæ‚¨é¡˜æ„自己安è£æœ€æ–°çš„Linux版本。尋找 和解決å•é¡Œå¾€å¾€éœ€è¦å¾Œè€…。 * 使用您喜愛的網絡æœå°‹å¼•æ“Žå°ç¾æœ‰å ±å‘Šé€²è¡Œç²—ç•¥æœç´¢ï¼›æ¤å¤–,請檢查 `Linuxå…§æ ¸éƒµä»¶åˆ—è¡¨ï¼ˆLKML) <https://lore.kernel.org/lkml/>`_ çš„å˜æª”。如果 找到匹é…çš„å ±å‘Šï¼Œè«‹åŠ å…¥è¨Žè«–è€Œä¸æ˜¯ç™¼é€æ–°å ±å‘Šã€‚ * çœ‹çœ‹ä½ æ£åœ¨è™•ç†çš„å•é¡Œæ˜¯å¦çˆ²å›žæ¸å•é¡Œã€å®‰å…¨å•é¡Œæˆ–éžå¸¸åš´é‡çš„å•é¡Œï¼šé€™äº›éƒ½æ˜¯éœ€ è¦åœ¨æŽ¥ä¸‹ä¾†çš„一些æ¥é©Ÿä¸ç‰¹åˆ¥è™•ç†çš„「高優先級å•é¡Œã€ã€‚ * 確ä¿ä¸æ˜¯å…§æ ¸ç’°å¢ƒå°Žè‡´äº†æ‚¨é¢è‡¨çš„å•é¡Œã€‚ * 創建一個新的備份,並將系統修復和æ¢å¾©å·¥å…·æ”¾åœ¨æ‰‹é‚Šã€‚ * 確ä¿æ‚¨çš„系統ä¸æœƒé€šéŽå‹•æ…‹æ§‹å»ºé¡å¤–çš„å…§æ ¸æ¨¡å¡Šä¾†å¢žå¼·å…¶å…§æ ¸ï¼ŒåƒDKMS這樣的解決 方案å¯èƒ½åœ¨æ‚¨ä¸çŸ¥æƒ…的情æ³ä¸‹å°±åœ¨æœ¬åœ°é€²è¡Œäº†é€™æ¨£çš„工作。 * 當å•é¡Œç™¼ç”Ÿæ™‚ï¼Œæª¢æŸ¥æ‚¨çš„å…§æ ¸æ˜¯å¦è¢«ã€Œæ±™æŸ“ã€ï¼Œå› çˆ²ä½¿å…§æ ¸è¨ç½®é€™å€‹æ¨™èªŒçš„事件å¯èƒ½ 會導致您é¢è‡¨çš„å•é¡Œã€‚ * 粗略地寫下如何é‡ç¾é€™å€‹å•é¡Œã€‚如果您åŒæ™‚處ç†å¤šå€‹å•é¡Œï¼Œè«‹çˆ²æ¯å€‹å•é¡Œå–®ç¨å¯«æ³¨ 釋,並確ä¿å®ƒå€‘在新啓動的系統上ç¨ç«‹å‡ºç¾ã€‚這是必è¦çš„ï¼Œå› çˆ²æ¯å€‹å•é¡Œéƒ½éœ€è¦åˆ† åˆ¥å ±å‘Šçµ¦å…§æ ¸é–‹ç™¼äººå“¡ï¼Œé™¤éžå®ƒå€‘åš´é‡ç³¾çºåœ¨ä¸€èµ·ã€‚ * 如果您æ£é¢è‡¨ç©©å®šç‰ˆæˆ–長期支æŒç‰ˆæœ¬ç·šçš„回æ¸ï¼ˆä¾‹å¦‚從5.10.4更新到5.10.5æ™‚å‡ºç¾ æ•…éšœï¼‰ï¼Œè«‹æŸ¥çœ‹å¾Œæ–‡ã€Œå ±å‘Šç©©å®šç‰ˆå’Œé•·æœŸæ”¯æŒå…§æ ¸ç·šçš„回æ¸ã€å°ç¯€ã€‚ * 定ä½å¯èƒ½å¼•èµ·å•é¡Œçš„驅動程åºæˆ–å…§æ ¸åç³»çµ±ã€‚æ‰¾å‡ºå…¶é–‹ç™¼äººå“¡æœŸæœ›çš„å ±å‘Šçš„æ–¹å¼å’Œ ä½ç½®ã€‚注æ„:大多數情æ³ä¸‹ä¸æœƒæ˜¯ bugzilla.kernel.orgï¼Œå› çˆ²å•é¡Œé€šå¸¸éœ€è¦é€š éŽéƒµä»¶ç™¼é€çµ¦ç¶è·äººå“¡å’Œå…¬å…±éƒµä»¶åˆ—表。 * 在缺陷追蹤器或å•é¡Œç›¸é—œéƒµä»¶åˆ—表的å˜æª”ä¸å¾¹åº•æœç´¢å¯èƒ½èˆ‡æ‚¨çš„å•é¡ŒåŒ¹é…çš„å ±å‘Šã€‚ å¦‚æžœä½ ç™¼ç¾äº†ä¸€äº›ç›¸é—œè¨Žè«–ï¼Œè«‹åŠ å…¥è¨Žè«–è€Œä¸æ˜¯ç™¼é€æ–°çš„å ±å‘Šã€‚ 在完æˆé€™äº›æº–å‚™ä¹‹å¾Œï¼Œä½ å°‡é€²å…¥ä¸»è¦éƒ¨åˆ†ï¼š * 除éžæ‚¨å·²ç¶“在é‹è¡Œæœ€æ–°çš„「主線ã€Linuxå…§æ ¸ï¼Œå¦å‰‡æœ€å¥½åœ¨å ±å‘Šæµç¨‹å‰å®‰è£å®ƒã€‚在æŸäº› 情æ³ä¸‹ï¼Œä½¿ç”¨æœ€æ–°çš„「穩定版ã€Linuxé€²è¡Œæ¸¬è©¦å’Œå ±å‘Šä¹Ÿæ˜¯å¯ä»¥æŽ¥å—的替代方案;在 åˆä½µçª—å£æœŸé–“,這實際上å¯èƒ½æ˜¯æœ€å¥½çš„方法,但在開發階段最好還是暫åœå¹¾å¤©ã€‚ç„¡è«– ä½ é¸æ“‡ä»€éº¼ç‰ˆæœ¬ï¼Œæœ€å¥½ä½¿ç”¨ã€Œæ™®é€šã€æ§‹å»ºã€‚忽略這些建è°æœƒå¤§å¤§å¢žåŠ æ‚¨çš„å ±å‘Šè¢«æ‹’çµ• 或忽略的風險。 * 確ä¿æ‚¨å‰›å‰›å®‰è£çš„å…§æ ¸åœ¨é‹è¡Œæ™‚ä¸æœƒã€Œæ±™æŸ“ã€è‡ªå·±ã€‚ * 在您剛剛安è£çš„å…§æ ¸ä¸å¾©ç¾é€™å€‹å•é¡Œã€‚如果它沒有出ç¾ï¼Œè«‹æŸ¥çœ‹ä¸‹æ–¹åªç™¼ç”Ÿåœ¨ 穩定版和長期支æŒå…§æ ¸çš„å•é¡Œçš„說明。 * å„ªåŒ–ä½ çš„ç†è¨˜ï¼šè©¦è‘—找到並寫出最直接的復ç¾å•é¡Œçš„方法。確ä¿æœ€çµ‚çµæžœåŒ…å«æ‰€æœ‰ é‡è¦çš„細節,åŒæ™‚讓第一次è½èªªçš„人容易閱讀和ç†è§£ã€‚如果您在æ¤éŽç¨‹ä¸å¸åˆ°äº†ä¸€ 些æ±è¥¿ï¼Œè«‹è€ƒæ…®å†æ¬¡æœç´¢é—œæ–¼è©²å•é¡Œçš„ç¾æœ‰å ±å‘Šã€‚ * 如果失敗涉åŠã€Œpanicã€ã€ã€ŒOopsã€ã€ã€Œwarningã€æˆ–「BUGã€ï¼Œè«‹è€ƒæ…®è§£ç¢¼å…§æ ¸æ—¥èªŒä»¥æŸ¥æ‰¾è§¸ 發錯誤的代碼行。 * 如果您的å•é¡Œæ˜¯å›žæ¸å•é¡Œï¼Œè«‹å„˜å¯èƒ½ç¸®å°å¼•å…¥å•é¡Œæ™‚的範åœã€‚ * 通éŽè©³ç´°æè¿°å•é¡Œä¾†é–‹å§‹ç·¨å¯«å ±å‘Šã€‚記得包括以下æ¢ç›®ï¼šæ‚¨çˆ²å¾©ç¾è€Œå®‰è£çš„最新內 æ ¸ç‰ˆæœ¬ã€ä½¿ç”¨çš„Linux發行版以åŠé—œæ–¼å¦‚何復ç¾è©²å•é¡Œçš„說明。如果å¯èƒ½ï¼Œå°‡å…§æ ¸ 構建é…置(.config)和 ``dmesg`` 的輸出放在網上的æŸå€‹åœ°æ–¹ï¼Œä¸¦é€£çµåˆ°å®ƒã€‚包 å«æˆ–上傳所有其他å¯èƒ½ç›¸é—œçš„ä¿¡æ¯ï¼Œå¦‚Oops的輸出/截圖或來自 ``lspci`` 的輸出 ã€‚ä¸€æ—¦ä½ å¯«å®Œäº†é€™å€‹ä¸»è¦éƒ¨åˆ†ï¼Œè«‹åœ¨ä¸Šæ–¹æ’入一個æ£å¸¸é•·åº¦çš„段è½å¿«é€Ÿæ¦‚è¿°å•é¡Œå’Œ 影響。å†åœ¨æ¤ä¹‹ä¸Šæ·»åŠ 一個簡單æè¿°å•é¡Œçš„å¥å,以得到人們的閱讀。ç¾åœ¨çµ¦å‡ºä¸€ 個更çŸçš„æ述性標題或主題。然後就å¯ä»¥åƒMAINTAINERSæ–‡ä»¶å‘Šè¨´ä½ çš„é‚£æ¨£ç™¼é€æˆ– æäº¤å ±å‘Šäº†ï¼Œé™¤éžä½ 在處ç†ä¸€å€‹ã€Œé«˜å„ªå…ˆç´šå•é¡Œã€ï¼šå®ƒå€‘需è¦æŒ‰ç…§ä¸‹é¢ã€Œé«˜å„ªå…ˆç´šå• 題的特殊處ç†ã€æ‰€è¿°ç‰¹åˆ¥é—œç…§ã€‚ * ç‰å¾…別人的åæ‡‰ï¼Œç¹¼çºŒæŽ¨é€²äº‹æƒ…ï¼Œç›´åˆ°ä½ èƒ½å¤ æŽ¥å—這樣或那樣的çµæžœã€‚å› æ¤ï¼Œè«‹å…¬ é–‹å’ŒåŠæ™‚地回應任何詢å•ã€‚測試æ出的修復。ç©æ¥µåœ°æ¸¬è©¦ï¼šè‡³å°‘é‡æ–°æ¸¬è©¦æ¯å€‹æ–°ä¸» 線版本的首個候é¸ç‰ˆæœ¬ï¼ˆRCï¼‰ï¼Œä¸¦å ±å‘Šä½ çš„çµæžœã€‚如果出ç¾æ‹–延,就å‹å¥½åœ°æ醒一 ä¸‹ã€‚å¦‚æžœä½ æ²’æœ‰å¾—åˆ°ä»»ä½•å¹«åŠ©æˆ–è€…æœªèƒ½æ»¿æ„,請試著自己幫助自己。 å ±å‘Šç©©å®šç‰ˆå’Œé•·æœŸæ”¯æŒå…§æ ¸ç·šçš„å›žæ¸ ---------------------------------- 如果您發ç¾äº†ç©©å®šç‰ˆæˆ–長期支æŒå…§æ ¸ç‰ˆæœ¬ç·šä¸çš„回æ¸å•é¡Œä¸¦æŒ‰ä¸Šè¿°æµç¨‹è·³åˆ°é€™è£¡ï¼Œé‚£éº¼ 請閱讀本å°ç¯€ã€‚å³ä¾‹å¦‚您在從5.10.4更新到5.10.5時出ç¾äº†å•é¡Œï¼ˆå¾ž5.9.15到5.10.5則 ä¸æ˜¯ï¼‰ã€‚開發人員希望儘快修復æ¤é¡žå›žæ¸ï¼Œå› æ¤æœ‰ä¸€å€‹ç°¡åŒ–æµç¨‹ä¾†å ±å‘Šå®ƒå€‘: * æª¢æŸ¥å…§æ ¸é–‹ç™¼äººå“¡æ˜¯å¦ä»ç„¶ç¶è·ä½ 關心的Linuxå…§æ ¸ç‰ˆæœ¬ç·šï¼šåŽ» `kernel.org 的首é <https://kernel.org/>`_ ,確ä¿æ¤ç‰¹å®šç‰ˆæœ¬ç·šçš„最新版沒有「[EOL]ã€æ¨™è¨˜ã€‚ * 檢查 `Linux穩定版郵件列表 <https://lore.kernel.org/stable/>`_ ä¸çš„ç¾æœ‰å ±å‘Šã€‚ * 從特定的版本線安è£æœ€æ–°ç‰ˆæœ¬ä½œçˆ²ç´”æ·¨å…§æ ¸ã€‚ç¢ºä¿é€™å€‹å…§æ ¸æ²’有被汙染,並且ä»ç„¶ å˜åœ¨å•é¡Œï¼Œå› 爲å•é¡Œå¯èƒ½å·²ç¶“在那裡被修復了。如果您第一次發ç¾ä¾›æ‡‰å•†å…§æ ¸çš„å•é¡Œï¼Œ 請檢查已知最新版本的普通構建是å¦å¯ä»¥æ£å¸¸é‹è¡Œã€‚ * å‘Linux穩定版郵件列表發é€ä¸€å€‹ç°¡çŸçš„å•é¡Œå ±å‘Š(stable@vger.kernel.org)。大致 æè¿°å•é¡Œï¼Œä¸¦è§£é‡‹å¦‚何復ç¾ã€‚講清楚首個出ç¾å•é¡Œçš„版本和最後一個工作æ£å¸¸çš„版本。 然後ç‰å¾…進一æ¥çš„指示。 下é¢çš„åƒè€ƒç« 節部分詳細解釋了這些æ¥é©Ÿä¸çš„æ¯ä¸€æ¥ã€‚ å ±å‘Šåªç™¼ç”Ÿåœ¨è¼ƒèˆŠå…§æ ¸ç‰ˆæœ¬ç·šçš„å•é¡Œ ---------------------------------- è‹¥æ‚¨å˜—è©¦äº†ä¸Šè¿°çš„æœ€æ–°ä¸»ç·šå…§æ ¸ï¼Œä½†æœªèƒ½åœ¨é‚£è£¡å¾©ç¾å•é¡Œï¼Œé‚£éº¼æœ¬å°ç¯€é©ç”¨æ–¼æ‚¨ï¼›ä»¥ä¸‹ æµç¨‹æœ‰åŠ©æ–¼ä½¿å•é¡Œåœ¨ä»ç„¶æ”¯æŒçš„穩定版或長期支æŒç‰ˆæœ¬ç·šï¼Œæˆ–者定期基於最新穩定版或 長期支æŒå…§æ ¸çš„ä¾›æ‡‰å•†å…§æ ¸ä¸å¾—到修復。如果是這種情æ³ï¼Œè«‹åŸ·è¡Œä»¥ä¸‹æ¥é©Ÿï¼š * è«‹åšå¥½æº–備,接下來的幾個æ¥é©Ÿå¯èƒ½ç„¡æ³•åœ¨èˆŠç‰ˆæœ¬ä¸è§£æ±ºå•é¡Œï¼šä¿®å¾©å¯èƒ½å¤ªå¤§æˆ–太 冒險,無法移æ¤åˆ°é‚£è£¡ã€‚ * 執行å‰ç¯€ã€Œå ±å‘Šç©©å®šç‰ˆå’Œé•·æœŸæ”¯æŒå…§æ ¸ç·šçš„回æ¸ã€ä¸çš„å‰ä¸‰å€‹æ¥é©Ÿã€‚ * 在Linuxå…§æ ¸ç‰ˆæœ¬æŽ§åˆ¶ç³»çµ±ä¸æœç´¢ä¿®å¾©ä¸»ç·šå•é¡Œçš„æ›´æ”¹ï¼Œå› çˆ²å®ƒçš„æ交消æ¯å¯èƒ½æœƒ å‘Šè¨´ä½ ä¿®å¾©æ˜¯å¦å·²ç¶“計劃好了支æŒã€‚å¦‚æžœä½ æ²’æœ‰æ‰¾åˆ°ï¼Œæœç´¢é©ç•¶çš„郵件列表,尋找 討論æ¤é¡žå•é¡Œæˆ–åŒè¡Œè©•è°å¯èƒ½ä¿®å¾©çš„帖å;然後檢查討論是å¦èªçˆ²ä¿®å¾©ä¸é©åˆæ”¯æŒã€‚ 如果支æŒæ ¹æœ¬ä¸è¢«è€ƒæ…®ï¼ŒåŠ 入最新的討論,詢å•æ˜¯å¦æœ‰å¯èƒ½ã€‚ * å‰é¢çš„æ¥é©Ÿä¹‹ä¸€æ‡‰è©²æœƒçµ¦å‡ºä¸€å€‹è§£æ±ºæ–¹æ¡ˆã€‚如果ä»æœªèƒ½æˆåŠŸï¼Œè«‹å‘å¯èƒ½å¼•èµ·å•é¡Œçš„ å系統的ç¶è·äººå“¡è©¢å•å»ºè°ï¼›æŠ„é€ç‰¹å®šå系統的郵件列表以åŠç©©å®šç‰ˆéƒµä»¶åˆ—表 下é¢çš„åƒè€ƒç« 節部分詳細解釋了這些æ¥é©Ÿä¸çš„æ¯ä¸€æ¥ã€‚ åƒè€ƒç« 節:å‘å…§æ ¸ç¶è·è€…å ±å‘Šå•é¡Œ =============================== 上é¢çš„詳細指å—ç°¡è¦åœ°åˆ—出了所有主è¦æ¥é©Ÿï¼Œé€™å°å¤§å¤šæ•¸äººä¾†èªªæ‡‰è©²è¶³å¤ 了。但有時, å³ä½¿æ˜¯æœ‰ç¶“驗的用戶也å¯èƒ½æƒ³çŸ¥é“如何實際執行這些æ¥é©Ÿä¹‹ä¸€ã€‚這就是本節的目的, å› çˆ²å®ƒå°‡æ供關於上述æ¯å€‹æ¥é©Ÿçš„更多細節。請將æ¤ä½œçˆ²åƒè€ƒæ–‡æª”:å¯ä»¥å¾žé 到尾 閱讀它。但它主è¦æ˜¯çˆ²äº†ç€è¦½å’ŒæŸ¥æ‰¾å¦‚何實際執行這些æ¥é©Ÿçš„詳細信æ¯ã€‚ 在深入挖掘細節之å‰ï¼Œæˆ‘æƒ³å…ˆçµ¦ä½ ä¸€äº›ä¸€èˆ¬æ€§å»ºè°ï¼š * Linuxå…§æ ¸é–‹ç™¼äººå“¡å¾ˆæ¸…æ¥šé€™å€‹éŽç¨‹å¾ˆè¤‡é›œï¼Œæ¯”其他的FLOSSé …ç›®è¦æ±‚更多。我們很 希望讓它更簡單。但這需è¦åœ¨ä¸åŒçš„地方以åŠä¸€äº›åŸºç¤Žè¨æ–½ä¸Šä»˜è«¸åŠªåŠ›ï¼Œé€™äº›åŸºç¤Ž è¨æ–½éœ€è¦æŒçºŒçš„ç¶è·ï¼›å°šæœªæœ‰äººç«™å‡ºä¾†åšé€™äº›å·¥ä½œï¼Œæ‰€ä»¥ç›®å‰æƒ…æ³å°±æ˜¯é€™æ¨£ã€‚ * 與æŸäº›ä¾›æ‡‰å•†ç°½è¨‚çš„ä¿è‰æˆ–支æŒåˆåŒä¸¦ä¸èƒ½ä½¿æ‚¨æœ‰æ¬Šè¦æ±‚上游Linuxå…§æ ¸ç¤¾å€çš„é–‹ 發人員進行修復:這樣的åˆåŒå®Œå…¨åœ¨Linuxå…§æ ¸ã€å…¶é–‹ç™¼ç¤¾å€å’Œæœ¬æ–‡æª”的範åœä¹‹å¤–。 這就是爲什麼在這種情æ³ä¸‹ï¼Œä½ ä¸èƒ½è¦æ±‚任何契約ä¿è‰ï¼Œå³ä½¿é–‹ç™¼äººå“¡è™•ç†çš„å• é¡Œå°ä¾›æ‡‰å•†æœ‰æ•ˆã€‚如果您想主張您的權利,使用供應商的支æŒæ¸ é“ä»£æ›¿ã€‚ç•¶é€™æ¨£åš çš„æ™‚å€™ï¼Œä½ å¯èƒ½æƒ³æå‡ºä½ å¸Œæœ›çœ‹åˆ°é€™å€‹å•é¡Œåœ¨ä¸Šæ¸¸Linuxå…§æ ¸ä¸ä¿®å¾©ï¼›å¯ä»¥é€™æ˜¯ç¢º ä¿æœ€çµ‚修復將被ç´å…¥æ‰€æœ‰Linux發行版的唯一方法來鼓勵他們。 * 如果您從未å‘FLOSSé …ç›®å ±å‘ŠéŽä»»ä½•å•é¡Œï¼Œé‚£éº¼æ‚¨æ‡‰è©²è€ƒæ…®é–±è®€ `å¦‚ä½•æœ‰æ•ˆåœ°å ±å‘Š 缺陷 <https://www.chiark.greenend.org.uk/~sgtatham/bugs.html>`_ , `如何 以明智的方å¼æå• <http://www.catb.org/esr/faqs/smart-questions.html>`_ , å’Œ `如何æ出好å•é¡Œ <https://jvns.ca/blog/good-questions/>`_ 。 解決這些å•é¡Œä¹‹å¾Œï¼Œå¯ä»¥åœ¨ä¸‹é¢æ‰¾åˆ°å¦‚何æ£ç¢ºåœ°å‘Linuxå…§æ ¸å ±å‘Šå•é¡Œçš„詳細信æ¯ã€‚ 確ä¿æ‚¨ä½¿ç”¨çš„是上游Linuxå…§æ ¸ ---------------------------- *您是å¦é¢è‡¨ç¡¬é«”或軟體供應商æ供的Linuxå…§æ ¸çš„å•é¡Œï¼Ÿé‚£éº¼åŸºæœ¬ä¸Šæ‚¨æœ€å¥½åœæ¢é–± 讀本文檔,轉而å‘æ‚¨çš„ä¾›æ‡‰å•†å ±å‘Šå•é¡Œï¼Œé™¤éžæ‚¨é¡˜æ„自己安è£æœ€æ–°çš„Linux版本。 尋找和解決å•é¡Œå¾€å¾€éœ€è¦å¾Œè€…。* 與大多數程å¼è¨è¨ˆå¸«ä¸€æ¨£ï¼ŒLinuxå…§æ ¸é–‹ç™¼äººå“¡ä¸å–œæ¡èŠ±æ™‚間處ç†ä»–們ç¶è·çš„原始碼ä¸æ ¹æœ¬ ä¸æœƒç™¼ç”Ÿçš„å•é¡Œçš„å ±å‘Šã€‚é€™åªæœƒæµªè²»æ¯å€‹äººçš„æ™‚é–“ï¼Œå°¤å…¶æ˜¯ä½ çš„æ™‚é–“ã€‚ä¸å¹¸çš„是,當 涉åŠåˆ°å…§æ ¸æ™‚,這樣的情æ³å¾ˆå®¹æ˜“ç™¼ç”Ÿï¼Œä¸¦ä¸”å¸¸å¸¸å°Žè‡´é›™æ–¹æ°£é¤’ã€‚é€™æ˜¯å› çˆ²å¹¾ä¹Žæ‰€æœ‰é è£åœ¨è¨å‚™ï¼ˆå°å¼æ©Ÿã€ç†è¨˜æœ¬é›»è…¦ã€æ™ºæ…§åž‹æ‰‹æ©Ÿã€è·¯ç”±å™¨ç‰ï¼‰ä¸Šçš„Linuxå…§æ ¸ï¼Œä»¥åŠå¤§å¤šæ•¸ ç”±Linux發行商æä¾›çš„å…§æ ¸ï¼Œéƒ½èˆ‡ç”±kernel.org發行的官方Linuxå…§æ ¸ç›¸è·ç”šé :從Linux 開發的角度來看,這些供應商æä¾›çš„å…§æ ¸é€šå¸¸æ˜¯å¤è€çš„或者經éŽäº†å¤§é‡ä¿®æ”¹ï¼Œé€šå¸¸å…©é»ž 兼具。 å¤§å¤šæ•¸ä¾›æ‡‰å•†å…§æ ¸éƒ½ä¸é©åˆç”¨ä¾†å‘Linuxå…§æ ¸é–‹ç™¼äººå“¡å ±å‘Šå•é¡Œï¼šæ‚¨åœ¨å…¶ä¸é‡åˆ°çš„å•é¡Œ å¯èƒ½å·²ç¶“ç”±Linuxå…§æ ¸é–‹ç™¼äººå“¡åœ¨æ•¸æœˆæˆ–æ•¸å¹´å‰ä¿®å¾©ï¼›æ¤å¤–,供應商的修改和增強å¯èƒ½ 會導致您é¢è‡¨çš„å•é¡Œï¼Œå³ä½¿å®ƒå€‘看起來很å°æˆ–者完全ä¸ç›¸é—œã€‚é€™å°±æ˜¯çˆ²ä»€éº¼æ‚¨æ‡‰è©²å‘ ä¾›æ‡‰å•†å ±å‘Šé€™äº›å…§æ ¸çš„å•é¡Œã€‚å®ƒçš„é–‹ç™¼è€…æ‡‰è©²æŸ¥çœ‹å ±å‘Šï¼Œå¦‚æžœå®ƒæ˜¯ä¸€å€‹ä¸Šæ¸¸å•é¡Œï¼Œç›´æŽ¥ æ–¼ä¸Šæ¸¸ä¿®å¾©æˆ–å°‡å ±å‘Šè½‰ç™¼åˆ°é‚£è£¡ã€‚åœ¨å¯¦è¸ä¸ï¼Œé€™æœ‰æ™‚è¡Œä¸é€šã€‚å› æ¤ï¼Œæ‚¨å¯èƒ½éœ€è¦è€ƒæ…® 通éŽè‡ªå·±å®‰è£æœ€æ–°çš„Linuxå…§æ ¸å…§æ ¸ä¾†ç¹žéŽä¾›æ‡‰å•†ã€‚如果如果您é¸æ“‡æ¤æ–¹æ³•ï¼Œé‚£éº¼æœ¬æŒ‡ å—後é¢çš„æ¥é©Ÿå°‡è§£é‡‹å¦‚何在排除了其他å¯èƒ½å°Žè‡´æ‚¨çš„å•é¡Œçš„åŽŸå› å¾ŒåŸ·è¡Œæ¤æ“作。 注æ„å‰æ®µä½¿ç”¨çš„詞語是「大多數ã€ï¼Œå› 爲有時候開發人員實際上願æ„處ç†ä¾›æ‡‰å•†å…§æ ¸å‡ºç¾ çš„å•é¡Œå ±å‘Šã€‚他們是å¦é€™éº¼åšå¾ˆå¤§ç¨‹åº¦ä¸Šå–決於開發人員和相關å•é¡Œã€‚å¦‚æžœç™¼è¡Œç‰ˆåª æ ¹æ“šæœ€è¿‘çš„Linux版本å°å…§æ ¸é€²è¡Œäº†è¼ƒå°ä¿®æ”¹ï¼Œé‚£éº¼æ©Ÿæœƒå°±æ¯”較大;例如å°æ–¼Debian GNU/Linux Sid或Fedora Rawhide所æä¾›çš„ä¸»ç·šå…§æ ¸ã€‚ä¸€äº›é–‹ç™¼äººå“¡é‚„å°‡æŽ¥å—基於最新 ç©©å®šå…§æ ¸çš„ç™¼è¡Œç‰ˆå…§æ ¸å•é¡Œå ±å‘Šï¼Œåªè¦å®ƒæ”¹å‹•ä¸å¤§ï¼›ä¾‹å¦‚Arch Linuxã€å¸¸è¦Fedora版本 å’ŒopenSUSE Turboweed。但是請記ä½ï¼Œæ‚¨æœ€å¥½ä½¿ç”¨ä¸»ç·šLinux,並é¿å…在æ¤æµç¨‹ä¸ä½¿ç”¨ ç©©å®šç‰ˆå…§æ ¸ï¼Œå¦‚ã€Œå®‰è£ä¸€å€‹æ–°çš„å…§æ ¸é€²è¡Œæ¸¬è©¦ã€ä¸€ç¯€ä¸æ‰€è©³è¿°ã€‚ 當然,您å¯ä»¥å¿½ç•¥æ‰€æœ‰é€™äº›å»ºè°ï¼Œä¸¦å‘上游Linuxé–‹ç™¼äººå“¡å ±å‘ŠèˆŠçš„æˆ–ç¶“éŽå¤§é‡ä¿®æ”¹çš„ ä¾›æ‡‰å•†å…§æ ¸çš„å•é¡Œã€‚但是注æ„ï¼Œé€™æ¨£çš„å ±å‘Šç¶“å¸¸è¢«æ‹’çµ•æˆ–å¿½è¦–ï¼Œæ‰€ä»¥è‡ªè¡Œå°å¿ƒè€ƒæ…®ä¸€ä¸‹ã€‚ ä¸éŽé€™é‚„æ˜¯æ¯”æ ¹æœ¬ä¸å ±å‘Šå•é¡Œè¦å¥½ï¼šæœ‰æ™‚å€™é€™æ¨£çš„å ±å‘Šæœƒç›´æŽ¥æˆ–é–“æŽ¥åœ°å¹«åŠ©è§£æ±ºä¹‹å¾Œçš„ å•é¡Œã€‚ æœç´¢ç¾æœ‰å ±å‘Šï¼ˆç¬¬ä¸€éƒ¨åˆ†ï¼‰ ------------------------- *使用您喜愛的網絡æœå°‹å¼•æ“Žå°ç¾æœ‰å ±å‘Šé€²è¡Œç²—ç•¥æœç´¢ï¼›æ¤å¤–,請檢查Linuxå…§æ ¸ 郵件列表(LKML)的å˜æª”。如果找到匹é…çš„å ±å‘Šï¼Œè«‹åŠ å…¥è¨Žè«–è€Œä¸æ˜¯ç™¼é€æ–°å ±å‘Šã€‚* å ±å‘Šä¸€å€‹åˆ¥äººå·²ç¶“æ出的å•é¡Œï¼Œå°æ¯å€‹äººä¾†èªªéƒ½æ˜¯æµªè²»æ™‚é–“ï¼Œå°¤å…¶æ˜¯ä½œçˆ²å ±å‘Šäººçš„ä½ ã€‚ 所以徹底檢查是å¦æœ‰äººå·²ç¶“å ±å‘Šäº†é€™å€‹å•é¡Œï¼Œé€™å°ä½ 自己是有利的。在æµç¨‹ä¸çš„這一æ¥ï¼Œ å¯ä»¥åªåŸ·è¡Œä¸€å€‹ç²—略的æœç´¢ï¼šä¸€æ—¦æ‚¨çŸ¥é“您的å•é¡Œéœ€è¦å ±å‘Šåˆ°å“ªè£¡ï¼Œç¨å¾Œçš„æ¥é©Ÿå°‡å‘Šè¨´ 您如何詳細æœç´¢ã€‚儘管如æ¤ï¼Œä¸è¦å€‰ä¿ƒå®Œæˆé€™ä¸€æ¥ï¼Œå®ƒå¯ä»¥ç¯€çœæ‚¨çš„時間和減少麻煩。 åªéœ€å…ˆç”¨ä½ 最喜æ¡çš„æœå°‹å¼•æ“Žåœ¨ç¶²éš›ç¶²è·¯ä¸Šæœç´¢ã€‚然後å†æœç´¢Linuxå…§æ ¸éƒµä»¶åˆ—è¡¨ï¼ˆLKML) å˜æª”。 如果æœç´¢çµæžœå¯¦åœ¨å¤ªå¤šï¼Œå¯ä»¥è€ƒæ…®è®“ä½ çš„æœå°‹å¼•æ“Žå°‡æœç´¢æ™‚間範åœé™åˆ¶åœ¨éŽåŽ»çš„一個 æœˆæˆ–ä¸€å¹´ã€‚è€Œä¸”ç„¡è«–ä½ åœ¨å“ªè£¡æœç´¢ï¼Œä¸€å®šè¦ç”¨æ°ç•¶çš„æœç´¢é—œéµè©žï¼›ä¹Ÿè¦è®ŠåŒ–å¹¾æ¬¡é—œéµ è©žã€‚åŒæ™‚,試著從別人的角度看å•é¡Œï¼šé€™å°‡å¹«åŠ©ä½ 想出其他的關éµè©žã€‚å¦å¤–ï¼Œä¸€å®šä¸ è¦åŒæ™‚使用éŽå¤šçš„é—œéµè©žã€‚記ä½æœç´¢æ™‚è¦åŒæ™‚嘗試包å«å’Œä¸åŒ…å«å…§æ ¸é©…動程åºçš„å稱 或å—影響的硬體組件的å稱ç‰ä¿¡æ¯ã€‚但其確切的å“牌å稱(比如說「è¯ç¢©ç´…é” Radeon RX 5700 XT Gaming OCã€ï¼‰å¾€å¾€å¹«åŠ©ä¸å¤§ï¼Œå› 爲它太具體了。相å,嘗試æœç´¢è¡“語,如 型號(Radeon 5700 或 Radeon 5000ï¼‰å’Œæ ¸å¿ƒä»£è™Ÿï¼ˆã€ŒNaviã€æˆ–「Navi10ã€ï¼‰ï¼Œä»¥åŠåŒ…å« å’Œä¸åŒ…å«å…¶è£½é€ 商(「AMDã€ï¼‰ã€‚ å¦‚æžœä½ ç™¼ç¾äº†é—œæ–¼ä½ çš„å•é¡Œçš„ç¾æœ‰å ±å‘Šï¼Œè«‹åŠ å…¥è¨Žè«–ï¼Œå› çˆ²ä½ å¯èƒ½æœƒæä¾›æœ‰åƒ¹å€¼çš„é¡ å¤–ä¿¡æ¯ã€‚這一點很é‡è¦ï¼Œå³ä½¿æ˜¯åœ¨ä¿®å¾©ç¨‹åºå·²ç¶“æº–å‚™å¥½æˆ–è™•æ–¼æœ€å¾ŒéšŽæ®µï¼Œå› çˆ²é–‹ç™¼äºº å“¡å¯èƒ½æœƒå°‹æ‰¾èƒ½å¤ æä¾›é¡å¤–ä¿¡æ¯æˆ–測試建è°ä¿®å¾©ç¨‹åºçš„äººã€‚è·³åˆ°ã€Œç™¼å¸ƒå ±å‘Šå¾Œçš„è²¬ä»»ã€ ä¸€ç¯€ï¼Œäº†è§£æœ‰é—œå¦‚ä½•æ£ç¢ºåƒèˆ‡çš„細節。 注æ„,æœç´¢ `bugzilla.kernel.org <https://bugzilla.kernel.org/>`_ 網站å¯èƒ½ 也是一個好主æ„ï¼Œå› çˆ²é€™å¯èƒ½æœƒæ供有價值的見解或找到匹é…çš„å ±å‘Šã€‚å¦‚æžœæ‚¨ç™¼ç¾å¾Œè€…, 請記ä½ï¼šå¤§å¤šæ•¸å系統都希望在ä¸åŒçš„ä½ç½®å ±å‘Šï¼Œå¦‚下é¢ã€Œä½ 需è¦å°‡å•é¡Œå ±å‘Šåˆ°ä½•è™•ã€ 一節ä¸æ‰€è¿°ã€‚å› æ¤æœ¬æ‡‰è™•ç†é€™å€‹å•é¡Œçš„開發人員甚至å¯èƒ½ä¸çŸ¥é“bugzilla的工單。所以 請檢查工單ä¸çš„å•é¡Œæ˜¯å¦å·²ç¶“æŒ‰ç…§æœ¬æ–‡æª”æ‰€è¿°å¾—åˆ°å ±å‘Šï¼Œå¦‚æžœæ²’æœ‰ï¼Œè«‹è€ƒæ…®é€™æ¨£åšã€‚ 高優先級的å•é¡Œï¼Ÿ ----------------- *çœ‹çœ‹ä½ æ£åœ¨è™•ç†çš„å•é¡Œæ˜¯å¦æ˜¯å›žæ¸å•é¡Œã€å®‰å…¨å•é¡Œæˆ–éžå¸¸åš´é‡çš„å•é¡Œï¼šé€™äº›éƒ½æ˜¯ 需è¦åœ¨æŽ¥ä¸‹ä¾†çš„一些æ¥é©Ÿä¸ç‰¹åˆ¥è™•ç†çš„「高優先級å•é¡Œã€ã€‚* Linus Torvalds和主è¦çš„Linuxå…§æ ¸é–‹ç™¼äººå“¡å¸Œæœ›çœ‹åˆ°ä¸€äº›å•é¡Œå„˜å¿«å¾—åˆ°è§£æ±ºï¼Œå› æ¤åœ¨ å ±å‘ŠéŽç¨‹ä¸æœ‰ä¸€äº›ã€Œé«˜å„ªå…ˆç´šå•é¡Œã€çš„處ç†ç•¥æœ‰ä¸åŒã€‚有三種情æ³ç¬¦åˆæ¢ä»¶:回æ¸ã€å®‰å…¨ å•é¡Œå’Œéžå¸¸åš´é‡çš„å•é¡Œã€‚ 如果在舊版本的Linuxå…§æ ¸ä¸å·¥ä½œçš„æ±è¥¿ä¸èƒ½åœ¨æ–°ç‰ˆæœ¬çš„Linuxå…§æ ¸ä¸å·¥ä½œï¼Œæˆ–者æŸç¨® 程度上在新版本的Linuxå…§æ ¸ä¸å·¥ä½œå¾—æ›´å·®ï¼Œé‚£éº¼ä½ å°±éœ€è¦è™•ç†ã€Œå›žæ¸ã€ã€‚å› æ¤ï¼Œç•¶ä¸€å€‹ 在Linux 5.7ä¸è¡¨ç¾è‰¯å¥½çš„WiFi驅動程åºåœ¨5.8ä¸è¡¨ç¾ä¸ä½³æˆ–æ ¹æœ¬ä¸èƒ½å·¥ä½œæ™‚,這是一 種回æ¸ã€‚如果應用程å¼åœ¨æ–°çš„å…§æ ¸ä¸å‡ºç¾ä¸ç©©å®šçš„ç¾è±¡ï¼Œé€™ä¹Ÿæ˜¯ä¸€ç¨®å›žæ¸ï¼Œé€™å¯èƒ½æ˜¯ ç”±æ–¼å…§æ ¸å’Œç”¨æˆ¶ç©ºé–“ä¹‹é–“çš„æŽ¥å£ï¼ˆå¦‚procfså’Œsysfs)發生ä¸å…¼å®¹çš„æ›´æ”¹é€ æˆçš„。顯著 的性能é™ä½Žæˆ–åŠŸè€—å¢žåŠ ä¹Ÿå¯ä»¥ç¨±çˆ²å›žæ¸ã€‚但是請記ä½:æ–°å…§æ ¸éœ€è¦ä½¿ç”¨èˆ‡èˆŠå…§æ ¸ç›¸ä¼¼çš„ é…置來構建(åƒè¦‹ä¸‹é¢å¦‚何實ç¾é€™ä¸€é»žï¼‰ã€‚é€™æ˜¯å› çˆ²å…§æ ¸é–‹ç™¼äººå“¡åœ¨å¯¦ç¾æ–°ç‰¹æ€§æ™‚有 時無法é¿å…ä¸å…¼å®¹æ€§ï¼›ä½†æ˜¯çˆ²äº†é¿å…回æ¸ï¼Œé€™äº›ç‰¹æ€§å¿…é ˆåœ¨æ§‹å»ºé…置期間顯å¼åœ°å•“用。 什麼是安全å•é¡Œç•™çµ¦æ‚¨è‡ªå·±åˆ¤æ–·ã€‚在繼續之å‰ï¼Œè«‹è€ƒæ…®é–±è®€ 「Documentation/translations/zh_TW/admin-guide/security-bugs.rstã€ï¼Œ å› çˆ²å®ƒæ供了如何最æ°ç•¶åœ°è™•ç†å®‰å…¨å•é¡Œçš„é¡å¤–細節。 當發生了完全無法接å—的糟糕事情時,æ¤å•é¡Œå°±æ˜¯ä¸€å€‹ã€Œéžå¸¸åš´é‡çš„å•é¡Œã€ã€‚例如, Linuxå…§æ ¸ç ´å£žäº†å®ƒè™•ç†çš„數據或æ壞了它é‹è¡Œçš„ç¡¬é«”ã€‚ç•¶å…§æ ¸çªç„¶é¡¯ç¤ºéŒ¯èª¤æ¶ˆæ¯ (「kernel panicã€ï¼‰ä¸¦åœæ¢å·¥ä½œï¼Œæˆ–è€…æ ¹æœ¬æ²’æœ‰ä»»ä½•åœæ¢ä¿¡æ¯æ™‚,您也在處ç†ä¸€å€‹åš´é‡ çš„å•é¡Œã€‚注æ„:ä¸è¦æ··æ·†ã€Œpanicã€ï¼ˆå…§æ ¸åœæ¢è‡ªèº«çš„致命錯誤)和「Oopsã€ï¼ˆå¯æ¢å¾©éŒ¯èª¤ï¼‰ï¼Œ å› çˆ²é¡¯ç¤ºå¾Œè€…ä¹‹å¾Œå…§æ ¸ä»ç„¶åœ¨é‹è¡Œã€‚ 確ä¿ç’°å¢ƒå¥åº· -------------- *確ä¿ä¸æ˜¯å…§æ ¸æ‰€è™•ç’°å¢ƒå°Žè‡´äº†ä½ 所é¢è‡¨çš„å•é¡Œã€‚* 看起來很åƒå…§æ ¸å•é¡Œçš„å•é¡Œæœ‰æ™‚是由構建或é‹è¡Œæ™‚ç’°å¢ƒå¼•èµ·çš„ã€‚å¾ˆé›£å®Œå…¨æŽ’é™¤é€™ç¨®å• é¡Œï¼Œä½†ä½ æ‡‰è©²å„˜é‡æ¸›å°‘這種å•é¡Œï¼š * æ§‹å»ºå…§æ ¸æ™‚ï¼Œè«‹ä½¿ç”¨ç¶“éŽé©—è‰çš„å·¥å…·ï¼Œå› çˆ²ç·¨è¯å™¨æˆ–二進ä½æ–‡ä»¶ä¸çš„錯誤å¯èƒ½æœƒå°Ž è‡´å…§æ ¸å‡ºç¾éŒ¯èª¤è¡Œçˆ²ã€‚ * 確ä¿æ‚¨çš„計算機組件在其è¨è¨ˆè¦ç¯„å…§é‹è¡Œï¼›é€™å°è™•ç†å™¨ã€å…§å˜å’Œä¸»æ¿å°¤çˆ²é‡è¦ã€‚å› æ¤ï¼Œç•¶é¢è‡¨æ½›åœ¨çš„å…§æ ¸å•é¡Œæ™‚,åœæ¢ä½Žé›»å£“æˆ–è¶…é »ã€‚ * 儘é‡ç¢ºä¿ä¸æ˜¯ç¡¬é«”æ•…éšœå°Žè‡´äº†ä½ çš„å•é¡Œã€‚例如,內å˜æ壞會導致大é‡çš„å•é¡Œï¼Œé€™äº› å•é¡Œæœƒè¡¨ç¾çˆ²çœ‹èµ·ä¾†åƒå…§æ ¸å•é¡Œã€‚ * å¦‚æžœä½ æ£åœ¨è™•ç†ä¸€å€‹æ–‡ä»¶ç³»çµ±å•é¡Œï¼Œä½ å¯èƒ½éœ€è¦ç”¨ ``fsck`` 檢查一下文件系統, å› çˆ²å®ƒå¯èƒ½æœƒä»¥æŸç¨®æ–¹å¼è¢«æ壞,從而導致無法é æœŸçš„å…§æ ¸è¡Œçˆ²ã€‚ * 在處ç†å›žæ¸å•é¡Œæ™‚,è¦ç¢ºä¿æ²’æœ‰åœ¨æ›´æ–°å…§æ ¸çš„åŒæ™‚ç™¼ç”Ÿäº†å…¶ä»–è®ŠåŒ–ã€‚ä¾‹å¦‚ï¼Œé€™å€‹å• é¡Œå¯èƒ½æ˜¯ç”±åŒæ™‚更新的其他軟體引起的。也有å¯èƒ½æ˜¯åœ¨ä½ 第一次é‡å•“é€²å…¥æ–°å…§æ ¸æ™‚ï¼Œ æŸå€‹ç¡¬é«”å·§åˆåœ°å£žäº†ã€‚更新系統 BIOS 或改變 BIOS è¨ç½®ä¸çš„æŸäº›å…§å®¹ä¹Ÿæœƒå°Žè‡´ 一些看起來很åƒå…§æ ¸å›žæ¸çš„å•é¡Œã€‚ 爲緊急情æ³åšå¥½æº–å‚™ ------------------- *創建一個全新的備份,並將系統修復和還原工具放在手邊* 我得æ醒您,您æ£åœ¨å’Œè¨ˆç®—機打交é“,計算機有時會出ç¾æ„想ä¸åˆ°çš„事情,尤其是當 您折騰其作æ¥ç³»çµ±çš„å…§æ ¸ç‰é—œéµéƒ¨ä»¶æ™‚ã€‚è€Œé€™å°±æ˜¯ä½ åœ¨é€™å€‹éŽç¨‹ä¸è¦åšçš„äº‹æƒ…ã€‚å› æ¤ï¼Œ 一定è¦å‰µå»ºä¸€å€‹å…¨æ–°çš„備份;還è¦ç¢ºä¿ä½ 手é 有修復或é‡è£ä½œæ¥ç³»çµ±çš„所有工具, 以åŠæ¢å¾©å‚™ä»½æ‰€éœ€çš„一切。 確ä¿ä½ çš„å…§æ ¸ä¸æœƒè¢«å¢žå¼· ------------------------ *確ä¿æ‚¨çš„系統ä¸æœƒé€šéŽå‹•æ…‹æ§‹å»ºé¡å¤–çš„å…§æ ¸æ¨¡å¡Šä¾†å¢žå¼·å…¶å…§æ ¸ï¼ŒåƒDKMS這樣的解 決方案å¯èƒ½åœ¨æ‚¨ä¸çŸ¥æƒ…的情æ³ä¸‹å°±åœ¨æœ¬åœ°é€²è¡Œäº†é€™æ¨£çš„工作。* å¦‚æžœå…§æ ¸ä»¥ä»»ä½•æ–¹å¼å¾—到增強,那麼å•é¡Œå ±å‘Šè¢«å¿½ç•¥æˆ–æ‹’çµ•çš„é¢¨éšªå°±æœƒæ€¥åŠ‡å¢žåŠ ã€‚é€™å°± 是爲什麼您應該刪除或ç¦ç”¨åƒakmodså’ŒDKMS這樣的機制:這些機制會自動構建é¡å¤–å…§æ ¸ 模塊,例如當您安è£æ–°çš„Linuxå…§æ ¸æˆ–ç¬¬ä¸€æ¬¡å¼•å°Žå®ƒæ™‚ã€‚ä¹Ÿè¦è¨˜å¾—åŒæ™‚刪除他們å¯èƒ½å®‰è£ 的任何模塊。然後é‡æ–°å•“å‹•å†ç¹¼çºŒã€‚ 注æ„ï¼Œä½ å¯èƒ½ä¸çŸ¥é“ä½ çš„ç³»çµ±æ£åœ¨ä½¿ç”¨é€™äº›è§£æ±ºæ–¹æ¡ˆä¹‹ä¸€ï¼šç•¶ä½ å®‰è£ Nvidia 專有圖 形驅動程åºã€VirtualBox æˆ–å…¶ä»–éœ€è¦ Linux å…§æ ¸ä»¥å¤–çš„æ¨¡å¡Šæ”¯æŒçš„軟體時,它們通 常會éœé»˜è¨ç½®ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ å¯èƒ½éœ€è¦å¸è¼‰é€™äº›è»Ÿé«”的軟體包,以擺脫任何第三方 å…§æ ¸æ¨¡å¡Šã€‚ 檢測「汙染ã€æ¨™èªŒ ---------------- *當å•é¡Œç™¼ç”Ÿæ™‚ï¼Œæª¢æŸ¥æ‚¨çš„å…§æ ¸æ˜¯å¦è¢«ã€Œæ±™æŸ“ã€ï¼Œå› çˆ²ä½¿å…§æ ¸è¨ç½®é€™å€‹æ¨™èªŒçš„äº‹ä»¶å¯ èƒ½æœƒå°Žè‡´æ‚¨é¢è‡¨çš„å•é¡Œã€‚* 當æŸäº›å¯èƒ½æœƒå°Žè‡´çœ‹èµ·ä¾†å®Œå…¨ä¸ç›¸é—œçš„å¾ŒçºŒéŒ¯èª¤çš„äº‹æƒ…ç™¼ç”Ÿæ™‚ï¼Œå…§æ ¸æœƒç”¨ã€Œæ±™æŸ“ (taint)ã€æ¨™èªŒæ¨™è¨˜è‡ªå·±ã€‚å¦‚æžœæ‚¨çš„å…§æ ¸å—到汙染,那麼您é¢è‡¨çš„å¯èƒ½æ˜¯é€™æ¨£çš„錯誤。 å› æ¤åœ¨æŠ•å…¥æ›´å¤šæ™‚間到這個éŽç¨‹ä¸ä¹‹å‰ï¼Œå„˜æ—©æŽ’除æ¤æƒ…æ³å¯èƒ½å°ä½ 有好處。這是這個 æ¥é©Ÿå‡ºç¾åœ¨é€™è£¡çš„å”¯ä¸€åŽŸå› ï¼Œå› çˆ²é€™å€‹éŽç¨‹ç¨å¾Œæœƒå‘Šè¨´æ‚¨å®‰è£æœ€æ–°çš„ä¸»ç·šå…§æ ¸ï¼›ç„¶å¾Œ 您將需è¦å†æ¬¡æª¢æŸ¥æ±™æŸ“æ¨™èªŒï¼Œå› çˆ²ç•¶å®ƒå‡ºå•é¡Œçš„æ™‚å€™å…§æ ¸å ±å‘Šæœƒé—œæ³¨å®ƒã€‚ 在æ£åœ¨é‹è¡Œçš„ç³»çµ±ä¸Šæª¢æŸ¥å…§æ ¸æ˜¯å¦æ±™æŸ“éžå¸¸å®¹æ˜“:如果 ``cat /proc/sys/kernel/tainted`` 返回「0ã€ï¼Œé‚£éº¼å…§æ ¸æ²’有被汙染,一切æ£å¸¸ã€‚在æŸäº›æƒ…æ³ä¸‹ç„¡æ³•æª¢æŸ¥è©²æ–‡ä»¶ï¼›é€™å°±æ˜¯ çˆ²ä»€éº¼ç•¶å…§æ ¸å ±å‘Šå…§éƒ¨å•é¡Œï¼ˆã€Œkernel bugã€ï¼‰ã€å¯æ¢å¾©éŒ¯èª¤ï¼ˆã€Œkernel Oopsã€ï¼‰æˆ–åœæ¢ æ“作å‰ä¸å¯æ¢å¾©çš„錯誤(「kernel panicã€ï¼‰æ™‚,它也會æ到汙染狀態。當其ä¸ä¸€å€‹éŒ¯ 誤發生時,查看列å°çš„錯誤消æ¯çš„é ‚éƒ¨ï¼Œæœç´¢ä»¥ã€ŒCPU:ã€é–‹é 的行。如果發ç¾å•é¡Œæ™‚å…§ æ ¸æœªè¢«æ±™æŸ“ï¼Œé‚£éº¼å®ƒæ‡‰è©²ä»¥ã€ŒNot infectedã€çµæŸï¼›å¦‚æžœä½ çœ‹åˆ°ã€ŒTainted:ã€ä¸”後跟一些 ç©ºæ ¼å’Œå—æ¯ï¼Œé‚£å°±è¢«æ±™æŸ“了。 å¦‚æžœä½ çš„å…§æ ¸è¢«æ±™æŸ“äº†ï¼Œè«‹é–±è®€ã€ŒDocumentation/translations/zh_TW/admin-guide/tainted-kernels.rstã€ ä»¥æ‰¾å‡ºåŽŸå› ã€‚è¨æ³•æ¶ˆé™¤æ±™æŸ“å› ç´ ã€‚é€šå¸¸æ˜¯ç”±ä»¥ä¸‹ä¸‰ç¨®å› ç´ ä¹‹ä¸€å¼•èµ·çš„ï¼š 1. 發生了一個å¯æ¢å¾©çš„錯誤(「kernel Oopsã€ï¼‰ï¼Œå…§æ ¸æ±™æŸ“äº†è‡ªå·±ï¼Œå› çˆ²å…§æ ¸çŸ¥é“在 æ¤ä¹‹å¾Œå®ƒå¯èƒ½æœƒå‡ºç¾å¥‡æ€ªçš„行爲錯亂。在這種情æ³ä¸‹ï¼Œæª¢æŸ¥æ‚¨çš„å…§æ ¸æˆ–ç³»çµ±æ—¥èªŒï¼Œ 並尋找以下列文å—é–‹é 的部分:: Oops: 0000 [#1] SMP 如方括號ä¸çš„「#1ã€æ‰€ç¤ºï¼Œé€™æ˜¯è‡ªå•“動以來的第一次Oops。æ¯å€‹Oopså’Œæ¤å¾Œç™¼ç”Ÿçš„ 任何其他å•é¡Œéƒ½å¯èƒ½æ˜¯é¦–個Oops的後續å•é¡Œï¼Œå³ä½¿é€™å…©å€‹å•é¡Œçœ‹èµ·ä¾†å®Œå…¨ä¸ç›¸é—œã€‚ 通éŽæ¶ˆé™¤é¦–個Oopsçš„åŽŸå› ä¸¦åœ¨ä¹‹å¾Œå¾©ç¾è©²å•é¡Œï¼Œå¯ä»¥æŽ’除這種情æ³ã€‚有時僅僅 é‡æ–°å•“å‹•å°±è¶³å¤ äº†ï¼Œæœ‰æ™‚æ›´æ”¹é…置後é‡æ–°å•“å‹•å¯ä»¥æ¶ˆé™¤Oops。但是在這個æµç¨‹ä¸ ä¸è¦èŠ±è²»å¤ªå¤šæ™‚é–“åœ¨é€™ä¸€é»žä¸Šï¼Œå› çˆ²å¼•èµ·Oopsçš„åŽŸå› å¯èƒ½å·²ç¶“在您ç¨å¾Œå°‡æŒ‰æµç¨‹ 安è£çš„æ–°Linuxå…§æ ¸ç‰ˆæœ¬ä¸ä¿®å¾©äº†ã€‚ 2. 您的系統使用的軟體安è£äº†è‡ªå·±çš„å…§æ ¸æ¨¡å¡Šï¼Œä¾‹å¦‚Nvidia的專有圖形驅動程åºæˆ– VirtualBoxã€‚ç•¶å…§æ ¸å¾žå¤–éƒ¨æºï¼ˆå³ä½¿å®ƒå€‘是開æºçš„ï¼‰åŠ è¼‰æ¤é¡žæ¨¡å¡Šæ™‚,它會汙染 自己:它們有時會在ä¸ç›¸é—œçš„å…§æ ¸å€åŸŸå°Žè‡´éŒ¯èª¤ï¼Œå¾žè€Œå¯èƒ½å°Žè‡´æ‚¨é¢è‡¨çš„å•é¡Œã€‚ å› æ¤ï¼Œç•¶æ‚¨æƒ³è¦å‘Linuxå…§æ ¸é–‹ç™¼äººå“¡å ±å‘Šå•é¡Œæ™‚ï¼Œæ‚¨å¿…é ˆé˜»æ¢é€™äº›æ¨¡å¡ŠåŠ 載。 大多數情æ³ä¸‹æœ€ç°¡å–®çš„方法是:臨時å¸è¼‰é€™äº›è»Ÿé«”,包括它們å¯èƒ½å·²ç¶“安è£çš„ä»» 何模塊。之後é‡æ–°å•“動。 3. ç•¶å…§æ ¸åŠ è¼‰é§ç•™åœ¨Linuxå…§æ ¸åŽŸå§‹ç¢¼staging樹ä¸çš„模塊時,它也會汙染自身。這 是一個特殊的å€åŸŸï¼Œä»£ç¢¼ï¼ˆä¸»è¦æ˜¯é©…動程åºï¼‰é‚„沒有é”到æ£å¸¸Linuxå…§æ ¸çš„è³ªé‡ æ¨™æº–ã€‚ç•¶æ‚¨å ±å‘Šæ¤ç¨®æ¨¡å¡Šçš„å•é¡Œæ™‚ï¼Œå…§æ ¸å—到汙染顯然是沒有å•é¡Œçš„ï¼›åªéœ€ç¢ºä¿ å•é¡Œæ¨¡å¡Šæ˜¯é€ æˆæ±™æŸ“çš„å”¯ä¸€åŽŸå› ã€‚å¦‚æžœå•é¡Œç™¼ç”Ÿåœ¨ä¸€å€‹ä¸ç›¸é—œçš„å€åŸŸï¼Œé‡æ–°å•“å‹• 並通éŽæŒ‡å®š ``foo.blacklist=1`` ä½œçˆ²å…§æ ¸åƒæ•¸è‡¨æ™‚阻æ¢è©²æ¨¡å¡Šè¢«åŠ 載(用有 å•é¡Œçš„模塊å替æ›ã€Œfooã€ï¼‰ã€‚ 記錄如何é‡ç¾å•é¡Œ ------------------ *粗略地寫下如何é‡ç¾é€™å€‹å•é¡Œã€‚如果您åŒæ™‚處ç†å¤šå€‹å•é¡Œï¼Œè«‹çˆ²æ¯å€‹å•é¡Œå–®ç¨å¯« 注釋,並確ä¿å®ƒå€‘在新啓動的系統上ç¨ç«‹å‡ºç¾ã€‚這是必è¦çš„ï¼Œå› çˆ²æ¯å€‹å•é¡Œéƒ½éœ€ è¦åˆ†åˆ¥å ±å‘Šçµ¦å…§æ ¸é–‹ç™¼äººå“¡ï¼Œé™¤éžå®ƒå€‘åš´é‡ç³¾çºåœ¨ä¸€èµ·ã€‚* å¦‚æžœä½ åŒæ™‚處ç†å¤šå€‹å•é¡Œï¼Œå¿…é ˆåˆ†åˆ¥å ±å‘Šæ¯å€‹å•é¡Œï¼Œå› 爲它們å¯èƒ½ç”±ä¸åŒçš„開發人員 處ç†ã€‚åœ¨ä¸€ä»½å ±å‘Šä¸æ述多種å•é¡Œï¼Œä¹Ÿæœƒè®“å…¶ä»–äººé›£ä»¥å°‡å…¶åˆ†é–‹ã€‚å› æ¤åªæœ‰åœ¨å•é¡Œåš´ é‡ç³¾çºçš„情æ³ä¸‹ï¼Œæ‰èƒ½å°‡å•é¡Œåˆä½µåœ¨ä¸€ä»½å ±å‘Šä¸ã€‚ æ¤å¤–ï¼Œåœ¨å ±å‘ŠéŽç¨‹ä¸ï¼Œä½ å¿…é ˆæ¸¬è©¦è©²å•é¡Œæ˜¯å¦ç™¼ç”Ÿåœ¨å…¶ä»–å…§æ ¸ç‰ˆæœ¬ä¸Šã€‚å› æ¤ï¼Œå¦‚果您 知é“如何在一個新啓動的系統上快速é‡ç¾å•é¡Œï¼Œå°‡ä½¿æ‚¨çš„å·¥ä½œæ›´åŠ è¼•é¬†ã€‚ 注æ„ï¼šå ±å‘Šåªç™¼ç”ŸéŽä¸€æ¬¡çš„å•é¡Œå¾€å¾€æ˜¯æ²’有çµæžœçš„ï¼Œå› çˆ²å®ƒå€‘å¯èƒ½æ˜¯ç”±æ–¼å®‡å®™è¼»å°„å°Ž 致的ä½ç¿»è½‰ã€‚æ‰€ä»¥ä½ æ‡‰è©²å˜—è©¦é€šéŽé‡ç¾å•é¡Œä¾†æŽ’除這種情æ³ï¼Œç„¶å¾Œå†ç¹¼çºŒã€‚å¦‚æžœä½ æœ‰ è¶³å¤ çš„ç¶“é©—ä¾†å€åˆ†ç”±æ–¼ç¡¬é«”故障引起的一次性錯誤和難以é‡ç¾çš„ç½•è¦‹å…§æ ¸å•é¡Œï¼Œå¯ä»¥ 忽略這個建è°ã€‚ 穩定版或長期支æŒå…§æ ¸çš„回æ¸ï¼Ÿ ----------------------------- *如果您æ£é¢è‡¨ç©©å®šç‰ˆæˆ–長期支æŒç‰ˆæœ¬ç·šçš„回æ¸ï¼ˆä¾‹å¦‚從5.10.4更新到5.10.5æ™‚å‡ºç¾ æ•…éšœï¼‰ï¼Œè«‹æŸ¥çœ‹å¾Œæ–‡ã€Œå ±å‘Šç©©å®šç‰ˆå’Œé•·æœŸæ”¯æŒå…§æ ¸ç·šçš„回æ¸ã€å°ç¯€ã€‚* 穩定版和長期支æŒå…§æ ¸ç‰ˆæœ¬ç·šä¸çš„回æ¸æ˜¯Linux開發人員éžå¸¸å¸Œæœ›è§£æ±ºçš„å•é¡Œï¼Œé€™æ¨£çš„ å•é¡Œç”šè‡³æ¯”主線開發分支ä¸çš„回æ¸æ›´ä¸æ‡‰å‡ºç¾ï¼Œå› 爲它們會很快影響到很多人。開發人員 希望儘快了解æ¤é¡žå•é¡Œï¼Œå› æ¤æœ‰ä¸€å€‹ç°¡åŒ–æµç¨‹ä¾†å ±å‘Šé€™äº›å•é¡Œã€‚注æ„ï¼Œä½¿ç”¨æ›´æ–°å…§æ ¸ç‰ˆ 本線的回æ¸ï¼ˆæ¯”如從5.9.15切æ›åˆ°5.10.5時出ç¾æ•…障)ä¸ç¬¦åˆæ¢ä»¶ã€‚ ä½ éœ€è¦å°‡å•é¡Œå ±å‘Šåˆ°ä½•è™• ------------------------ *定ä½å¯èƒ½å¼•èµ·å•é¡Œçš„驅動程åºæˆ–å…§æ ¸åç³»çµ±ã€‚æ‰¾å‡ºå…¶é–‹ç™¼äººå“¡æœŸæœ›çš„å ±å‘Šçš„æ–¹å¼ å’Œä½ç½®ã€‚注æ„:大多數情æ³ä¸‹ä¸æœƒæ˜¯bugzilla.kernel.orgï¼Œå› çˆ²å•é¡Œé€šå¸¸éœ€è¦é€š éŽéƒµä»¶ç™¼é€çµ¦ç¶è·äººå“¡å’Œå…¬å…±éƒµä»¶åˆ—表。* å°‡å ±å‘Šç™¼é€çµ¦åˆé©çš„人是至關é‡è¦çš„ï¼Œå› çˆ²Linuxå…§æ ¸æ˜¯ä¸€å€‹å¤§é …ç›®ï¼Œå¤§å¤šæ•¸é–‹ç™¼äººå“¡ åªç†Ÿæ‚‰å…¶ä¸çš„一å°éƒ¨åˆ†ã€‚例如,相當多的程å¼è¨è¨ˆå¸«åªé—œå¿ƒä¸€å€‹é©…動程åºï¼Œæ¯”如一個WiFi 晶片驅動程åºï¼›å®ƒçš„開發人員å¯èƒ½å°ç–é 的或ä¸ç›¸é—œçš„「å系統ã€ï¼ˆå¦‚TCPå †æ£§ã€ PCIe/PCIå系統ã€å…§å˜ç®¡ç†æˆ–文件系統)的內部知è˜äº†è§£å¾ˆå°‘或完全ä¸äº†è§£ã€‚ å•é¡Œåœ¨æ–¼ï¼šLinuxå…§æ ¸ç¼ºå°‘ä¸€å€‹ï¼Œå¯ä»¥ç°¡å–®åœ°å°‡å•é¡Œæ¸æª”並讓需è¦äº†è§£å®ƒçš„開發人員了 解它的,ä¸å¿ƒåŒ–ç¼ºé™·è·Ÿè¹¤å™¨ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ å¿…é ˆæ‰¾åˆ°æ£ç¢ºçš„é€”å¾‘ä¾†è‡ªå·±å ±å‘Šå•é¡Œã€‚ 您å¯ä»¥åœ¨è…³æœ¬çš„幫助下åšåˆ°é€™ä¸€é»žï¼ˆè¦‹ä¸‹æ–‡ï¼‰ï¼Œä½†å®ƒä¸»è¦é‡å°çš„æ˜¯å…§æ ¸é–‹ç™¼äººå“¡å’Œå°ˆ 家。å°æ–¼å…¶ä»–人來說,MAINTAINERS(ç¶è·äººå“¡ï¼‰æ–‡ä»¶æ˜¯æ›´å¥½çš„é¸æ“‡ã€‚ 如何閱讀MAINTAINERSç¶è·è€…文件 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 爲了說明如何使用 :ref:`MAINTAINERS <maintainers>` 文件,讓我們å‡è¨æ‚¨çš„ç†è¨˜ 本電腦ä¸çš„WiFiåœ¨æ›´æ–°å…§æ ¸å¾Œçªç„¶å‡ºç¾äº†éŒ¯èª¤è¡Œçˆ²ã€‚這種情æ³ä¸‹å¯èƒ½æ˜¯WiFié©…å‹•çš„å• é¡Œã€‚é¡¯ç„¶ï¼Œå®ƒä¹Ÿå¯èƒ½ç”±æ–¼é©…動基於的æŸäº›ä»£ç¢¼ï¼Œä½†é™¤éžä½ 懷疑有這樣的æ±è¥¿æœƒé™„著在 驅動程åºä¸Šã€‚如果真的是其他的å•é¡Œï¼Œé©…動程åºçš„開發人員會讓åˆé©çš„人åƒèˆ‡é€²ä¾†ã€‚ éºæ†¾çš„是,沒有通用且簡單的辦法來檢查哪個代碼驅動了特定硬體組件。 在WiFi驅動出ç¾å•é¡Œçš„情æ³ä¸‹ï¼Œä½ å¯èƒ½æƒ³æŸ¥çœ‹ ``lspci -k`` çš„è¼¸å‡ºï¼Œå› çˆ²å®ƒåˆ—å‡ºäº† PCI/PCIe總線上的è¨å‚™å’Œé©…å‹•å®ƒçš„å…§æ ¸æ¨¡å¡Š:: [user@something ~]$ lspci -k [...] 3a:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32) Subsystem: Bigfoot Networks, Inc. Device 1535 Kernel driver in use: ath10k_pci Kernel modules: ath10k_pci [...] ä½†å¦‚æžœä½ çš„WiFi晶片通éŽUSB或其他內部總線連接,這種方法就行ä¸é€šäº†ã€‚åœ¨é€™ç¨®æƒ…æ³ ä¸‹ï¼Œæ‚¨å¯èƒ½éœ€è¦æª¢æŸ¥æ‚¨çš„WiFi管ç†å™¨æˆ– ``ip link`` 的輸出。尋找有å•é¡Œçš„ç¶²çµ¡æŽ¥å£ çš„å稱,它å¯èƒ½é¡žä¼¼æ–¼ã€Œwlp58s0ã€ã€‚æ¤å稱å¯ä»¥ç”¨ä¾†æ‰¾åˆ°é©…動它的模塊:: [user@something ~]$ realpath --relative-to=/sys/module//sys/class/net/wlp58s0/device/driver/module ath10k_pci 如果這些技巧ä¸èƒ½é€²ä¸€æ¥å¹«åŠ©æ‚¨ï¼Œè«‹å˜—試在網上æœç´¢å¦‚何縮å°ç›¸é—œé©…動程åºæˆ–å系統 的範åœã€‚å¦‚æžœä½ ä¸ç¢ºå®šæ˜¯å“ªä¸€å€‹ï¼šè©¦è‘—猜一下,å³ä½¿ä½ 猜得ä¸å¥½ï¼Œä¹Ÿæœƒæœ‰äººæœƒå¹«åŠ©ä½ 的。 一旦您知é“了相應的驅動程åºæˆ–å系統,您就希望在MAINTAINERS文件ä¸æœç´¢å®ƒã€‚如果 是「ath10k_pciã€ï¼Œæ‚¨ä¸æœƒæ‰¾åˆ°ä»»ä½•æ±è¥¿ï¼Œå› 爲åç¨±å¤ªå…·é«”äº†ã€‚æœ‰æ™‚ä½ éœ€è¦åœ¨ç¶²ä¸Šå°‹æ‰¾ 幫助;但在æ¤ä¹‹å‰ï¼Œè«‹å˜—試使用一個ç¨çŸæˆ–修改éŽçš„å稱來æœç´¢MAINTAINERSæ–‡ä»¶ï¼Œå› çˆ²é€™æ¨£ä½ å¯èƒ½æœƒç™¼ç¾é¡žä¼¼é€™æ¨£çš„æ±è¥¿:: QUALCOMM ATHEROS ATH10K WIRELESS DRIVER Mail: A. Some Human <shuman@example.com> Mailing list: ath10k@lists.infradead.org Status: Supported Web-page: https://wireless.wiki.kernel.org/en/users/Drivers/ath10k SCM: git git://git.kernel.org/pub/scm/linux/kernel/git/kvalo/ath.git Files: drivers/net/wireless/ath/ath10k/ 注æ„:如果您閱讀在LinuxåŽŸå§‹ç¢¼æ¨¹çš„æ ¹ç›®éŒ„ä¸æ‰¾åˆ°çš„原始ç¶è·è€…文件,則行æ述將是 縮寫。例如,「Mail:(郵件)ã€å°‡æ˜¯ã€ŒM:ã€ï¼Œã€ŒMailing list:(郵件列表)ã€å°‡æ˜¯ã€ŒLã€ï¼Œ 「Status:(狀態)ã€å°‡æ˜¯ã€ŒS:ã€ã€‚æ¤æ–‡ä»¶é ‚部有一段解釋了這些和其他縮寫。 首先查看「Statusã€ç‹€æ…‹è¡Œã€‚ç†æƒ³æƒ…æ³ä¸‹ï¼Œå®ƒæ‡‰è©²å¾—到「Supported(支æŒï¼‰ã€æˆ– 「Maintained(ç¶è·ï¼‰ã€ã€‚如果狀態爲「Obsolete(éŽæ™‚的)ã€ï¼Œé‚£éº¼ä½ 在使用一些éŽæ™‚çš„ 方法,需è¦è½‰æ›åˆ°æ–°çš„解決方案上。有時候,åªæœ‰åœ¨æ„Ÿåˆ°æœ‰å‹•åŠ›æ™‚,æ‰æœƒæœ‰äººçˆ²ä»£ç¢¼ æ供「Odd Fixesã€ã€‚如果碰見「Orphanã€ï¼Œä½ 就完全ä¸èµ°é‹äº†ï¼Œå› 爲å†ä¹Ÿæ²’有人關心代碼 了,åªå‰©ä¸‹é€™äº›é¸é …:準備好與å•é¡Œå…±å˜ï¼Œè‡ªå·±ä¿®å¾©å®ƒï¼Œæˆ–者找一個願æ„修復它的程å¼è¨è¨ˆå¸«ã€‚ 檢查狀態後,尋找以「bug:ã€é–‹é çš„ä¸€è¡Œï¼šå®ƒå°‡å‘Šè¨´ä½ åœ¨å“ªè£¡å¯ä»¥æ‰¾åˆ°å系統特定的缺 陷跟蹤器來æäº¤ä½ çš„å•é¡Œã€‚上é¢çš„例å沒有æ¤è¡Œã€‚å¤§å¤šæ•¸éƒ¨åˆ†éƒ½æ˜¯é€™æ¨£ï¼Œå› çˆ² Linux å…§æ ¸çš„é–‹ç™¼å®Œå…¨æ˜¯ç”±éƒµä»¶é©…å‹•çš„ã€‚å¾ˆå°‘æœ‰å系統使用缺陷跟蹤器,且其ä¸åªæœ‰ä¸€éƒ¨åˆ† ä¾è³´æ–¼ bugzilla.kernel.org。 在這種以åŠå…¶ä»–很多情æ³ä¸‹ï¼Œä½ å¿…é ˆå°‹æ‰¾ä»¥ã€ŒMail:ã€é–‹é 的行。這些行æ到了特定代碼 çš„ç¶è·è€…çš„åå—和電å郵件地å€ã€‚也å¯ä»¥æŸ¥æ‰¾ä»¥ã€ŒMailing list:ã€é–‹é çš„è¡Œï¼Œå®ƒå‘Šè¨´ä½ é–‹ç™¼ä»£ç¢¼çš„å…¬å…±éƒµä»¶åˆ—è¡¨ã€‚ä½ çš„å ±å‘Šä¹‹å¾Œéœ€è¦é€šéŽéƒµä»¶ç™¼åˆ°é€™äº›åœ°å€ã€‚å¦å¤–,å°æ–¼æ‰€æœ‰ 通éŽé›»å郵件發é€çš„å•é¡Œå ±å‘Šï¼Œä¸€å®šè¦æŠ„é€ Linux Kernel Mailing List(LKML) <linux-kernel@vger.kernel.org>。在以後通éŽéƒµä»¶ç™¼é€å•é¡Œå ±å‘Šæ™‚,ä¸è¦éºæ¼ä»»ä½• 一個郵件列表!ç¶è·è€…都是大忙人,å¯èƒ½æœƒæŠŠä¸€äº›å·¥ä½œç•™çµ¦å系統特定列表上的其他開 發者;而 LKML 很é‡è¦ï¼Œå› 爲需è¦ä¸€å€‹å¯ä»¥æ‰¾åˆ°æ‰€æœ‰å•é¡Œå ±å‘Šçš„地方。 藉助腳本找到ç¶è·è€… ~~~~~~~~~~~~~~~~~~~~ å°æ–¼æ‰‹é 有Linuxæºç¢¼çš„人來說,有第二個å¯ä»¥æ‰¾åˆ°åˆé©çš„å ±å‘Šåœ°é»žçš„é¸æ“‡ï¼šè…³æœ¬ 「scripts/get_maintainer.plã€ï¼Œå®ƒå˜—試找到所有è¦è¯ç¹«çš„人。它會查詢MAINTAINERS 文件,並需è¦ç”¨ç›¸é—œåŽŸå§‹ç¢¼çš„路徑來調用。å°æ–¼ç·¨è¯æˆæ¨¡å¡Šçš„驅動程åºï¼Œç¶“常å¯ä»¥ç”¨ 這樣的命令找到:: $ modinfo ath10k_pci | grep filename | sed 's!/lib/modules/.*/kernel/!!; s!filename:!!; s!\.ko\(\|\.xz\)!!' drivers/net/wireless/ath/ath10k/ath10k_pci.ko 將其ä¸çš„部分內容傳éžçµ¦è…³æœ¬:: $ ./scripts/get_maintainer.pl -f drivers/net/wireless/ath/ath10k* Some Human <shuman@example.com> (supporter:QUALCOMM ATHEROS ATH10K WIRELESS DRIVER) Another S. Human <asomehuman@example.com> (maintainer:NETWORKING DRIVERS) ath10k@lists.infradead.org (open list:QUALCOMM ATHEROS ATH10K WIRELESS DRIVER) linux-wireless@vger.kernel.org (open list:NETWORKING DRIVERS (WIRELESS)) netdev@vger.kernel.org (open list:NETWORKING DRIVERS) linux-kernel@vger.kernel.org (open list) ä¸è¦æŠŠä½ çš„å ±å‘Šç™¼çµ¦æ‰€æœ‰çš„äººã€‚ç™¼é€çµ¦ç¶è·è€…,腳本稱之爲「supporter:ã€ï¼›å¦å¤–æŠ„é€ ä»£ç¢¼æœ€ç›¸é—œçš„éƒµä»¶åˆ—è¡¨ï¼Œä»¥åŠ Linux å…§æ ¸éƒµä»¶åˆ—è¡¨ï¼ˆLKML)。在æ¤ä¾‹ä¸ï¼Œä½ 需è¦å°‡å ± 告發é€çµ¦ 「Some Human <shuman@example.com>ã€ ï¼Œä¸¦æŠ„é€ ã€Œath10k@lists.infradead.orgã€å’Œã€Œlinux-kernel@vger.kernel.orgã€ã€‚ 注æ„ï¼šå¦‚æžœä½ ç”¨ git 克隆了 Linux åŽŸå§‹ç¢¼ï¼Œä½ å¯èƒ½éœ€è¦ç”¨--git å†æ¬¡èª¿ç”¨ get_maintainer.pl。腳本會查看æ交æ·å²ï¼Œä»¥æ‰¾åˆ°æœ€è¿‘哪些人åƒèˆ‡äº†ç›¸é—œä»£ç¢¼çš„編寫, å› çˆ²ä»–å€‘å¯èƒ½æœƒæ供幫助。但è¦å°å¿ƒä½¿ç”¨é€™äº›çµæžœï¼Œå› çˆ²å®ƒå¾ˆå®¹æ˜“è®“ä½ èª¤å…¥æ§é€”。 例如,這種情æ³å¸¸å¸¸æœƒç™¼ç”Ÿåœ¨å¾ˆå°‘被修改的地方(比如è€èˆŠçš„或未ç¶è·çš„驅動程åºï¼‰ï¼š 有時這樣的代碼會在樹級清ç†æœŸé–“è¢«æ ¹æœ¬ä¸é—œå¿ƒæ¤é©…動程åºçš„開發者修改。 æœç´¢ç¾æœ‰å ±å‘Šï¼ˆç¬¬äºŒéƒ¨åˆ†ï¼‰ -------------------------- *在缺陷追蹤器或å•é¡Œç›¸é—œéƒµä»¶åˆ—表的å˜æª”ä¸å¾¹åº•æœç´¢å¯èƒ½èˆ‡æ‚¨çš„å•é¡ŒåŒ¹é…çš„å ±å‘Šã€‚ 如果找到匹é…çš„å ±å‘Šï¼Œè«‹åŠ å…¥è¨Žè«–è€Œä¸æ˜¯ç™¼é€æ–°å ±å‘Šã€‚* 如å‰æ‰€è¿°ï¼šå ±å‘Šä¸€å€‹åˆ¥äººå·²ç¶“æ出的å•é¡Œï¼Œå°æ¯å€‹äººä¾†èªªéƒ½æ˜¯æµªè²»æ™‚é–“ï¼Œå°¤å…¶æ˜¯ä½œçˆ²å ±å‘Š äººçš„ä½ ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ æ‡‰è©²å†æ¬¡æœç´¢ç¾æœ‰çš„å ±å‘Šã€‚ç¾åœ¨ä½ 已經知é“å•é¡Œéœ€è¦å ±å‘Šåˆ°å“ªè£¡ã€‚ 如果是郵件列表,那麼一般在 `lore.kernel.org <https://lore.kernel.org/>`_ å¯ä»¥ 找到相應å˜æª”。 但有些列表é‹è¡Œåœ¨å…¶ä»–地方。例如å‰é¢æ¥é©Ÿä¸ç•¶ä¾‹åçš„ath10k WiFi驅動程åºå°±æ˜¯é€™ç¨® 情æ³ã€‚ä½†æ˜¯ä½ é€šå¸¸å¯ä»¥åœ¨ç¶²ä¸Šå¾ˆå®¹æ˜“地找到這些列表的檔案。例如æœç´¢ã€Œarchive ath10k@lists.infradead.orgã€ï¼Œå°‡å¼•å°Žæ‚¨åˆ°ath10k郵件列表的信æ¯é ,該é é¢é ‚éƒ¨é€£çµ åˆ°å…¶ `列表å˜æª” <https://lists.infradead.org/pipermail/ath10k/>`_ 。éºæ†¾çš„是, 這個列表和其他一些列表缺ä¹æœç´¢å…¶å˜æª”的功能。在這種情æ³ä¸‹å¯ä»¥ä½¿ç”¨å¸¸è¦çš„網際網路 æœå°‹å¼•æ“Žï¼Œä¸¦æ·»åŠ 類似「site:lists.infadead.org/pipermail/ath10k/ã€é€™ 樣的æœç´¢æ¢ä»¶ï¼Œé€™æœƒæŠŠçµæžœé™åˆ¶åœ¨è©²é€£çµä¸çš„檔案。 也請進一æ¥æœç´¢ç¶²çµ¡ã€LKMLå’Œbugzilla.kernel.org網站。 有關如何æœç´¢ä»¥åŠåœ¨æ‰¾åˆ°åŒ¹é…å ±å‘Šæ™‚å¦‚ä½•æ“作的詳細信æ¯ï¼Œè«‹åƒé–±ä¸Šé¢çš„「æœç´¢ç¾æœ‰å ±å‘Š (第一部分)ã€ã€‚ ä¸è¦æ€¥è‘—完æˆå ±å‘ŠéŽç¨‹çš„這一æ¥ï¼šèŠ±30到60分é˜ç”šè‡³æ›´å¤šçš„時間å¯ä»¥çˆ²ä½ å’Œå…¶ä»–äººç¯€çœ / 減少相當多的時間和麻煩。 安è£ä¸€å€‹æ–°çš„å…§æ ¸é€²è¡Œæ¸¬è©¦ -------------------------- *除éžæ‚¨å·²ç¶“在é‹è¡Œæœ€æ–°çš„「主線ã€Linuxå…§æ ¸ï¼Œå¦å‰‡æœ€å¥½åœ¨å ±å‘Šæµç¨‹å‰å®‰è£å®ƒã€‚在 æŸäº›æƒ…æ³ä¸‹ï¼Œä½¿ç”¨æœ€æ–°çš„「穩定版ã€Linuxé€²è¡Œæ¸¬è©¦å’Œå ±å‘Šä¹Ÿæ˜¯å¯ä»¥æŽ¥å—的替代方案; 在åˆä½µçª—å£æœŸé–“,這實際上å¯èƒ½æ˜¯æœ€å¥½çš„方法,但在開發階段最好還是暫åœå¹¾å¤©ã€‚ ç„¡è«–ä½ é¸æ“‡ä»€éº¼ç‰ˆæœ¬ï¼Œæœ€å¥½ä½¿ç”¨ã€Œæ™®é€šã€æ§‹å»ºã€‚忽略這些建è°æœƒå¤§å¤§å¢žåŠ æ‚¨çš„å ±å‘Š 被拒絕或忽略的風險。* æ£å¦‚第一æ¥çš„詳細解釋ä¸æ‰€æ到的:與大多數程å¼è¨è¨ˆå¸«ä¸€æ¨£ï¼Œèˆ‡å¤§å¤šæ•¸ç¨‹å¼è¨è¨ˆå¸«ä¸€æ¨£ï¼ŒLinux å…§æ ¸é–‹ç™¼äººå“¡ä¸å–œæ¡èŠ±æ™‚間處ç†ä»–們ç¶è·çš„原始碼ä¸æ ¹æœ¬ä¸æœƒç™¼ç”Ÿçš„å•é¡Œçš„å ±å‘Šã€‚é€™éš» 會浪費æ¯å€‹äººçš„æ™‚é–“ï¼Œå°¤å…¶æ˜¯ä½ çš„æ™‚é–“ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼åœ¨å ±å‘Šå•é¡Œä¹‹å‰ï¼Œæ‚¨å¿…é ˆå…ˆç¢ºèª å•é¡Œä»ç„¶å˜åœ¨æ–¼æœ€æ–°çš„上游代碼ä¸ï¼Œé€™ç¬¦åˆæ¯å€‹äººçš„利益。您å¯ä»¥å¿½ç•¥æ¤å»ºè°ï¼Œä½†å¦‚å‰ æ‰€è¿°ï¼šé€™æ¨£åšæœƒæ¥µå¤§åœ°å¢žåŠ å•é¡Œå ±å‘Šè¢«æ‹’絕或被忽略的風險。 å…§æ ¸ã€Œæœ€æ–°ä¸Šæ¸¸ã€çš„範åœé€šå¸¸æŒ‡ï¼š * 安è£ä¸€å€‹ä¸»ç·šå…§æ ¸ï¼›æœ€æ–°çš„ç©©å®šç‰ˆå…§æ ¸ä¹Ÿå¯ä»¥æ˜¯ä¸€å€‹é¸æ“‡ï¼Œä½†å¤§å¤šæ•¸æ™‚候都最好é¿å…。 長期支æŒå…§æ ¸ï¼ˆæœ‰æ™‚稱爲「LTSå…§æ ¸ã€ï¼‰ä¸é©åˆæ¤æµç¨‹ã€‚下一å°ç¯€å°‡æ›´è©³ç´°åœ°è§£é‡‹æ‰€æœ‰ 這些。 * 下一å°ç¯€æè¿°ç²å–和安è£é€™æ¨£ä¸€å€‹å…§æ ¸çš„方法。它還指出了使用é ç·¨è¯å…§æ ¸æ˜¯å¯ä»¥çš„, ä½†æ™®é€šçš„å…§æ ¸æ›´å¥½ï¼Œé€™æ„味著:它是直接使用從 `kernel.org <https://kernel.org/>`_ ç²å¾—çš„Linux原始碼構建並且沒有任何方å¼ä¿®æ”¹æˆ–增強。 é¸æ“‡é©åˆæ¸¬è©¦çš„版本 ~~~~~~~~~~~~~~~~~~~~ å‰å¾€ `kernel.org <https://kernel.org/>`_ 來決定使用哪個版本。忽略那個寫著 「Latest release最新版本ã€çš„å·¨å¤§é»ƒè‰²æŒ‰éˆ•ï¼Œå¾€ä¸‹çœ‹æœ‰ä¸€å€‹è¡¨æ ¼ã€‚åœ¨è¡¨æ ¼çš„é ‚éƒ¨ï¼Œä½ æœƒ 看到一行以「mainlineã€é–‹é çš„å—樣,大多數情æ³ä¸‹å®ƒæœƒæŒ‡å‘一個版本號類似「5.8-rc2〠的é ç™¼å¸ƒç‰ˆæœ¬ã€‚å¦‚æžœæ˜¯é€™æ¨£çš„è©±ï¼Œä½ å°‡éœ€è¦ä½¿ç”¨é€™å€‹ä¸»ç·šå…§æ ¸é€²è¡Œæ¸¬è©¦ã€‚ä¸è¦è®“「rcã€ åš‡åˆ°ä½ ï¼Œé€™äº›ã€Œé–‹ç™¼ç‰ˆå…§æ ¸ã€å¯¦éš›ä¸Šéžå¸¸å¯é â€”â€”è€Œä¸”ä½ å·²ç¶“æŒ‰ç…§ä¸Šé¢çš„指示åšäº†å‚™ä»½ï¼Œ ä¸æ˜¯å—Žï¼Ÿ 大概æ¯ä¹åˆ°å周,「mainlineã€å¯èƒ½æœƒçµ¦ä½ 指出一個版本號類似「5.7ã€çš„æ£å¼ç‰ˆæœ¬ã€‚如果 碰見這種情æ³ï¼Œè«‹è€ƒæ…®æš«åœå ±å‘ŠéŽç¨‹ï¼Œç›´åˆ°ä¸‹ä¸€å€‹ç‰ˆæœ¬çš„第一個é 發布(5.8-rc1)出 ç¾åœ¨ `kernel.org <https://kernel.org/>`_ ä¸Šã€‚é€™æ˜¯å› çˆ² Linux 的開發周期æ£åœ¨ 兩周的「åˆä½µçª—å£ã€å…§ã€‚大部分的改動和所有干擾性的改動都會在這段時間內被åˆä½µåˆ° 下一個版本ä¸ã€‚在æ¤æœŸé–“使用主線是比較å±éšªçš„ã€‚å…§æ ¸é–‹ç™¼è€…é€šå¸¸ä¹Ÿå¾ˆå¿™ï¼Œå¯èƒ½æ²’有 多餘的時間來處ç†å•é¡Œå ±å‘Šã€‚這也是很有å¯èƒ½åœ¨åˆä½µçª—å£ä¸æ‡‰ç”¨äº†è¨±å¤šä¿®æ”¹ä¾†ä¿®å¾©ä½ 所é¢è‡¨çš„å•é¡Œï¼›é€™å°±æ˜¯çˆ²ä»€éº¼ä½ å¾ˆå¿«å°±å¾—ç”¨ä¸€å€‹æ–°çš„å…§æ ¸ç‰ˆæœ¬é‡æ–°æ¸¬è©¦ï¼Œå°±åƒä¸‹é¢ã€Œç™¼ å¸ƒå ±å‘Šå¾Œçš„è²¬ä»»ã€ä¸€ç¯€ä¸æ‰€è¿°çš„那樣。 這就是爲什麼è¦ç‰åˆ°åˆä½µçª—å£çµæŸå¾Œæ‰åŽ»åšã€‚ä½†æ˜¯å¦‚æžœä½ è™•ç†çš„是一些ä¸æ‡‰è©²ç‰å¾…çš„ æ±è¥¿ï¼Œå‰‡ç„¡éœ€é€™æ¨£åšã€‚在這種情æ³ä¸‹ï¼Œå¯ä»¥è€ƒæ…®é€šéŽ git ç²å–æœ€æ–°çš„ä¸»ç·šå…§æ ¸ï¼ˆè¦‹ä¸‹ 文),或者使用 kernel.org 上æ供的最新穩定版本。如果 mainline å› çˆ²æŸäº›åŽŸå› ä¸ç„¡æ³•æ£å¸¸å·¥ä½œï¼Œé‚£éº¼ä½¿ç”¨å®ƒä¹Ÿæ˜¯å¯ä»¥æŽ¥å—的。總的來說:用它來é‡ç¾å•é¡Œä¹Ÿæ¯”完全 ä¸å ±å‘Šå•é¡Œè¦å¥½ã€‚ 最好é¿å…在åˆä½µçª—å£å¤–ä½¿ç”¨æœ€æ–°çš„ç©©å®šç‰ˆå…§æ ¸ï¼Œå› çˆ²æ‰€æœ‰ä¿®å¾©éƒ½å¿…é ˆé¦–å…ˆæ‡‰ç”¨æ–¼ä¸»ç·šã€‚ é€™å°±æ˜¯çˆ²ä»€éº¼æª¢æŸ¥æœ€æ–°çš„ä¸»ç·šå…§æ ¸æ˜¯å¦‚æ¤é‡è¦ï¼šä½ 希望看到在舊版本線修復的任何å•é¡Œ 需è¦å…ˆåœ¨ä¸»ç·šä¿®å¾©ï¼Œç„¶å¾Œæ‰èƒ½å¾—到回傳,這å¯èƒ½éœ€è¦å¹¾å¤©æˆ–幾周。å¦ä¸€å€‹åŽŸå› 是:您 希望的修復å°æ–¼å›žå‚³ä¾†èªªå¯èƒ½å¤ªé›£æˆ–å¤ªå†’éšªï¼›å› æ¤å†æ¬¡å ±å‘Šå•é¡Œä¸å¤ªå¯èƒ½æ”¹è®Šä»»ä½•äº‹æƒ…。 這些方é¢ä¹Ÿéƒ¨åˆ†è¡¨æ˜Žäº†çˆ²ä»€éº¼é•·æœŸæ”¯æŒå…§æ ¸ï¼ˆæœ‰æ™‚稱爲「LTSå…§æ ¸ã€ï¼‰ä¸é©åˆå ±å‘Šæµç¨‹ï¼š 它們與當å‰ä»£ç¢¼çš„è·é›¢å¤ªé ã€‚å› æ¤ï¼Œå…ˆåŽ»æ¸¬è©¦ä¸»ç·šï¼Œç„¶å¾Œå†æŒ‰æµç¨‹èµ°ï¼šå¦‚果主線沒有 出ç¾å•é¡Œï¼Œæµç¨‹å°‡æŒ‡å°Žæ‚¨å¦‚何在舊版本線ä¸ä¿®å¾©å®ƒã€‚ 如何ç²å¾—æ–°çš„ Linux å…§æ ¸ ~~~~~~~~~~~~~~~~~~~~~~~~~ ä½ å¯ä»¥ä½¿ç”¨é ç·¨è¯æˆ–自編è¯çš„å…§æ ¸é€²è¡Œæ¸¬è©¦ï¼›å¦‚æžœä½ é¸æ“‡å¾Œè€…,å¯ä»¥ä½¿ç”¨ git ç²å–æº ä»£ç¢¼ï¼Œæˆ–è€…ä¸‹è¼‰å…¶ tar å˜æª”包。 **使用é ç·¨è¯çš„å…§æ ¸** :這往往是最快速ã€æœ€ç°¡å–®ã€æœ€å®‰å…¨çš„æ–¹æ³•â€”â€”å°¤å…¶æ˜¯åœ¨ä½ ä¸ç†Ÿ 悉 Linux å…§æ ¸çš„æƒ…æ³ä¸‹ã€‚å•é¡Œæ˜¯ï¼šç™¼è¡Œå•†æˆ–é™„åŠ å˜å„²åº«æ供的大多數版本都是從修改 éŽçš„LinuxåŽŸå§‹ç¢¼æ§‹å»ºçš„ã€‚å› æ¤å®ƒå€‘ä¸æ˜¯æ™®é€šçš„,通常ä¸é©åˆæ–¼æ¸¬è©¦å’Œå•é¡Œå ±å‘Šï¼šé€™äº› 更改å¯èƒ½æœƒå°Žè‡´æ‚¨é¢è‡¨çš„å•é¡Œæˆ–以æŸç¨®æ–¹å¼å½±éŸ¿å•é¡Œã€‚ 但是如果您使用的是æµè¡Œçš„Linux發行版,那麼您就很幸é‹äº†ï¼šå°æ–¼å¤§éƒ¨åˆ†çš„發行版, 您å¯ä»¥åœ¨ç¶²ä¸Šæ‰¾åˆ°åŒ…å«æœ€æ–°ä¸»ç·šæˆ–穩定版本Linuxå…§æ ¸åŒ…çš„å˜å„²åº«ã€‚ä½¿ç”¨é€™äº›æ˜¯å®Œå…¨å¯ ä»¥çš„ï¼Œåªè¦å¾žå˜å„²åº«çš„æè¿°ä¸ç¢ºèªå®ƒå€‘是普通的或者至少接近普通。æ¤å¤–,請確ä¿è»Ÿé«” 包包å«kernel.org上æä¾›çš„æœ€æ–°ç‰ˆæœ¬å…§æ ¸ã€‚å¦‚æžœé€™äº›è»Ÿé«”åŒ…çš„æ™‚é–“è¶…éŽä¸€å‘¨ï¼Œé‚£éº¼å®ƒå€‘ å¯èƒ½å°±ä¸åˆé©äº†ï¼Œå› çˆ²æ–°çš„ä¸»ç·šå’Œç©©å®šç‰ˆå…§æ ¸é€šå¸¸è‡³å°‘æ¯å‘¨ç™¼å¸ƒä¸€æ¬¡ã€‚ 請注æ„,您以後å¯èƒ½éœ€è¦æ‰‹å‹•æ§‹å»ºè‡ªå·±çš„å…§æ ¸ï¼šæœ‰æ™‚é€™æ˜¯èª¿è©¦æˆ–æ¸¬è©¦ä¿®å¾©ç¨‹åºæ‰€å¿…需的, 如後文所述。還è¦æ³¨æ„,é ç·¨è¯çš„å…§æ ¸å¯èƒ½ç¼ºå°‘在出ç¾panicã€Oopsã€warning或BUG時 è§£ç¢¼å…§æ ¸åˆ—å°çš„消æ¯æ‰€éœ€çš„調試符號;如果您計劃解碼這些消æ¯ï¼Œæœ€å¥½è‡ªå·±ç·¨è¯å…§æ ¸ (有關詳細信æ¯ï¼Œè«‹åƒé–±æœ¬å°ç¯€çµå°¾å’Œã€Œè§£ç¢¼å¤±æ•—ä¿¡æ¯ã€å°ç¯€ï¼‰ã€‚ **使用git** :熟悉 git 的開發者和有經驗的 Linux 用戶通常最好直接從 `kernel.org 上的官方開發倉庫 <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/>`_ ä¸ç²å–最新的 Linux å…§æ ¸åŽŸå§‹ç¢¼ã€‚é€™äº›å¾ˆå¯èƒ½æ¯”最新的主線é ç™¼å¸ƒç‰ˆæœ¬æ›´æ–°ä¸€äº›ã€‚ä¸ ç”¨æ“”å¿ƒï¼šå®ƒå€‘å’Œæ£å¼çš„é 發布版本一樣å¯é ,除éžå…§æ ¸çš„開發周期目å‰æ£è™•æ–¼åˆä½µçª— å£ä¸ã€‚ä¸éŽå³ä¾¿å¦‚æ¤ï¼Œå®ƒå€‘也是相當å¯é 的。 **常è¦æ–¹æ³•** :ä¸ç†Ÿæ‚‰ git 的人通常最好從 `kernel.org <https://kernel.org/>`_ 下載æºç¢¼çš„tar å˜æª”包。 å¦‚ä½•å¯¦éš›æ§‹å»ºä¸€å€‹å…§æ ¸ä¸¦ä¸åœ¨é€™è£¡æè¿°ï¼Œå› çˆ²è¨±å¤šç¶²ç«™å·²ç¶“è§£é‡‹äº†å¿…è¦çš„æ¥é©Ÿã€‚如果 ä½ æ˜¯æ–°æ‰‹ï¼Œå¯ä»¥è€ƒæ…®æŒ‰ç…§é‚£äº›å»ºè°ä½¿ç”¨ ``make localmodconfig`` 來åšï¼Œå®ƒå°‡å˜—è©¦ç² å–ä½ ç•¶å‰å…§æ ¸çš„é…ç½®ï¼Œç„¶å¾Œæ ¹æ“šä½ çš„ç³»çµ±é€²è¡Œä¸€äº›èª¿æ•´ã€‚é€™æ¨£åšä¸¦ä¸èƒ½ä½¿ç·¨è¯å‡ºä¾†çš„ å…§æ ¸æ›´å¥½ï¼Œä½†å¯ä»¥æ›´å¿«åœ°ç·¨è¯ã€‚ 注æ„:如果您æ£åœ¨è™•ç†ä¾†è‡ªå…§æ ¸çš„panncã€Oopsã€warning或BUG,請在é…ç½®å…§æ ¸æ™‚å˜—è©¦ 啓用 CONFIG_KALLSYMS é¸é …。æ¤å¤–,還å¯ä»¥å•“用 CONFIG_DEBUG_KERNEL å’Œ CONFIG_DEBUG_INFO;後者是相關é¸é …,但åªæœ‰å•“用å‰è€…æ‰èƒ½é–‹å•“。請注æ„, CONFIG_DEBUG_INFO 會需è¦æ›´å¤šå„²å˜ç©ºé–“ä¾†æ§‹å»ºå…§æ ¸ã€‚ä½†é€™æ˜¯å€¼å¾—çš„ï¼Œå› çˆ²é€™äº›é¸é …å°‡ å…許您ç¨å¾Œç²¾ç¢ºå®šä½è§¸ç™¼å•é¡Œçš„確切代碼行。下é¢çš„「解碼失敗信æ¯ã€ä¸€ç¯€å°æ¤é€²è¡Œäº†æ›´ 詳細的解釋。 但請記ä½ï¼šå§‹çµ‚記錄é‡åˆ°çš„å•é¡Œï¼Œä»¥é˜²é›£ä»¥é‡ç¾ã€‚發é€æœªè§£ç¢¼çš„å ±å‘Šç¸½æ¯”ä¸å ±å‘Šè¦å¥½ã€‚ 檢查「汙染ã€æ¨™èªŒ ---------------- *確ä¿æ‚¨å‰›å‰›å®‰è£çš„å…§æ ¸åœ¨é‹è¡Œæ™‚ä¸æœƒã€Œæ±™æŸ“ã€è‡ªå·±ã€‚* æ£å¦‚上é¢å·²ç¶“詳細介紹éŽçš„:當發生一些å¯èƒ½æœƒå°Žè‡´ä¸€äº›çœ‹èµ·ä¾†å®Œå…¨ä¸ç›¸é—œçš„後續錯 èª¤çš„äº‹æƒ…æ™‚ï¼Œå…§æ ¸æœƒè¨ç½®ä¸€å€‹ã€Œæ±™æŸ“ã€æ¨™èªŒã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ éœ€è¦æª¢æŸ¥ä½ 剛剛安è£çš„å…§ æ ¸æ˜¯å¦æœ‰è¨ç½®æ¤æ¨™èªŒã€‚如果有的話,幾乎在任何情æ³ä¸‹ä½ 都需è¦åœ¨å ±å‘Šå•é¡Œä¹‹å‰å…ˆæ¶ˆ 除它。詳細的æ“作方法請看上é¢çš„ç« ç¯€ã€‚ ç”¨æ–°å…§æ ¸é‡ç¾å•é¡Œ ------------------ *在您剛剛安è£çš„å…§æ ¸ä¸å¾©ç¾é€™å€‹å•é¡Œã€‚如果它沒有出ç¾ï¼Œè«‹æŸ¥çœ‹ä¸‹æ–¹åªç™¼ç”Ÿåœ¨ 穩定版和長期支æŒå…§æ ¸çš„å•é¡Œçš„說明。* 檢查這個å•é¡Œæ˜¯å¦ç™¼ç”Ÿåœ¨ä½ 剛剛安è£çš„æ–° Linux å…§æ ¸ç‰ˆæœ¬ä¸Šã€‚å¦‚æžœæ–°å…§æ ¸å·²ç¶“ä¿®å¾©äº†ï¼Œ å¯ä»¥è€ƒæ…®ä½¿ç”¨æ¤ç‰ˆæœ¬ç·šï¼Œæ”¾æ£„å ±å‘Šå•é¡Œã€‚但是請記ä½ï¼Œåªè¦å®ƒæ²’有在 `kernel.org <https://kernel.org/>`_ 的穩定版和長期版(以åŠç”±é€™äº›ç‰ˆæœ¬è¡ç”Ÿå‡ºä¾†çš„å» å•†å…§æ ¸ï¼‰ ä¸å¾—到修復,其他用戶å¯èƒ½ä»ç„¶æœƒå—åˆ°å®ƒçš„å›°æ“¾ã€‚å¦‚æžœä½ å–œæ¡ä½¿ç”¨å…¶ä¸çš„一個,或 者åªæ˜¯æƒ³å¹«åŠ©å®ƒå€‘的用戶,請å‰å¾€ä¸‹é¢çš„ã€Œå ±å‘Šåªç™¼ç”Ÿåœ¨è¼ƒèˆŠå…§æ ¸ç‰ˆæœ¬ç·šçš„å•é¡Œã€ä¸€ç¯€ã€‚ 優化復ç¾å•é¡Œçš„æè¿° -------------------- *å„ªåŒ–ä½ çš„ç†è¨˜ï¼šè©¦è‘—找到並寫出最直接的復ç¾å•é¡Œçš„方法。確ä¿æœ€çµ‚çµæžœåŒ…å«æ‰€ 有é‡è¦çš„細節,åŒæ™‚讓第一次è½èªªçš„人容易閱讀和ç†è§£ã€‚如果您在æ¤éŽç¨‹ä¸å¸åˆ° 了一些æ±è¥¿ï¼Œè«‹è€ƒæ…®å†æ¬¡æœç´¢é—œæ–¼è©²å•é¡Œçš„ç¾æœ‰å ±å‘Šã€‚* éŽæ–¼è¤‡é›œçš„å ±å‘Šæœƒè®“åˆ¥äººå¾ˆé›£ç†è§£ã€‚å› æ¤è«‹å„˜é‡æ‰¾åˆ°ä¸€å€‹å¯ä»¥ç›´æŽ¥æè¿°ã€æ˜“æ–¼ä»¥æ›¸é¢ å½¢å¼ç†è§£çš„å†ç¾æ–¹æ³•ã€‚包å«æ‰€æœ‰é‡è¦çš„細節,但åŒæ™‚也è¦å„˜é‡ä¿æŒç°¡çŸã€‚ 在這在å‰é¢çš„æ¥é©Ÿä¸ï¼Œä½ 很å¯èƒ½å·²ç¶“äº†è§£äº†ä¸€äº›é—œæ–¼ä½ æ‰€é¢è‡¨çš„å•é¡Œçš„點。利用這些 知è˜ï¼Œå†æ¬¡æœç´¢å¯ä»¥è½‰è€ŒåŠ 入的ç¾æœ‰å ±å‘Šã€‚ è§£ç¢¼å¤±æ•—ä¿¡æ¯ ------------- *如果失敗涉åŠã€Œpanicã€ã€ã€ŒOopsã€ã€ã€Œwarningã€æˆ–「BUGã€ï¼Œè«‹è€ƒæ…®è§£ç¢¼å…§æ ¸æ—¥èªŒä»¥æŸ¥æ‰¾ 觸發錯誤的代碼行。* ç•¶å…§æ ¸æª¢æ¸¬åˆ°å…§éƒ¨å•é¡Œæ™‚,它會記錄一些有關已執行代碼的信æ¯ã€‚這使得在原始碼ä¸ç²¾ 確定ä½è§¸ç™¼å•é¡Œçš„行並顯示如何調用它æˆçˆ²å¯èƒ½ã€‚但åªæœ‰åœ¨é…ç½®å…§æ ¸æ™‚å•“ç”¨äº† CONFIG_DEBUG_INFO å’Œ CONFIG_KALLSYMSé¸é …時,這種方法æ‰èµ·æ•ˆã€‚如果已啓用æ¤é¸é …, è«‹è€ƒæ…®è§£ç¢¼å…§æ ¸æ—¥èªŒä¸çš„ä¿¡æ¯ã€‚這將使我們更容易ç†è§£æ˜¯ä»€éº¼å°Žè‡´äº†ã€Œpanicã€ã€ã€ŒOopsã€ã€ 「warningã€æˆ–「BUGã€ï¼Œå¾žè€Œå¢žåŠ 了有人æ供修復的機率。 解碼å¯ä»¥é€šéŽLinux原始碼樹ä¸çš„腳本來完æˆã€‚如果您é‹è¡Œçš„å…§æ ¸æ˜¯ä¹‹å‰è‡ªå·±ç·¨è¯çš„, 這樣這樣調用它:: [user@something ~]$ sudo dmesg | ./linux-5.10.5/scripts/decode_stacktrace.sh ./linux-5.10.5/vmlinux /usr/lib/debug/lib/modules/5.10.10-4.1.x86_64/vmlinux /usr/src/kernels/5.10.10-4.1.x86_64/ 如果您é‹è¡Œçš„æ˜¯æ‰“åŒ…å¥½çš„æ™®é€šå…§æ ¸ï¼Œå‰‡å¯èƒ½éœ€è¦å®‰è£å¸¶æœ‰èª¿è©¦ç¬¦è™Ÿçš„相應包。然後按以下 æ–¹å¼èª¿ç”¨è…³æœ¬ï¼ˆå¦‚果發行版未打包,則å¯èƒ½éœ€è¦å¾žLinux原始碼ç²å–):: [user@something ~]$ sudo dmesg | ./linux-5.10.5/scripts/decode_stacktrace.sh \ /usr/lib/debug/lib/modules/5.10.10-4.1.x86_64/vmlinux /usr/src/kernels/5.10.10-4.1.x86_64/ è…³æœ¬å°‡è§£ç¢¼å¦‚ä¸‹çš„æ—¥èªŒè¡Œï¼Œé€™äº›æ—¥èªŒè¡Œé¡¯ç¤ºå…§æ ¸åœ¨ç™¼ç”ŸéŒ¯èª¤æ™‚æ£åœ¨åŸ·è¡Œçš„代碼的地å€:: [ 68.387301] RIP: 0010:test_module_init+0x5/0xffa [test_module] 解碼之後,這些行將變æˆé€™æ¨£:: [ 68.387301] RIP: 0010:test_module_init (/home/username/linux-5.10.5/test-module/test-module.c:16) test_module 在本例ä¸ï¼ŒåŸ·è¡Œçš„代碼是從文件「~/linux-5.10.5/test-module/test-module.cã€æ§‹å»ºçš„, 錯誤出ç¾åœ¨ç¬¬16行的指令ä¸ã€‚ 該腳本也會如æ¤è§£ç¢¼ä»¥ã€ŒCall traceã€é–‹é 的部分ä¸æ到的地å€ï¼Œè©²éƒ¨åˆ†é¡¯ç¤ºå‡ºç¾å•é¡Œçš„ 函數的路徑。æ¤å¤–ï¼Œè…³æœ¬é‚„æœƒé¡¯ç¤ºå…§æ ¸æ£åœ¨åŸ·è¡Œçš„代碼部分的彙編輸出。 注æ„ï¼Œå¦‚æžœä½ æ²’æ³•åšåˆ°é€™ä¸€é»žï¼Œåªéœ€è·³éŽé€™ä¸€æ¥ï¼Œä¸¦åœ¨å ±å‘Šä¸èªªæ˜ŽåŽŸå› ã€‚å¦‚æžœä½ å¹¸é‹çš„ 話,å¯èƒ½ç„¡éœ€è§£ç¢¼ã€‚如果需è¦çš„è©±ï¼Œä¹Ÿè¨±æœ‰äººæœƒå¹«ä½ åšé€™ä»¶äº‹æƒ…。還è¦æ³¨æ„,這åªæ˜¯è§£ ç¢¼å…§æ ¸å †æ£§è·Ÿè¹¤çš„å¹¾ç¨®æ–¹æ³•ä¹‹ä¸€ã€‚æœ‰æ™‚éœ€è¦æŽ¡å–ä¸åŒçš„æ¥é©Ÿä¾†æª¢ç´¢ç›¸é—œçš„詳細信æ¯ã€‚ 別擔心,如果您碰到的情æ³éœ€è¦é€™æ¨£åšï¼Œé–‹ç™¼äººå“¡æœƒå‘Šè¨´æ‚¨è©²æ€Žéº¼åšã€‚ å°å›žæ¸çš„特別關照 ----------------- *如果您的å•é¡Œæ˜¯å›žæ¸å•é¡Œï¼Œè«‹å„˜å¯èƒ½ç¸®å°å¼•å…¥å•é¡Œæ™‚的範åœã€‚* Linux 首å¸é–‹ç™¼è€… Linus Torvalds èªçˆ² Linux å…§æ ¸æ°¸é ä¸æ‡‰æƒ¡åŒ–,這就是爲什麼他 èªçˆ²å›žæ¸æ˜¯ä¸å¯æŽ¥å—的,並希望看到它們被迅速修復。這就是爲什麼引入了回æ¸çš„改 動導致的å•é¡Œè‹¥ç„¡æ³•é€šéŽå…¶ä»–æ–¹å¼å¿«é€Ÿè§£æ±ºï¼Œé€šå¸¸æœƒè¢«è¿…é€Ÿæ’¤éŠ·ã€‚å› æ¤ï¼Œå ±å‘Šå›žæ¸æœ‰ 點åƒã€ŒçŽ‹ç‚¸ã€ï¼Œæœƒè¿…速得到修復。但è¦åšåˆ°é€™ä¸€é»žï¼Œéœ€è¦çŸ¥é“導致回æ¸çš„變化。通常情 æ³ä¸‹ï¼Œè¦ç”±å ±å‘Šè€…來追查罪éç¦é¦–ï¼Œå› çˆ²ç¶è·è€…往往沒有時間或手é è¨ç½®ä¸ä¾¿ä¾†è‡ªè¡Œ é‡ç¾å®ƒã€‚ 有一個å«åšã€ŒäºŒåˆ†ã€çš„éŽç¨‹å¯ä»¥ä¾†å°‹æ‰¾è®ŠåŒ–,這在 「Documentation/translations/zh_TW/admin-guide/bug-bisect.rstã€æ–‡æª”ä¸é€²è¡Œäº†è©³ç´° çš„æ述,這個éŽç¨‹é€šå¸¸éœ€è¦ä½ 構建å到二åå€‹å…§æ ¸é¡åƒï¼Œæ¯æ¬¡éƒ½å˜—試在構建下一個é¡åƒ 之å‰é‡ç¾å•é¡Œã€‚是的,這需è¦èŠ±è²»ä¸€äº›æ™‚間,但ä¸ç”¨æ“”心,它比大多數人想åƒçš„è¦å¿«å¾—多。 多虧了「binary search二進ä½æœç´¢ã€ï¼Œé€™å°‡å¼•å°Žä½ 在原始碼管ç†ç³»çµ±ä¸æ‰¾åˆ°å°Žè‡´å›žæ¸çš„æ交。 ä¸€æ—¦ä½ æ‰¾åˆ°å®ƒï¼Œå°±åœ¨ç¶²ä¸Šæœç´¢å…¶ä¸»é¡Œã€æ交ID和縮çŸçš„æ交ID(æ交IDçš„å‰12個å—符)。 如果有的話,這將引導您找到關於它的ç¾æœ‰å ±å‘Šã€‚ 需è¦æ³¨æ„的是,二分法需è¦ä¸€é»žç«…門,ä¸æ˜¯æ¯å€‹äººéƒ½æ‡‚得訣竅,也需è¦ç›¸ç•¶å¤šçš„努力, ä¸æ˜¯æ¯å€‹äººéƒ½é¡˜æ„投入。儘管如æ¤ï¼Œé‚„是強烈建è°è‡ªå·±é€²è¡Œä¸€æ¬¡äºŒåˆ†ã€‚å¦‚æžœä½ çœŸçš„ ä¸èƒ½æˆ–者ä¸æƒ³èµ°é€™æ¢è·¯ï¼Œè‡³å°‘è¦æ‰¾å‡ºæ˜¯å“ªå€‹ä¸»ç·šå…§æ ¸å¼•å…¥çš„回æ¸ã€‚比如說從 5.5.15 切æ›åˆ° 5.8.4 的時候出ç¾äº†ä¸€äº›å•é¡Œï¼Œé‚£éº¼è‡³å°‘å¯ä»¥å˜—試一下相近的所有的主線版本 (5.6ã€5.7 å’Œ 5.8)來檢查它是什麼時候出ç¾çš„。除éžä½ æƒ³åœ¨ä¸€å€‹ç©©å®šç‰ˆæˆ–é•·æœŸæ”¯æŒ å…§æ ¸ä¸æ‰¾åˆ°ä¸€å€‹å›žæ¸ï¼Œå¦å‰‡è¦é¿å…測試那些編號有三段的版本(5.6.12ã€5.7.8ï¼‰ï¼Œå› çˆ²é‚£æœƒä½¿çµæžœé›£ä»¥è§£é‡‹ï¼Œå¯èƒ½æœƒè®“ä½ çš„æ¸¬è©¦è®Šå¾—ç„¡ç”¨ã€‚ä¸€æ—¦ä½ æ‰¾åˆ°äº†å¼•å…¥å›žæ¸çš„ä¸»è¦ ç‰ˆæœ¬ï¼Œå°±å¯ä»¥æ”¾å¿ƒåœ°ç¹¼çºŒå ±å‘Šäº†ã€‚但請記ä½ï¼šåœ¨ä¸çŸ¥é“罪éç¦é¦–的情æ³ä¸‹ï¼Œé–‹ç™¼äººå“¡ 是å¦èƒ½å¤ æ供幫助å–決於手é çš„å•é¡Œã€‚有時他們å¯èƒ½æœƒå¾žå ±å‘Šä¸ç¢ºèªæ˜¯ä»€éº¼å‡ºç¾äº†å• 題,並能修復它;有時他們å¯èƒ½ç„¡æ³•æ供幫助,除éžä½ 進行二分。 當處ç†å›žæ¸å•é¡Œæ™‚,請確ä¿ä½ 所é¢è‡¨çš„å•é¡ŒçœŸçš„æ˜¯ç”±å…§æ ¸å¼•èµ·çš„ï¼Œè€Œä¸æ˜¯ç”±å…¶ä»–æ±è¥¿ 引起的,如上文所述。 在整個éŽç¨‹ä¸ï¼Œè«‹è¨˜ä½ï¼šåªæœ‰ç•¶èˆŠå…§æ ¸å’Œæ–°å…§æ ¸çš„é…置相似時,å•é¡Œæ‰ç®—回æ¸ã€‚最好 的方法是:把é…置文件(``.config``ï¼‰å¾žèˆŠçš„å·¥ä½œå…§æ ¸ç›´æŽ¥è¤‡è£½åˆ°ä½ å˜—è©¦çš„æ¯å€‹æ–°å…§ æ ¸ç‰ˆæœ¬ã€‚ä¹‹å¾Œé‹è¡Œ ``make oldnoconfig`` 來調整它以é©æ‡‰æ–°ç‰ˆæœ¬çš„需è¦ï¼Œè€Œä¸å•“用 ä»»ä½•æ–°çš„åŠŸèƒ½ï¼Œå› çˆ²é‚£äº›åŠŸèƒ½ä¹Ÿå¯èƒ½å°Žè‡´å›žæ¸ã€‚ 撰寫並發é€å ±å‘Š --------------- *通éŽè©³ç´°æè¿°å•é¡Œä¾†é–‹å§‹ç·¨å¯«å ±å‘Šã€‚記得包括以下æ¢ç›®ï¼šæ‚¨çˆ²å¾©ç¾è€Œå®‰è£çš„最新 å…§æ ¸ç‰ˆæœ¬ã€ä½¿ç”¨çš„Linux發行版以åŠé—œæ–¼å¦‚何復ç¾è©²å•é¡Œçš„說明。如果å¯èƒ½ï¼Œå°‡å…§ æ ¸æ§‹å»ºé…置(.config)和 ``dmesg`` 的輸出放在網上的æŸå€‹åœ°æ–¹ï¼Œä¸¦é€£çµåˆ°å®ƒã€‚ 包å«æˆ–上傳所有其他å¯èƒ½ç›¸é—œçš„ä¿¡æ¯ï¼Œå¦‚Oops的輸出/截圖或來自 ``lspci`` çš„è¼¸å‡ºã€‚ä¸€æ—¦ä½ å¯«å®Œäº†é€™å€‹ä¸»è¦éƒ¨åˆ†ï¼Œè«‹åœ¨ä¸Šæ–¹æ’入一個æ£å¸¸é•·åº¦çš„段è½å¿«é€Ÿæ¦‚ è¿°å•é¡Œå’Œå½±éŸ¿ã€‚å†åœ¨æ¤ä¹‹ä¸Šæ·»åŠ 一個簡單æè¿°å•é¡Œçš„å¥å,以得到人們的閱讀。 ç¾åœ¨çµ¦å‡ºä¸€å€‹æ›´çŸçš„æ述性標題或主題。然後就å¯ä»¥åƒMAINTAINERSæ–‡ä»¶å‘Šè¨´ä½ çš„ 那樣發é€æˆ–æäº¤å ±å‘Šäº†ï¼Œé™¤éžä½ 在處ç†ä¸€å€‹ã€Œé«˜å„ªå…ˆç´šå•é¡Œã€ï¼šå®ƒå€‘需è¦æŒ‰ç…§ä¸‹é¢ 「高優先級å•é¡Œçš„特殊處ç†ã€æ‰€è¿°ç‰¹åˆ¥é—œç…§ã€‚* ç¾åœ¨ä½ å·²ç¶“æº–å‚™å¥½äº†ä¸€åˆ‡ï¼Œæ˜¯æ™‚å€™å¯«ä½ çš„å ±å‘Šäº†ã€‚ä¸Šæ–‡å‰è¨€ä¸é€£çµçš„三篇文檔å°å¦‚何 å¯«å ±å‘Šåšäº†éƒ¨åˆ†è§£é‡‹ã€‚這就是爲什麼本文將åªæåˆ°ä¸€äº›åŸºæœ¬çš„å…§å®¹ä»¥åŠ Linux å…§æ ¸ç‰¹ 有的æ±è¥¿ã€‚ 有一點是符åˆé€™å…©é¡žçš„ï¼šä½ çš„å ±å‘Šä¸æœ€é—œéµçš„部分是標題/主題ã€ç¬¬ä¸€å¥è©±å’Œç¬¬ä¸€æ®µã€‚ é–‹ç™¼è€…ç¶“å¸¸æœƒæ”¶åˆ°è¨±å¤šéƒµä»¶ã€‚å› æ¤ï¼Œä»–們往往åªæ˜¯èŠ±å¹¾ç§’é˜çš„時間ç€è¦½ä¸€ä¸‹éƒµä»¶ï¼Œç„¶ 後å†æ±ºå®šç¹¼çºŒä¸‹ä¸€å°æˆ–ä»”ç´°æŸ¥çœ‹ã€‚å› æ¤ï¼Œä½ å ±å‘Šçš„é–‹é è¶Šå¥½ï¼Œæœ‰äººç ”ç©¶ä¸¦å¹«åŠ©ä½ çš„æ©Ÿ æœƒå°±è¶Šå¤§ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ æ‡‰è©²æš«æ™‚å¿½ç•¥ä»–å€‘ï¼Œå…ˆå¯«å‡ºè©³ç´°çš„å ±å‘Šã€‚;-) æ¯ä»½å ±å‘Šéƒ½æ‡‰æåŠçš„äº‹é … ~~~~~~~~~~~~~~~~~~~~~~~~ 詳細æè¿°ä½ çš„å•é¡Œæ˜¯å¦‚ä½•ç™¼ç”Ÿåœ¨ä½ å®‰è£çš„æ–°ç´”æ·¨å…§æ ¸ä¸Šçš„ã€‚è©¦è‘—åŒ…å«ä½ 之å‰å¯«çš„和優 化éŽçš„分æ¥èªªæ˜Žï¼Œæ¦‚è¿°ä½ å’Œå…¶ä»–äººå¦‚ä½•é‡ç¾é€™å€‹å•é¡Œï¼›åœ¨æ¥µå°‘數無法é‡ç¾çš„情æ³ä¸‹ï¼Œ 儘é‡æè¿°ä½ åšäº†ä»€éº¼ä¾†è§¸ç™¼å®ƒã€‚ 還應包括其他人爲了解該å•é¡ŒåŠå…¶ç’°å¢ƒè€Œå¯èƒ½éœ€è¦çš„所有相關信æ¯ã€‚實際需è¦çš„æ±è¥¿ 在很大程度上å–決於具體å•é¡Œï¼Œä½†æœ‰äº›äº‹é …ä½ ç¸½æ˜¯æ‡‰è©²åŒ…æ‹¬åœ¨å…§ï¼š * ``cat /proc/version`` 的輸出,其ä¸åŒ…å« Linux å…§æ ¸ç‰ˆæœ¬è™Ÿå’Œæ§‹å»ºæ™‚çš„ç·¨è¯å™¨ã€‚ * 機器æ£åœ¨é‹è¡Œçš„ Linux 發行版( ``hostnamectl | grep 「Operating System「`` ) * CPU 和作æ¥ç³»çµ±çš„架構( ``uname -mi`` ) * 如果您æ£åœ¨è™•ç†å›žæ¸ï¼Œä¸¦é€²è¡Œäº†äºŒåˆ†ï¼Œè«‹æåŠå°Žè‡´å›žæ¸çš„變更的主題和æ交ID。 許多情æ³ä¸‹ï¼Œè®“è®€ä½ å ±å‘Šçš„äººå¤šäº†è§£å…©ä»¶äº‹ä¹Ÿæ˜¯æ˜Žæ™ºä¹‹èˆ‰ï¼š * 用於構建 Linux å…§æ ¸çš„é…置(「.configã€æ–‡ä»¶ï¼‰ * å…§æ ¸çš„ä¿¡æ¯ï¼Œä½ 從 ``dmesg`` 得到的信æ¯å¯«åˆ°ä¸€å€‹æ–‡ä»¶é‡Œã€‚確ä¿å®ƒä»¥åƒã€ŒLinux version 5.8-1 (foobar@example.com) (gcc (GCC) 10.2.1, GNU ld version 2.34) #1 SMP Mon Aug 3 14:54:37 UTC 2020ã€é€™æ¨£çš„行開始,如果沒有,那麼第 一次啓動階段的é‡è¦ä¿¡æ¯å·²ç¶“被丟棄了。在這種情æ³ä¸‹ï¼Œå¯ä»¥è€ƒæ…®ä½¿ç”¨ ``journalctl -b 0 -k`` ï¼›æˆ–è€…ä½ ä¹Ÿå¯ä»¥é‡å•“,é‡ç¾é€™å€‹å•é¡Œï¼Œç„¶å¾Œèª¿ç”¨ ``dmesg`` 。 é€™å…©å€‹æ–‡ä»¶å¾ˆå¤§ï¼Œæ‰€ä»¥ç›´æŽ¥æŠŠå®ƒå€‘æ”¾åˆ°ä½ çš„å ±å‘Šä¸æ˜¯å€‹å£žä¸»æ„ã€‚å¦‚æžœä½ æ˜¯åœ¨ç¼ºé™·è·Ÿè¹¤ 器ä¸æ交å•é¡Œï¼Œé‚£éº¼å°‡å®ƒå€‘é™„åŠ åˆ°å·¥å–®ä¸ã€‚å¦‚æžœä½ é€šéŽéƒµä»¶å ±å‘Šå•é¡Œï¼Œä¸è¦ç”¨é™„件附 ä¸Šå®ƒå€‘ï¼Œå› çˆ²é‚£æœƒä½¿éƒµä»¶è®Šå¾—å¤ªå¤§ï¼Œå¯ä»¥æŒ‰ä¸‹åˆ—之一åšï¼š * 將文件上傳到æŸå€‹å…¬é–‹çš„åœ°æ–¹ï¼ˆä½ çš„ç¶²ç«™ï¼Œå…¬å…±æ–‡ä»¶ç²˜è²¼æœå‹™ï¼Œåœ¨ `bugzilla.kernel.org <https://bugzilla.kernel.org/>`_ 上創建的工單……), ä¸¦åœ¨ä½ çš„å ±å‘Šä¸æ”¾ä¸Šé€£çµã€‚ç†æƒ³æƒ…æ³ä¸‹è«‹ä½¿ç”¨å…許這些文件ä¿å˜å¾ˆå¤šå¹´çš„åœ°æ–¹ï¼Œå› çˆ²å®ƒå€‘å¯èƒ½åœ¨å¾ˆå¤šå¹´å¾Œå°åˆ¥äººæœ‰ç”¨ï¼›ä¾‹å¦‚ 5 年或 10 年後,一個開發者æ£åœ¨ä¿®æ”¹ 一些代碼,而這些代碼æ£æ˜¯çˆ²äº†ä¿®å¾©ä½ çš„å•é¡Œã€‚ * æŠŠæ–‡ä»¶æ”¾åœ¨ä¸€é‚Šï¼Œç„¶å¾Œèªªæ˜Žä½ æœƒåœ¨ä»–äººå›žå¾©æ™‚å†å–®ç¨ç™¼é€ã€‚åªè¦è¨˜å¾—å ±å‘Šç™¼å‡ºåŽ»å¾Œï¼Œ 真æ£åšåˆ°é€™ä¸€é»žå°±å¯ä»¥äº†ã€‚;-) æ供這些æ±è¥¿å¯èƒ½æ˜¯æ˜Žæ™ºçš„ ~~~~~~~~~~~~~~~~~~~~~~~~~~ æ ¹æ“šå•é¡Œçš„ä¸åŒï¼Œä½ å¯èƒ½éœ€è¦æ供更多的背景數據。這裡有一些關於æ供什麼比較好 的建è°ï¼š * å¦‚æžœä½ è™•ç†çš„æ˜¯å…§æ ¸çš„ã€Œwarningã€ã€ã€ŒOOPSã€æˆ–「panicã€ï¼Œè«‹åŒ…å«å®ƒã€‚å¦‚æžœä½ ä¸èƒ½è¤‡è£½ 粘貼它,試著用netconsole網絡終端é 程跟蹤或者至少æ‹ä¸€å¼µå±å¹•çš„照片。 * 如果å•é¡Œå¯èƒ½èˆ‡ä½ çš„é›»è…¦ç¡¬é«”æœ‰é—œï¼Œè«‹èªªæ˜Žä½ ä½¿ç”¨çš„æ˜¯ä»€éº¼ç³»çµ±ã€‚ä¾‹å¦‚ï¼Œå¦‚æžœä½ çš„ 顯å¡æœ‰å•é¡Œï¼Œè«‹æåŠå®ƒçš„è£½é€ å•†ï¼Œé¡¯å¡çš„型號,以åŠä½¿ç”¨çš„晶片。如果是ç†è¨˜æœ¬é›» 腦,請æåŠå®ƒçš„型號å稱,但儘é‡ç¢ºä¿æ„義明確。例如「戴爾 XPS 13ã€å°±ä¸å¾ˆæ˜Žç¢ºï¼Œ å› çˆ²å®ƒå¯èƒ½æ˜¯ 2012 年的那款,那款除了看起來和ç¾åœ¨éŠ·å”®çš„沒有什麼ä¸åŒä¹‹å¤–, 兩者沒有任何共åŒä¹‹è™•ã€‚å› æ¤ï¼Œåœ¨é€™ç¨®æƒ…æ³ä¸‹ï¼Œè¦åŠ 上準確的型號,例如 2019 年內推出的 XPS 13 型號爲「9380ã€æˆ–「7390ã€ã€‚åƒã€Œè¯æƒ³ Thinkpad T590ã€é€™æ¨£çš„åå— ä¹Ÿæœ‰äº›å«ç³Šä¸æ¸…:這款ç†è¨˜æœ¬æœ‰å¸¶ç¨ç«‹é¡¯å¡å’Œä¸å¸¶çš„å型號,所以è¦å„˜é‡æ‰¾åˆ°æº–確 的型號å稱或註明主è¦éƒ¨ä»¶ã€‚ * 說明æ£åœ¨ä½¿ç”¨çš„ç›¸é—œè»Ÿé«”ã€‚å¦‚æžœä½ åœ¨åŠ è¼‰æ¨¡å¡Šæ™‚é‡åˆ°äº†å•é¡Œï¼Œä½ è¦èªªæ˜Žæ£åœ¨ä½¿ç”¨çš„ kmodã€systemd å’Œ udev 的版本。如果其ä¸ä¸€å€‹ DRM 驅動出ç¾å•é¡Œï¼Œä½ è¦èªªæ˜Ž libdrm å’Œ Mesa 的版本;還è¦èªªæ˜Žä½ çš„ Wayland åˆæˆå™¨æˆ– X-Server åŠå…¶é©…動。 å¦‚æžœä½ æœ‰æ–‡ä»¶ç³»çµ±å•é¡Œï¼Œè«‹è¨»æ˜Žç›¸æ‡‰çš„文件系統實用程åºçš„版本(e2fsprogs, btrfs-progs, xfsprogs……)。 * å¾žå…§æ ¸ä¸æ”¶é›†å¯èƒ½æœ‰ç”¨çš„é¡å¤–ä¿¡æ¯ã€‚例如, ``lspci -nn`` 的輸出å¯ä»¥å¹«åŠ©åˆ¥äºº è˜åˆ¥ä½ ä½¿ç”¨çš„ç¡¬é«”ã€‚å¦‚æžœä½ çš„ç¡¬é«”æœ‰å•é¡Œï¼Œä½ 甚至å¯ä»¥çµ¦å‡º ``sudo lspci -vvv`` çš„çµæžœï¼Œå› 爲它æ供了組件是如何é…置的信æ¯ã€‚å°æ–¼ä¸€äº›å•é¡Œï¼Œå¯èƒ½æœ€å¥½åŒ…å« ``/proc/cpuinfo`` , ``/proc/ioports`` , ``/proc/iomem`` , ``/proc/modules`` 或 ``/proc/scsi/scsi`` ç‰æ–‡ä»¶çš„內容。一些å系統還æ 供了收集相關信æ¯çš„工具。 ``alsa-info.sh`` `å°±æ˜¯é€™æ¨£ä¸€å€‹å·¥å…·ï¼Œå®ƒæ˜¯éŸ³é »/è² éŸ³å系統開發者æ供的 <https://www.alsa-project.org/wiki/AlsaInfo>`_ 。 這些例åæ‡‰è©²æœƒçµ¦ä½ ä¸€äº›çŸ¥è˜é»žï¼Œè®“ä½ çŸ¥é“附上什麼數據å¯èƒ½æ˜¯æ˜Žæ™ºçš„ï¼Œä½†ä½ è‡ªå·±ä¹Ÿ è¦æƒ³ä¸€æƒ³ï¼Œå“ªäº›æ•¸æ“šå°åˆ¥äººæœƒæœ‰å¹«åŠ©ã€‚ä¸è¦å¤ªæ“”心忘記一些æ±è¥¿ï¼Œå› çˆ²é–‹ç™¼äººå“¡æœƒè¦ æ±‚æ供他們需è¦çš„é¡å¤–細節。但從一開始就把所有é‡è¦çš„æ±è¥¿éƒ½æä¾›å‡ºä¾†ï¼Œæœƒå¢žåŠ åˆ¥ 人仔細查看的機會。 é‡è¦éƒ¨åˆ†ï¼šå ±å‘Šçš„é–‹é ~~~~~~~~~~~~~~~~~~~~~~ ç¾åœ¨ä½ å·²ç¶“æº–å‚™å¥½äº†å ±å‘Šçš„è©³ç´°éƒ¨åˆ†ï¼Œè®“æˆ‘å€‘é€²å…¥æœ€é‡è¦çš„部分:開é å¹¾å¥ã€‚ç¾åœ¨åˆ° å ±å‘Šçš„æœ€å‰é¢ï¼Œåœ¨ä½ 剛æ‰å¯«çš„部分之å‰åŠ 上類似「The detailed description:ã€ï¼ˆè©³ç´° æ述)這樣的內容,並在最å‰é¢æ’入兩個新行。ç¾åœ¨å¯«ä¸€å€‹æ£å¸¸é•·åº¦çš„段è½ï¼Œå¤§è‡´æ¦‚ 述這個å•é¡Œã€‚去掉所有枯燥的細節,把é‡é»žæ”¾åœ¨è®€è€…需è¦çŸ¥é“çš„é—œéµéƒ¨åˆ†ï¼Œä»¥è®“人了 è§£é€™æ˜¯æ€Žéº¼å›žäº‹ï¼›å¦‚æžœä½ èªçˆ²é€™å€‹ç¼ºé™·å½±éŸ¿äº†å¾ˆå¤šç”¨æˆ¶ï¼Œå°±æ一下這點來å¸å¼•å¤§å®¶é—œ 注。 åšå¥½é€™ä¸€é»žå¾Œï¼Œåœ¨é ‚部å†æ’入兩行,寫一å¥è©±çš„摘è¦ï¼Œå¿«é€Ÿè§£é‡‹å ±å‘Šçš„å…§å®¹ã€‚ä¹‹å¾Œä½ è¦æ›´åŠ æŠ½è±¡ï¼Œçˆ²å ±å‘Šå¯«ä¸€å€‹æ›´çŸçš„主題/標題。 ç¾åœ¨ä½ å·²ç¶“å¯«å¥½äº†é€™éƒ¨åˆ†ï¼Œè«‹èŠ±é»žæ™‚é–“ä¾†å„ªåŒ–å®ƒï¼Œå› çˆ²å®ƒæ˜¯ä½ çš„å ±å‘Šä¸æœ€é‡è¦çš„部分: 很多人會先讀這部分,然後æ‰æœƒæ±ºå®šæ˜¯å¦å€¼å¾—花時間閱讀其他部分。 ç¾åœ¨å°±åƒ :ref:`MAINTAINERS <maintainers>` ç¶è·è€…æ–‡ä»¶å‘Šè¨´ä½ çš„é‚£æ¨£ç™¼é€æˆ–æ交 å ±å‘Šï¼Œé™¤éžå®ƒæ˜¯å‰é¢æ¦‚述的那些「高優先級å•é¡Œã€ä¹‹ä¸€ï¼šåœ¨é€™ç¨®æƒ…æ³ä¸‹ï¼Œè«‹å…ˆé–±è®€ä¸‹ä¸€ å°ç¯€ï¼Œç„¶å¾Œå†ç™¼é€å ±å‘Šã€‚ 高優先級å•é¡Œçš„ç‰¹æ®Šè™•ç† ~~~~~~~~~~~~~~~~~~~~~~~~ 高優先級å•é¡Œçš„å ±å‘Šéœ€è¦ç‰¹æ®Šè™•ç†ã€‚ **éžå¸¸åš´é‡çš„缺陷** :確ä¿åœ¨ä¸»é¡Œæˆ–工單標題以åŠç¬¬ä¸€æ®µä¸æ˜Žé¡¯æ¨™å‡º severeness (éžå¸¸åš´é‡çš„)。 **回æ¸** :如果å•é¡Œæ˜¯ä¸€å€‹å›žæ¸ï¼Œè«‹åœ¨éƒµä»¶çš„主題或缺陷跟蹤器的標題ä¸æ·»åŠ [REGRESSION]。如果您沒有進行二分,請至少註明您測試的最新主線版本(比如 5.7) 和出ç¾å•é¡Œçš„最新版本(比如 5.8)。如果您æˆåŠŸåœ°é€²è¡Œäº†äºŒåˆ†ï¼Œè«‹è¨»æ˜Žå°Žè‡´å›žæ¸ çš„æ交IDå’Œä¸»é¡Œã€‚ä¹Ÿè«‹æ·»åŠ è©²è®Šæ›´çš„ä½œè€…åˆ°ä½ çš„å ±å‘Šä¸ï¼›å¦‚果您需è¦å°‡æ‚¨çš„缺陷æ交 到缺陷跟蹤器ä¸ï¼Œè«‹å°‡å ±å‘Šä»¥ç§äººéƒµä»¶çš„å½¢å¼è½‰ç™¼çµ¦ä»–ï¼Œä¸¦è¨»æ˜Žå ±å‘Šæ交地點。 **安全å•é¡Œ** :å°æ–¼é€™ç¨®å•é¡Œï¼Œä½ å°‡å¿…é ˆè©•ä¼°ï¼šå¦‚æžœç´°ç¯€è¢«å…¬é–‹æŠ«éœ²ï¼Œæ˜¯å¦æœƒå°å…¶ä»– 用戶產生çŸæœŸé¢¨éšªã€‚如果ä¸æœƒï¼Œåªéœ€æŒ‰ç…§æ‰€è¿°ç¹¼çºŒå ±å‘Šå•é¡Œã€‚如果有æ¤é¢¨éšªï¼Œä½ éœ€è¦ ç¨å¾®èª¿æ•´ä¸€ä¸‹å ±å‘Šæµç¨‹ã€‚ * 如果 MAINTAINERS 文件指示您通éŽéƒµä»¶å ±å‘Šå•é¡Œï¼Œè«‹ä¸è¦æŠ„é€ä»»ä½•å…¬å…±éƒµä»¶åˆ—表。 * å¦‚æžœä½ æ‡‰è©²åœ¨ç¼ºé™·è·Ÿè¹¤å™¨ä¸æ交å•é¡Œï¼Œè«‹ç¢ºä¿å°‡å·¥å–®æ¨™è¨˜çˆ²ã€Œç§æœ‰ã€æˆ–「安全å•é¡Œã€ã€‚ 如果缺陷跟蹤器沒有æä¾›ä¿æŒå ±å‘Šç§å¯†æ€§çš„æ–¹æ³•ï¼Œé‚£å°±åˆ¥æƒ³äº†ï¼ŒæŠŠä½ çš„å ±å‘Šä»¥ç§äºº 郵件的形å¼ç™¼é€çµ¦ç¶è·è€…å§ã€‚ 在這兩種情æ³ä¸‹ï¼Œéƒ½ä¸€å®šè¦å°‡å ±å‘Šç™¼åˆ° MAINTAINERS 文件ä¸ã€Œå®‰å…¨è¯çµ¡ã€éƒ¨åˆ†åˆ—出的 地å€ã€‚ç†æƒ³çš„情æ³æ˜¯åœ¨ç™¼é€å ±å‘Šçš„時候直接抄é€ä»–們。如果您在缺陷跟蹤器ä¸æ交了 å ±å‘Šï¼Œè«‹å°‡å ±å‘Šçš„æ–‡æœ¬è½‰ç™¼åˆ°é€™äº›åœ°å€ï¼›ä½†è«‹åœ¨å ±å‘Šçš„é ‚éƒ¨åŠ ä¸Šæ³¨é‡‹ï¼Œè¡¨æ˜Žæ‚¨æ交了 å ±å‘Šï¼Œä¸¦é™„ä¸Šå·¥å–®é€£çµã€‚ 更多信æ¯è«‹åƒè¦‹ã€ŒDocumentation/translations/zh_TW/admin-guide/security-bugs.rstã€ã€‚ ç™¼å¸ƒå ±å‘Šå¾Œçš„è²¬ä»» ------------------ *ç‰å¾…別人的åæ‡‰ï¼Œç¹¼çºŒæŽ¨é€²äº‹æƒ…ï¼Œç›´åˆ°ä½ èƒ½å¤ æŽ¥å—這樣或那樣的çµæžœã€‚å› æ¤ï¼Œè«‹ 公開和åŠæ™‚地回應任何詢å•ã€‚測試æ出的修復。ç©æ¥µåœ°æ¸¬è©¦ï¼šè‡³å°‘é‡æ–°æ¸¬è©¦æ¯å€‹ 新主線版本的首個候é¸ç‰ˆæœ¬ï¼ˆRCï¼‰ï¼Œä¸¦å ±å‘Šä½ çš„çµæžœã€‚如果出ç¾æ‹–延,就å‹å¥½åœ° æé†’ä¸€ä¸‹ã€‚å¦‚æžœä½ æ²’æœ‰å¾—åˆ°ä»»ä½•å¹«åŠ©æˆ–è€…æœªèƒ½æ»¿æ„,請試著自己幫助自己。* å¦‚æžœä½ çš„å ±å‘Šéžå¸¸å„ªç§€ï¼Œè€Œä¸”ä½ çœŸçš„å¾ˆå¹¸é‹ï¼Œé‚£éº¼æŸå€‹é–‹ç™¼è€…å¯èƒ½æœƒç«‹å³ç™¼ç¾å°Žè‡´å• é¡Œçš„åŽŸå› ï¼›ç„¶å¾Œä»–å€‘å¯èƒ½æœƒå¯«ä¸€å€‹è£œä¸ä¾†ä¿®å¾©ã€æ¸¬è©¦å®ƒï¼Œä¸¦ç›´æŽ¥ç™¼é€çµ¦ä¸»ç·šé›†æˆï¼ŒåŒ 時標記它以便以後回溯到需è¦å®ƒçš„穩定版和長期支æŒå…§æ ¸ã€‚é‚£éº¼ä½ éœ€è¦åšçš„就是回復 一å¥ã€ŒThank you very muchã€ï¼ˆéžå¸¸æ„Ÿè¬ï¼‰ï¼Œç„¶å¾Œåœ¨ç™¼å¸ƒå¾Œæ›ä¸Šä¿®å¾©å¥½çš„版本。 但這種ç†æƒ³ç‹€æ³å¾ˆå°‘ç™¼ç”Ÿã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ æŠŠå ±å‘Šæ‹¿å‡ºä¾†ä¹‹å¾Œå·¥ä½œæ‰é–‹å§‹ã€‚ä½ è¦åšçš„ 事情è¦è¦–情æ³è€Œå®šï¼Œä½†é€šå¸¸æœƒæ˜¯ä¸‹é¢åˆ—å‡ºçš„äº‹æƒ…ã€‚ä½†åœ¨æ·±å…¥ç ”ç©¶ç´°ç¯€ä¹‹å‰ï¼Œé€™è£¡æœ‰å¹¾ 件é‡è¦çš„äº‹æƒ…ï¼Œä½ éœ€è¦è¨˜ä½é€™éƒ¨åˆ†çš„éŽç¨‹ã€‚ 關於進一æ¥äº’å‹•çš„ä¸€èˆ¬å»ºè° ~~~~~~~~~~~~~~~~~~~~~~~~~~ **總是公開回復** ï¼šç•¶ä½ åœ¨ç¼ºé™·è·Ÿè¹¤å™¨ä¸æ交å•é¡Œæ™‚,一定è¦åœ¨é‚£è£¡å›žå¾©ï¼Œä¸è¦ç§ä¸‹ è¯ç¹«ä»»ä½•é–‹ç™¼è€…。å°æ–¼éƒµä»¶å ±å‘Šï¼Œåœ¨å›žå¾©æ‚¨æ”¶åˆ°çš„ä»»ä½•éƒµä»¶æ™‚ï¼Œç¸½æ˜¯ä½¿ç”¨ã€Œå…¨éƒ¨å›žå¾©ã€ åŠŸèƒ½ã€‚é€™åŒ…æ‹¬å¸¶æœ‰ä»»ä½•ä½ å¯èƒ½æƒ³è¦æ·»åŠ åˆ°ä½ çš„å ±å‘Šä¸çš„é¡å¤–數據的郵件:進入郵件應 用程åºã€Œå·²ç™¼é€ã€æ–‡ä»¶å¤¾ï¼Œä¸¦åœ¨éƒµä»¶ä¸Šä½¿ç”¨ã€Œå…¨éƒ¨å›žå¾©ã€ä¾†å›žå¾©å ±å‘Šã€‚這種方法å¯ä»¥ç¢ºä¿ 公共郵件列表和其他所有åƒèˆ‡è€…都能åŠæ™‚了解情æ³ï¼›å®ƒé‚„能ä¿æŒéƒµä»¶ç·šç¨‹çš„完整性, 這å°æ–¼éƒµä»¶åˆ—表將所有相關郵件æ¸çˆ²ä¸€é¡žæ˜¯éžå¸¸é‡è¦çš„。 åªæœ‰å…©ç¨®æƒ…æ³ä¸é©åˆåœ¨ç¼ºé™·è·Ÿè¹¤å™¨æˆ–「全部回復ã€ä¸ç™¼è¡¨è©•è«–: * æœ‰äººè®“ä½ ç§ä¸‹ç™¼æ±è¥¿ã€‚ * ä½ è¢«å‘ŠçŸ¥è¦ç™¼é€ä¸€äº›æ±è¥¿ï¼Œä½†æ³¨æ„到其ä¸åŒ…å«éœ€è¦ä¿å¯†çš„æ•æ„Ÿä¿¡æ¯ã€‚在這種情æ³ä¸‹ï¼Œ å¯ä»¥ç§ä¸‹ç™¼é€çµ¦è¦æ±‚發é€çš„開發者。但è¦åœ¨å·¥å–®æˆ–郵件ä¸è¨»æ˜Žä½ 是這麼åšçš„,這 樣其他人就知é“ä½ å°Šé‡äº†é€™å€‹è¦æ±‚。 **在請求解釋或幫助之å‰å…ˆç ”究一下** :在這部分éŽç¨‹ä¸ï¼Œæœ‰äººå¯èƒ½æœƒå‘Šè¨´ä½ 用尚未 掌æ¡çš„技能åšä¸€äº›äº‹æƒ…ã€‚ä¾‹å¦‚ä½ å¯èƒ½æœƒè¢«è¦æ±‚ä½¿ç”¨ä¸€äº›ä½ å¾žæœªè½èªªéŽçš„測試工具;或 è€…ä½ å¯èƒ½æœƒè¢«è¦æ±‚在 Linux å…§æ ¸åŽŸå§‹ç¢¼ä¸Šæ‡‰ç”¨ä¸€å€‹è£œä¸ä¾†æ¸¬è©¦å®ƒæ˜¯å¦æœ‰å¹«åŠ©ã€‚在æŸäº› 情æ³ä¸‹ï¼Œç™¼å€‹å›žå¾©è©¢å•å¦‚何åšå°±å¯ä»¥äº†ã€‚但在走這æ¢è·¯ä¹‹å‰ï¼Œå„˜é‡é€šéŽåœ¨ç¶²éš›ç¶²è·¯ä¸Šæœ 索自行找到ç”案;或者考慮在其他地方詢å•å»ºè°ã€‚比如詢å•æœ‹å‹ï¼Œæˆ–è€…åˆ°ä½ å¹³æ™‚å¸¸åŽ» çš„èŠå¤©å®¤æˆ–論壇發帖諮詢。 **è¦æœ‰è€å¿ƒ** ï¼šå¦‚æžœä½ çœŸçš„å¾ˆå¹¸é‹ï¼Œä½ å¯èƒ½æœƒåœ¨å¹¾å€‹å°æ™‚內收到å°ä½ çš„å ±å‘Šçš„ç”覆。 但大多數情æ³ä¸‹æœƒèŠ±è²»æ›´å¤šçš„æ™‚é–“ï¼Œå› çˆ²ç¶è·è€…分散在全çƒå„åœ°ï¼Œå› æ¤å¯èƒ½åœ¨ä¸åŒçš„ 時å€â€”—在那裡他們已經享å—è‘—é 離éµç›¤çš„夜晚。 ä¸€èˆ¬ä¾†èªªï¼Œå…§æ ¸é–‹ç™¼è€…éœ€è¦ä¸€åˆ°äº”å€‹å·¥ä½œæ—¥ä¾†å›žå¾©å ±å‘Šã€‚æœ‰æ™‚æœƒèŠ±è²»æ›´é•·çš„æ™‚é–“ï¼Œå› çˆ²ä»–å€‘å¯èƒ½æ£å¿™æ–¼åˆä½µçª—å£ã€å…¶ä»–工作ã€åƒåŠ 開發者會è°ï¼Œæˆ–者åªæ˜¯åœ¨äº«å—一個漫長 çš„æš‘å‡ã€‚ 「高優先級的å•é¡Œã€ï¼ˆè¦‹ä¸Šé¢çš„解釋)例外:ç¶è·è€…應該儘快解決這些å•é¡Œï¼›é€™å°±æ˜¯çˆ² ä»€éº¼ä½ æ‡‰è©²æœ€å¤šç‰å¾…一個星期(如果是緊急的事情,則åªéœ€å…©å¤©ï¼‰ï¼Œç„¶å¾Œå†ç™¼é€å‹å¥½ çš„æ醒。 有時ç¶è·è€…å¯èƒ½æ²’有åŠæ™‚回復;有時候å¯èƒ½æœƒå‡ºç¾åˆ†æ§ï¼Œä¾‹å¦‚一個å•é¡Œæ˜¯å¦ç¬¦åˆå›žæ¸ çš„æ¢ä»¶ã€‚在這種情æ³ä¸‹ï¼Œåœ¨éƒµä»¶åˆ—表上æå‡ºä½ çš„é¡§æ…®ï¼Œä¸¦è«‹æ±‚å…¶ä»–äººå…¬é–‹æˆ–ç§ä¸‹å›žå¾© 如何繼續推進。如果失敗了,å¯èƒ½æ‡‰è©²è®“更高級別的ç¶è·è€…介入。如果是 WiFi 驅動, 那就是無線ç¶è·è€…;如果沒有更高級別的ç¶è·è€…,或者其他一切努力都失敗了,那 這å¯èƒ½æ˜¯ä¸€ç¨®ç½•è¦‹çš„ã€å¯ä»¥è®“ Linus Torvalds åƒèˆ‡é€²ä¾†çš„情æ³ã€‚ **主動測試** :æ¯ç•¶ä¸€å€‹æ–°çš„ä¸»ç·šå…§æ ¸ç‰ˆæœ¬çš„ç¬¬ä¸€å€‹é 發布版本(rc1)發布的時候, 去檢查一下這個å•é¡Œæ˜¯å¦å¾—到了解決,或者是å¦æœ‰ä»€éº¼é‡è¦çš„變化。在工單ä¸æˆ–在 å›žå¾©å ±å‘Šçš„éƒµä»¶ä¸æåŠçµæžœï¼ˆç¢ºä¿æ‰€æœ‰åƒèˆ‡è¨Žè«–的人都被抄é€ï¼‰ã€‚é€™å°‡è¡¨æ˜Žä½ çš„æ‰¿è«¾ å’Œä½ é¡˜æ„幫忙。如果å•é¡ŒæŒçºŒå˜åœ¨ï¼Œå®ƒä¹Ÿæœƒæ醒開發者確ä¿ä»–們ä¸æœƒå¿˜è¨˜å®ƒã€‚其他一 些ä¸å®šæœŸçš„é‡æ–°æ¸¬è©¦ï¼ˆä¾‹å¦‚用rc3ã€rc5 和最終版本)也是一個好主æ„,但åªæœ‰åœ¨ç›¸é—œ çš„æ±è¥¿ç™¼ç”Ÿè®ŠåŒ–æˆ–è€…ä½ æ£åœ¨å¯«ä»€éº¼æ±è¥¿çš„時候æ‰å ±å‘Šä½ çš„çµæžœã€‚ 這些些常è¦çš„事情就ä¸èªªäº†ï¼Œæˆ‘å€‘ä¾†è«‡è«‡å ±å‘Šå¾Œå¦‚ä½•å¹«åŠ©è§£æ±ºå•é¡Œçš„細節。 查詢和測試請求 ~~~~~~~~~~~~~~~ å¦‚æžœä½ çš„å ±å‘Šå¾—åˆ°äº†å›žå¾©å‰‡éœ€å±¥è¡Œä»¥ä¸‹è²¬ä»»ï¼š **æª¢æŸ¥èˆ‡ä½ æ‰“äº¤é“的人** :大多數情æ³ä¸‹ï¼Œæœƒæ˜¯ç¶è·è€…或特定代碼å€åŸŸçš„é–‹ç™¼äººå“¡å° ä½ çš„å ±å‘Šåšå‡ºå›žæ‡‰ã€‚但由於å•é¡Œé€šå¸¸æ˜¯å…¬é–‹å ±å‘Šçš„,所以回復的å¯èƒ½æ˜¯ä»»ä½•äººâ€”—包括 那些想è¦å¹«å¿™çš„人,但最後å¯èƒ½æœƒç”¨ä»–們的å•é¡Œæˆ–è«‹æ±‚å¼•å°Žä½ å®Œå…¨å離軌é“。這很少 發生,但這是快速上網æœæœçœ‹ä½ æ£åœ¨èˆ‡èª°äº’å‹•æ˜¯æ˜Žæ™ºä¹‹èˆ‰çš„è¨±å¤šåŽŸå› ä¹‹ä¸€ã€‚é€šéŽé€™æ¨£ åšï¼Œä½ 也å¯ä»¥çŸ¥é“ä½ çš„å ±å‘Šæ˜¯å¦è¢«æ£ç¢ºçš„人è½åˆ°ï¼Œå› 爲如果討論沒有導致滿æ„çš„å•é¡Œ 解決方案而淡出,之後å¯èƒ½éœ€è¦æ醒ç¶è·è€…(見下文)。 **查詢數據** ï¼šé€šå¸¸ä½ æœƒè¢«è¦æ±‚測試一些æ±è¥¿æˆ–æ供更多細節。儘快æ供所è¦æ±‚çš„ä¿¡ æ¯ï¼Œå› çˆ²ä½ å·²ç¶“å¾—åˆ°äº†å¯èƒ½æœƒå¹«åŠ©ä½ 的人的注æ„ï¼Œä½ ç‰å¾…的時間越長就有越å¯èƒ½å¤±åŽ» é—œæ³¨ï¼›å¦‚æžœä½ ä¸åœ¨æ•¸å€‹å·¥ä½œæ—¥å…§æ供信æ¯ï¼Œç”šè‡³å¯èƒ½å‡ºç¾é€™ç¨®çµæžœã€‚ **測試請求** ï¼šç•¶ä½ è¢«è¦æ±‚測試一個診斷補ä¸æˆ–å¯èƒ½çš„修復時,也è¦å„˜é‡åŠæ™‚測試。 但è¦åšå¾—æ°ç•¶ï¼Œä¸€å®šä¸è¦æ€¥æ–¼æ±‚æˆï¼šæ··æ·†äº‹æƒ…很容易發生,這會給所有人帶來許多困 惑。例如一個常見的錯誤是以爲應用了一個帶修復的建è°è£œä¸ï¼Œä½†äº‹å¯¦ä¸Šä¸¦æ²’æœ‰ã€‚å³ ä½¿æ˜¯æœ‰ç¶“é©—çš„æ¸¬è©¦äººå“¡ä¹Ÿæœƒå¶çˆ¾ç™¼ç”Ÿé€™æ¨£çš„äº‹æƒ…ï¼Œä½†ç•¶æœ‰ä¿®å¾©çš„å…§æ ¸å’Œæ²’æœ‰ä¿®å¾©çš„å…§ æ ¸è¡¨ç¾å¾—一樣時,他們大多時候會注æ„到。 當沒有任何實質性進展時該怎麼辦 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ æœ‰äº›å ±å‘Šä¸æœƒå¾—åˆ°è² æœ‰ç›¸é—œè²¬ä»»çš„ Linux å…§æ ¸é–‹ç™¼è€…çš„ä»»ä½•å應;或者åœç¹žé€™å€‹å•é¡Œ 的討論有所發展,但漸漸淡出,沒有任何實質內容產出。 在這種情æ³ä¸‹ï¼Œè¦ç‰å…©å€‹æ˜ŸæœŸï¼ˆæœ€å¥½æ˜¯ä¸‰å€‹æ˜ŸæœŸï¼‰å¾Œå†ç™¼å‡ºå‹å¥½çš„æé†’ï¼šä¹Ÿè¨±ç•¶ä½ çš„ å ±å‘Šåˆ°é”時,ç¶è·è€…剛剛離開éµç›¤ä¸€æ®µæ™‚間,或者有更é‡è¦çš„事情è¦è™•ç†ã€‚在寫æ醒 信的時候,è¦å–„æ„地å•ä¸€ä¸‹ï¼Œæ˜¯å¦é‚„需è¦ä½ 這邊æä¾›ä»€éº¼ä¾†è®“äº‹æƒ…æŽ¨é€²ä¸‹åŽ»ã€‚å¦‚æžœå ± 告是通éŽéƒµä»¶ç™¼å‡ºä¾†çš„ï¼Œé‚£å°±åœ¨éƒµä»¶çš„ç¬¬ä¸€è¡Œå›žè¦†ä½ çš„åˆå§‹éƒµä»¶ï¼ˆè¦‹ä¸Šæ–‡ï¼‰ï¼Œå…¶ä¸åŒ… æ‹¬ä¸‹æ–¹çš„åŽŸå§‹å ±å‘Šçš„å®Œæ•´å¼•ç”¨ï¼šé€™æ˜¯å°‘æ•¸å¹¾ç¨®æƒ…æ³ä¸‹ï¼Œé€™æ¨£çš„「TOFUã€ï¼ˆText Over, Fullquote Underæ–‡å—在上,完整引用在下)是æ£ç¢ºçš„åšæ³•ï¼Œå› 爲這樣所有的收件人都 會以é©ç•¶çš„é †åºç«‹å³è®“細節到手é 上來。 在æ醒之後,å†ç‰ä¸‰å‘¨çš„å›žè¦†ã€‚å¦‚æžœä½ ä»ç„¶æ²’有得到é©ç•¶çš„åé¥‹ï¼Œä½ é¦–å…ˆæ‡‰è©²é‡æ–°è€ƒ æ…®ä½ çš„æ–¹æ³•ã€‚ä½ æ˜¯å¦å¯èƒ½å˜—試接觸了錯誤的人?是ä¸æ˜¯å ±å‘Šä¹Ÿè¨±ä»¤äººå感或者太混亂, 以至於人們決定完全é é›¢å®ƒï¼ŸæŽ’é™¤é€™äº›å› ç´ çš„æœ€å¥½æ–¹æ³•æ˜¯ï¼šæŠŠå ±å‘Šçµ¦ä¸€å…©å€‹ç†Ÿæ‚‰ FLOSS å•é¡Œå ±å‘Šçš„人看,詢å•ä»–們的æ„見。åŒæ™‚徵求他們關於如何繼續推進的建è°ã€‚ 這å¯èƒ½æ„å‘³è‘—ï¼šæº–å‚™ä¸€ä»½æ›´å¥½çš„å ±å‘Šï¼Œè®“é€™äº›äººåœ¨ä½ ç™¼å‡ºåŽ»ä¹‹å‰å°å®ƒé€²è¡Œå¯©æŸ¥ã€‚這樣 的方法完全å¯ä»¥ï¼›åªéœ€èªªæ˜Žé€™æ˜¯é—œæ–¼é€™å€‹å•é¡Œçš„ç¬¬äºŒä»½æ”¹é€²çš„å ±å‘Šï¼Œä¸¦é™„ä¸Šç¬¬ä¸€ä»½å ± 告的連çµã€‚ å¦‚æžœå ±å‘Šæ˜¯æ°ç•¶çš„ï¼Œä½ å¯ä»¥ç™¼é€ç¬¬äºŒå°æ醒信;在其ä¸è©¢å•çˆ²ä»€éº¼å ±å‘Šæ²’有得到任何 回復。第二å°æ醒郵件的好時機是在新 Linux å…§æ ¸ç‰ˆæœ¬çš„é¦–å€‹é 發布版本('rc1') 發布後ä¸ä¹…ï¼Œå› çˆ²ç„¡è«–å¦‚ä½•ä½ éƒ½æ‡‰è©²åœ¨é‚£å€‹æ™‚å€™é‡æ–°æ¸¬è©¦ä¸¦æ供狀態更新(見上文)。 如果第二次æ醒的çµæžœåˆåœ¨ä¸€å‘¨å…§æ²’有任何å應,å¯ä»¥å˜—試è¯ç¹«ä¸Šç´šç¶è·è€…è©¢å•æ„見: å³ä½¿å†å¿™çš„ç¶è·è€…在這時候也至少應該發éŽæŸç¨®ç¢ºèªã€‚ 記ä½è¦åšå¥½å¤±æœ›çš„準備:ç†æƒ³ç‹€æ³ä¸‹ç¶è·è€…最好å°æ¯ä¸€å€‹å•é¡Œå ±å‘Šåšå‡ºå›žæ‡‰ï¼Œä½†ä»–們 åªæœ‰ç¾©å‹™è§£æ±ºä¹‹å‰åˆ—出的「高優先級å•é¡Œã€ã€‚æ‰€ä»¥ï¼Œå¦‚æžœä½ å¾—åˆ°çš„å›žè¦†æ˜¯ã€Œè¬è¬ä½ çš„å ±å‘Šï¼Œ 我目å‰æœ‰æ›´é‡è¦çš„å•é¡Œè¦è™•ç†ï¼Œåœ¨å¯é è¦‹çš„æœªä¾†æ²’æœ‰æ™‚é–“åŽ»ç ”ç©¶é€™å€‹å•é¡Œã€ï¼Œé‚£è«‹ä¸ è¦å¤ªæ²®å–ªã€‚ 也有å¯èƒ½åœ¨ç¼ºé™·è·Ÿè¹¤å™¨æˆ–列表ä¸é€²è¡Œäº†ä¸€äº›è¨Žè«–之後,什麼都沒有發生,æ醒也無助 於激勵大家進行修復。這種情æ³å¯èƒ½æ˜¯æ¯€æ»…性的,但在 Linux å…§æ ¸é–‹ç™¼ä¸ç¢ºå¯¦æœƒç™¼ç”Ÿã€‚ 這些和其他得ä¸åˆ°å¹«åŠ©çš„åŽŸå› åœ¨æœ¬æ–‡çµå°¾è™•çš„「爲什麼有些å•é¡Œåœ¨è¢«å ±å‘Šå¾Œæ²’有得到 任何回應或者ä»ç„¶æ²’有修復ã€ä¸é€²è¡Œäº†è§£é‡‹ã€‚ å¦‚æžœä½ æ²’æœ‰å¾—åˆ°ä»»ä½•å¹«åŠ©æˆ–å•é¡Œæœ€çµ‚沒有得到解決,ä¸è¦æ²®å–ªï¼šLinux å…§æ ¸æ˜¯ FLOSS, å› æ¤ä½ ä»ç„¶å¯ä»¥è‡ªå·±å¹«åŠ©è‡ªå·±ã€‚ä¾‹å¦‚ï¼Œä½ å¯ä»¥è©¦è‘—找到其他å—影響的人,和他們一 èµ·åˆä½œä¾†è§£æ±ºé€™å€‹å•é¡Œã€‚這樣的團隊å¯ä»¥ä¸€èµ·æº–å‚™ä¸€ä»½æ–°çš„å ±å‘Šï¼Œæ到團隊有多少人, çˆ²ä»€éº¼ä½ å€‘èªçˆ²é€™æ˜¯æ‡‰è©²å¾—åˆ°è§£æ±ºçš„äº‹æƒ…ã€‚ä¹Ÿè¨±ä½ å€‘é‚„å¯ä»¥ä¸€èµ·ç¸®å°ç¢ºåˆ‡åŽŸå› 或引 入回æ¸çš„變化,這往往會使修復更容易。而且如果é‹æ°£å¥½çš„話,團隊ä¸å¯èƒ½æœƒæœ‰æ‡‚點 編程的人,也許能寫出一個修複方案。 ã€Œå ±å‘Šç©©å®šç‰ˆå’Œé•·æœŸæ”¯æŒå…§æ ¸ç·šçš„回æ¸ã€çš„åƒè€ƒ ------------------------------------------ 本å°ç¯€æ供了在穩定版和長期支æŒå…§æ ¸ç·šä¸é¢å°å›žæ¸æ™‚需è¦åŸ·è¡Œçš„æ¥é©Ÿçš„詳細信æ¯ã€‚ 確ä¿ç‰¹å®šç‰ˆæœ¬ç·šä»ç„¶å—æ”¯æŒ ~~~~~~~~~~~~~~~~~~~~~~~~~ *æª¢æŸ¥å…§æ ¸é–‹ç™¼äººå“¡æ˜¯å¦ä»ç„¶ç¶è·ä½ 關心的Linuxå…§æ ¸ç‰ˆæœ¬ç·šï¼šåŽ» kernel.org çš„ 首é ,確ä¿æ¤ç‰¹å®šç‰ˆæœ¬ç·šçš„最新版沒有「[EOL]ã€æ¨™è¨˜ã€‚* å¤§å¤šæ•¸å…§æ ¸ç‰ˆæœ¬ç·šåªæ”¯æŒä¸‰å€‹æœˆå·¦å³ï¼Œå› 爲延長ç¶è·æ™‚é–“æœƒå¸¶ä¾†ç›¸ç•¶å¤šçš„å·¥ä½œã€‚å› æ¤ï¼Œ æ¯å¹´åªæœƒé¸æ“‡ä¸€å€‹ç‰ˆæœ¬ä¾†æ”¯æŒè‡³å°‘兩年(通常是å…å¹´ï¼‰ã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ éœ€è¦æª¢æŸ¥ å…§æ ¸é–‹ç™¼è€…æ˜¯å¦é‚„支æŒä½ 關心的版本線。 注æ„,如果 `kernel.org <https://kernel.org/>`_ 在首é 上列出了兩個「穩定ã€ç‰ˆæœ¬ï¼Œ ä½ æ‡‰è©²è€ƒæ…®åˆ‡æ›åˆ°è¼ƒæ–°çš„版本,而忘掉較舊的版本:å°å®ƒçš„支æŒå¯èƒ½å¾ˆå¿«å°±æœƒçµæŸã€‚ 然後,它將被標記爲「生命周期çµæŸã€ï¼ˆEOL)。é”到這個程度的版本線ä»ç„¶æœƒåœ¨ `kernel.org <https://kernel.org/>`_ 首é 上被顯示一兩周,但ä¸é©åˆç”¨æ–¼æ¸¬è©¦å’Œ å ±å‘Šã€‚ æœç´¢ç©©å®šç‰ˆéƒµä»¶åˆ—表 ~~~~~~~~~~~~~~~~~~~ *檢查Linux穩定版郵件列表ä¸çš„ç¾æœ‰å ±å‘Šã€‚* ä¹Ÿè¨±ä½ æ‰€é¢è‡¨çš„å•é¡Œå·²ç¶“被發ç¾ï¼Œä¸¦ä¸”已經或å³å°‡è¢«ä¿®å¾©ã€‚å› æ¤ï¼Œè«‹åœ¨ `Linux 穩定 版郵件列表的檔案 <https://lore.kernel.org/stable/>`_ ä¸æœç´¢é¡žä¼¼å•é¡Œçš„å ±å‘Šã€‚ å¦‚æžœä½ æ‰¾åˆ°ä»»ä½•åŒ¹é…çš„å•é¡Œï¼Œå¯ä»¥è€ƒæ…®åŠ 入討論,除éžä¿®å¾©å·¥ä½œå·²ç¶“完æˆä¸¦è¨ˆåŠƒå¾ˆå¿« 得到應用。 用最新版本復ç¾å•é¡Œ ~~~~~~~~~~~~~~~~~~~ *從特定的版本線安è£æœ€æ–°ç‰ˆæœ¬ä½œçˆ²ç´”æ·¨å…§æ ¸ã€‚ç¢ºä¿é€™å€‹å…§æ ¸æ²’æœ‰è¢«æ±™æŸ“ï¼Œä¸¦ä¸”ä» ç„¶å˜åœ¨å•é¡Œï¼Œå› 爲å•é¡Œå¯èƒ½å·²ç¶“在那裡被修復了。* 在投入更多時間到這個éŽç¨‹ä¸ä¹‹å‰ï¼Œä½ è¦æª¢æŸ¥é€™å€‹å•é¡Œæ˜¯å¦åœ¨ä½ 關注的版本線的最新 版本ä¸å·²ç¶“å¾—åˆ°äº†ä¿®å¾©ã€‚é€™å€‹å…§æ ¸éœ€è¦æ˜¯ç´”淨的,在å•é¡Œç™¼ç”Ÿä¹‹å‰ä¸æ‡‰è©²è¢«æ±™æŸ“ï¼Œæ£ å¦‚ä¸Šé¢å·²ç¶“在測試主線的éŽç¨‹ä¸è©³ç´°ä»‹ç´¹éŽçš„一樣。 您是å¦æ˜¯ç¬¬ä¸€æ¬¡æ³¨æ„åˆ°ä¾›æ‡‰å•†å…§æ ¸çš„å›žæ¸ï¼Ÿä¾›æ‡‰å•†çš„更改å¯èƒ½æœƒç™¼ç”Ÿè®ŠåŒ–ã€‚ä½ éœ€è¦é‡æ–° 檢查排除來這個å•é¡Œã€‚當您從5.10.4-vendor.42更新到5.10.5-vendor.43時,記錄æ壞 çš„ä¿¡æ¯ã€‚然後在測試了å‰ä¸€æ®µä¸æ‰€è¿°çš„最新5.10版本之後,檢查Linux 5.10.4的普通版本 是å¦ä¹Ÿå¯ä»¥æ£å¸¸å·¥ä½œã€‚如果å•é¡Œåœ¨é‚£è£¡å‡ºç¾ï¼Œé‚£å°±ä¸ç¬¦åˆä¸Šæ¸¸å›žæ¸çš„æ¢ä»¶ï¼Œæ‚¨éœ€è¦åˆ‡æ› 回主é€æ¥æŒ‡å—ä¾†å ±å‘Šå•é¡Œã€‚ å ±å‘Šå›žæ¸ ~~~~~~~~~~ *å‘Linux穩定版郵件列表發é€ä¸€å€‹ç°¡çŸçš„å•é¡Œå ±å‘Š(stable@vger.kernel.org)。 大致æè¿°å•é¡Œï¼Œä¸¦è§£é‡‹å¦‚何復ç¾ã€‚講清楚首個出ç¾å•é¡Œçš„版本和最後一個工作æ£å¸¸ 的版本。然後ç‰å¾…進一æ¥çš„指示。* ç•¶å ±å‘Šåœ¨ç©©å®šç‰ˆæˆ–é•·æœŸæ”¯æŒå…§æ ¸ç·šå…§ç™¼ç”Ÿçš„回æ¸ï¼ˆä¾‹å¦‚在從5.10.4更新到5.10.5時), 一份簡çŸçš„å ±å‘Šè¶³ä»¥å¿«é€Ÿå ±å‘Šå•é¡Œã€‚å› æ¤åªéœ€è¦ç²—略的æ述。 但是請注æ„ï¼Œå¦‚æžœæ‚¨èƒ½å¤ æŒ‡æ˜Žå¼•å…¥å•é¡Œçš„確切版本,這將å°é–‹ç™¼äººå“¡æœ‰å¾ˆå¤§å¹«åŠ©ã€‚å› æ¤ å¦‚æžœæœ‰æ™‚é–“çš„è©±ï¼Œè«‹å˜—è©¦ä½¿ç”¨æ™®é€šå…§æ ¸æ‰¾åˆ°è©²ç‰ˆæœ¬ã€‚è®“æˆ‘å€‘å‡è¨ç™¼è¡Œç‰ˆç™¼å¸ƒLinuxå…§æ ¸ 5.10.5到5.10.8的更新時發生了故障。那麼按照上é¢çš„指示,去檢查該版本線ä¸çš„最新 å…§æ ¸ï¼Œæ¯”å¦‚5.10.9。如果å•é¡Œå‡ºç¾ï¼Œè«‹å˜—試普通5.10.5,以確ä¿ä¾›æ‡‰å•†æ‡‰ç”¨çš„補ä¸ä¸æœƒ 干擾。如果å•é¡Œæ²’有出ç¾ï¼Œé‚£éº¼å˜—試5.10.7,然後直到5.10.8或5.10.6(å–決於çµæžœï¼‰ 找到第一個引入å•é¡Œçš„ç‰ˆæœ¬ã€‚åœ¨å ±å‘Šä¸å¯«æ˜Žé€™ä¸€é»žï¼Œä¸¦æŒ‡å‡º5.10.9ä»ç„¶å˜åœ¨æ•…障。 å‰ä¸€æ®µåŸºæœ¬ç²—略地概述了「二分ã€æ–¹æ³•ã€‚ä¸€æ—¦å ±å‘Šå‡ºä¾†ï¼Œæ‚¨å¯èƒ½æœƒè¢«è¦æ±‚åšä¸€å€‹æ£ç¢ºçš„ å ±å‘Šï¼Œå› çˆ²å®ƒå…許精確地定ä½å°Žè‡´å•é¡Œçš„確切更改(然後很容易被æ¢å¾©ä»¥å¿«é€Ÿä¿®å¾©å•é¡Œï¼‰ã€‚ å› æ¤å¦‚果時間å…許,考慮立å³é€²è¡Œé©ç•¶çš„二分。有關如何詳細信æ¯ï¼Œè«‹åƒé–±ã€Œå°å›žæ¸çš„ 特別關照ã€éƒ¨åˆ†å’Œæ–‡æª”「Documentation/translations/zh_TW/admin-guide/bug-bisect.rstã€ã€‚ ã€Œå ±å‘Šåƒ…åœ¨èˆŠå…§æ ¸ç‰ˆæœ¬ç·šä¸ç™¼ç”Ÿçš„å•é¡Œã€çš„åƒè€ƒ ------------------------------------------ æœ¬ç¯€è©³ç´°ä»‹ç´¹äº†å¦‚æžœç„¡æ³•ç”¨ä¸»ç·šå…§æ ¸é‡ç¾å•é¡Œï¼Œä½†å¸Œæœ›åœ¨èˆŠç‰ˆæœ¬ç·šï¼ˆåˆç¨±ç©©å®šç‰ˆå…§æ ¸å’Œ 長期支æŒå…§æ ¸ï¼‰ä¸ä¿®å¾©å•é¡Œæ™‚需è¦æŽ¡å–çš„æ¥é©Ÿã€‚ 有些修復太複雜 ~~~~~~~~~~~~~~~ *è«‹åšå¥½æº–備,接下來的幾個æ¥é©Ÿå¯èƒ½ç„¡æ³•åœ¨èˆŠç‰ˆæœ¬ä¸è§£æ±ºå•é¡Œï¼šä¿®å¾©å¯èƒ½å¤ªå¤§æˆ– 太冒險,無法移æ¤åˆ°é‚£è£¡ã€‚* å³ä½¿æ˜¯å¾®å°çš„ã€çœ‹ä¼¼æ˜Žé¡¯çš„代碼變化,有時也會帶來新的ã€å®Œå…¨æ„想ä¸åˆ°çš„å•é¡Œã€‚ç©© 定版和長期支æŒå…§æ ¸çš„ç¶è·è€…éžå¸¸æ¸…æ¥šé€™ä¸€é»žï¼Œå› æ¤ä»–們åªå°é€™äº›å…§æ ¸é€²è¡Œç¬¦åˆ 「Documentation/translations/zh_TW/process/stable-kernel-rules.rstã€ä¸æ‰€åˆ—出的 è¦å‰‡çš„修改。 複雜或有風險的修改ä¸ç¬¦åˆæ¢ä»¶ï¼Œå› æ¤åªèƒ½æ‡‰ç”¨æ–¼ä¸»ç·šã€‚其他的修復很容易被回溯到 最新的穩定版和長期支æŒå…§æ ¸ï¼Œä½†æ˜¯é¢¨éšªå¤ªå¤§ï¼Œç„¡æ³•é›†æˆåˆ°èˆŠç‰ˆå…§æ ¸ä¸ã€‚所以è¦æ³¨æ„ ä½ æ‰€å¸Œæœ›çš„ä¿®å¾©å¯èƒ½æ˜¯é‚£äº›ä¸æœƒè¢«å›žæº¯åˆ°ä½ æ‰€é—œå¿ƒçš„ç‰ˆæœ¬ç·šçš„ä¿®å¾©ä¹‹ä¸€ã€‚åœ¨é€™ç¨®æƒ…æ³ ä¸‹ï¼Œä½ å°‡åˆ¥ç„¡é¸æ“‡ï¼Œè¦éº¼å¿å—這個å•é¡Œï¼Œè¦éº¼åˆ‡æ›åˆ°ä¸€å€‹è¼ƒæ–°çš„ Linux 版本,除éžä½ 想自己把修復補ä¸æ‡‰ç”¨åˆ°ä½ çš„å…§æ ¸ä¸ã€‚ 通用準備 ~~~~~~~~~~ *執行上é¢ã€Œå ±å‘Šåƒ…åœ¨èˆŠå…§æ ¸ç‰ˆæœ¬ç·šä¸ç™¼ç”Ÿçš„å•é¡Œã€ä¸€ç¯€ä¸çš„å‰ä¸‰å€‹æ¥é©Ÿã€‚* 您需è¦åŸ·è¡Œæœ¬æŒ‡å—å¦ä¸€ç¯€ä¸å·²ç¶“æ述的幾個æ¥é©Ÿã€‚這些æ¥é©Ÿå°‡è®“您: * æª¢æŸ¥å…§æ ¸é–‹ç™¼äººå“¡æ˜¯å¦ä»ç„¶ç¶è·æ‚¨é—œå¿ƒçš„Linuxå…§æ ¸ç‰ˆæœ¬è¡Œã€‚ * 在Linux穩定郵件列表ä¸æœç´¢é€€å‡ºçš„å ±å‘Šã€‚ * 檢查最新版本。 檢查代碼æ·å²å’Œæœç´¢ç¾æœ‰çš„討論 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *在Linuxå…§æ ¸ç‰ˆæœ¬æŽ§åˆ¶ç³»çµ±ä¸æœç´¢ä¿®å¾©ä¸»ç·šå•é¡Œçš„æ›´æ”¹ï¼Œå› çˆ²å®ƒçš„æ交消æ¯å¯èƒ½ æœƒå‘Šè¨´ä½ ä¿®å¾©æ˜¯å¦å·²ç¶“計劃好了支æŒã€‚å¦‚æžœä½ æ²’æœ‰æ‰¾åˆ°ï¼Œæœç´¢é©ç•¶çš„郵件列表, 尋找討論æ¤é¡žå•é¡Œæˆ–åŒè¡Œè©•è°å¯èƒ½ä¿®å¾©çš„帖å;然後檢查討論是å¦èªçˆ²ä¿®å¾©ä¸é© åˆæ”¯æŒã€‚如果支æŒæ ¹æœ¬ä¸è¢«è€ƒæ…®ï¼ŒåŠ 入最新的討論,詢å•æ˜¯å¦æœ‰å¯èƒ½ã€‚* 在許多情æ³ä¸‹ï¼Œä½ 所處ç†çš„å•é¡Œæœƒç™¼ç”Ÿåœ¨ä¸»ç·šä¸Šï¼Œä½†å·²åœ¨ä¸»ç·šä¸Šå¾—到了解決。修æ£å®ƒ çš„æ交也需è¦è¢«å›žæº¯æ‰èƒ½è§£æ±ºé€™å€‹å•é¡Œã€‚é€™å°±æ˜¯çˆ²ä»€éº¼ä½ è¦æœç´¢å®ƒæˆ–任何相關討論。 * 首先嘗試在å˜æ”¾ Linux å…§æ ¸åŽŸå§‹ç¢¼çš„ Git 倉庫ä¸æ‰¾åˆ°ä¿®å¾©ã€‚ä½ å¯ä»¥é€šéŽ `kernel.org 上的網é <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/>`_ 或 `GitHub 上的é¡åƒ <https://github.com/torvalds/linux>`_ 來實ç¾ï¼›å¦‚æžœä½ æœ‰ä¸€å€‹æœ¬åœ°å…‹éš†ï¼Œä½ ä¹Ÿå¯ä»¥åœ¨å‘½ä»¤è¡Œç”¨ ``git log --grep=<pattern>`` 來æœç´¢ã€‚ å¦‚æžœä½ æ‰¾åˆ°äº†ä¿®å¾©ï¼Œè«‹æŸ¥çœ‹æ交消æ¯çš„尾部是å¦åŒ…å«äº†é¡žä¼¼é€™æ¨£çš„「穩定版標籤ã€ï¼š Cc: <stable@vger.kernel.org> # 5.4+ åƒä¸Šé¢é€™è¡Œï¼Œé–‹ç™¼è€…標記了安全修復å¯ä»¥å›žå‚³åˆ° 5.4 åŠä»¥å¾Œçš„ç‰ˆæœ¬ã€‚å¤§å¤šæ•¸æƒ…æ³ ä¸‹ï¼Œå®ƒæœƒåœ¨å…©å‘¨å…§è¢«æ‡‰ç”¨åˆ°é‚£è£¡ï¼Œä½†æœ‰æ™‚éœ€è¦æ›´é•·çš„時間。 * 如果æäº¤æ²’æœ‰å‘Šè¨´ä½ ä»»ä½•æ±è¥¿ï¼Œæˆ–è€…ä½ æ‰¾ä¸åˆ°ä¿®å¾©ï¼Œè«‹å†æ‰¾æ‰¾é—œæ–¼é€™å€‹å•é¡Œçš„討論。 ç”¨ä½ æœ€å–œæ¡çš„æœå°‹å¼•æ“Žæœç´¢ç¶²çµ¡ï¼Œä»¥åŠ `Linux kernel developers mailing list å…§æ ¸é–‹ç™¼è€…éƒµä»¶åˆ—è¡¨ <https://lore.kernel.org/lkml/>`_ 的檔案。也å¯ä»¥ 閱讀上é¢çš„ `定ä½å°Žè‡´å•é¡Œçš„å…§æ ¸å€åŸŸ` 一節,然後按照說明找到導致å•é¡Œçš„åç³» 統:它的缺陷跟蹤器或郵件列表å˜æª”ä¸å¯èƒ½æœ‰ä½ è¦æ‰¾çš„ç”案。 * å¦‚æžœä½ çœ‹åˆ°äº†ä¸€å€‹è¨ˆåŠƒçš„ä¿®å¾©ï¼Œè«‹æŒ‰ä¸Šæ‰€è¿°åœ¨ç‰ˆæœ¬æŽ§åˆ¶ç³»çµ±ä¸æœç´¢å®ƒï¼Œå› 爲æäº¤å¯ èƒ½æœƒå‘Šè¨´ä½ æ˜¯å¦å¯ä»¥é€²è¡Œå›žæº¯ã€‚ * 檢查討論ä¸æ˜¯å¦æœ‰ä»»ä½•è·¡è±¡è¡¨æ˜Žï¼Œè©²ä¿®å¾©ç¨‹åºå¯èƒ½é¢¨éšªå¤ªå¤§ï¼Œç„¡æ³•å›žæº¯åˆ°ä½ 關心 çš„ç‰ˆæœ¬ç·šã€‚å¦‚æžœæ˜¯é€™æ¨£çš„è©±ï¼Œä½ å¿…é ˆå¿å—這個å•é¡Œï¼Œæˆ–者切æ›åˆ°æ‡‰ç”¨äº†ä¿®å¾©çš„å…§ æ ¸ç‰ˆæœ¬ç·šã€‚ * 如果修復的å•é¡ŒæœªåŒ…å«ç©©å®šç‰ˆæ¨™ç±¤ï¼Œä¸¦ä¸”沒有討論éŽå›žæº¯å•é¡Œï¼Œè«‹åŠ 入討論:如 æžœåˆé©çš„話,請æåŠä½ 所é¢å°çš„å•é¡Œçš„版本,以åŠä½ 希望看到它被修復。 è«‹æ±‚å»ºè° ~~~~~~~~~ *å‰é¢çš„æ¥é©Ÿä¹‹ä¸€æ‡‰è©²æœƒçµ¦å‡ºä¸€å€‹è§£æ±ºæ–¹æ¡ˆã€‚如果ä»æœªèƒ½æˆåŠŸï¼Œè«‹å‘å¯èƒ½å¼•èµ·å•é¡Œ çš„å系統的ç¶è·äººå“¡è©¢å•å»ºè°ï¼›æŠ„é€ç‰¹å®šå系統的郵件列表以åŠç©©å®šç‰ˆéƒµä»¶åˆ—表。* 如果å‰é¢çš„三個æ¥é©Ÿéƒ½æ²’æœ‰è®“ä½ æ›´æŽ¥è¿‘è§£æ±ºæ–¹æ¡ˆï¼Œé‚£éº¼åªå‰©ä¸‹ä¸€å€‹é¸æ“‡ï¼šè«‹æ±‚建è°ã€‚ åœ¨ä½ ç™¼çµ¦å¯èƒ½æ˜¯å•é¡Œæ ¹æºçš„å系統的ç¶è·è€…的郵件ä¸é€™æ¨£åšï¼›æŠ„é€å系統的郵件列表 以åŠç©©å®šç‰ˆéƒµä»¶åˆ—表(stable@vger.kernel.org)。 爲什麼有些å•é¡Œåœ¨å ±å‘Šå¾Œæ²’有任何回應或ä»æœªè§£æ±ºï¼Ÿ =============================================== ç•¶å‘ Linux é–‹ç™¼è€…å ±å‘Šå•é¡Œæ™‚,è¦æ³¨æ„åªæœ‰ã€Œé«˜å„ªå…ˆç´šçš„å•é¡Œã€ï¼ˆå›žæ¸ã€å®‰å…¨å•é¡Œã€åš´ é‡å•é¡Œï¼‰æ‰ä¸€å®šæœƒå¾—到解決。如果ç¶è·è€…或其他人都失敗了,Linus Torvalds 他自己 會確ä¿é€™ä¸€é»žã€‚ä»–å€‘å’Œå…¶ä»–å…§æ ¸é–‹ç™¼è€…ä¹Ÿæœƒè§£æ±ºå¾ˆå¤šå…¶ä»–å•é¡Œã€‚但是è¦çŸ¥é“,有時他 們也會ä¸èƒ½æˆ–ä¸é¡˜å¹«å¿™ï¼›æœ‰æ™‚ç”šè‡³æ²’æœ‰äººç™¼å ±å‘Šçµ¦ä»–å€‘ã€‚ æœ€å¥½çš„è§£é‡‹å°±æ˜¯é‚£äº›å…§æ ¸é–‹ç™¼è€…å¸¸å¸¸æ˜¯åœ¨æ¥é¤˜æ™‚間爲 Linux å…§æ ¸åšå‡ºè²¢ç»ã€‚å…§æ ¸ä¸çš„ ä¸å°‘驅動程åºéƒ½æ˜¯ç”±é€™æ¨£çš„程å¼è¨è¨ˆå¸«ç·¨å¯«çš„,往往åªæ˜¯å› 爲他們想讓自己的硬體å¯ä»¥åœ¨ 自己喜æ¡çš„作æ¥ç³»çµ±ä¸Šä½¿ç”¨ã€‚ 這些程å¼è¨è¨ˆå¸«å¤§å¤šæ•¸æ™‚候會很樂æ„ä¿®å¾©åˆ¥äººå ±å‘Šçš„å•é¡Œã€‚但是沒有人å¯ä»¥å¼·è¿«ä»–們這樣 åšï¼Œå› 爲他們是自願貢ç»çš„。 還有一些情æ³ä¸‹ï¼Œé€™äº›é–‹ç™¼è€…真的很想解決一個å•é¡Œï¼Œä½†å»ä¸èƒ½è§£æ±ºï¼šæœ‰æ™‚ä»–å€‘ç¼ºä¹ ç¡¬é«”ç·¨ç¨‹æ–‡æª”ä¾†è§£æ±ºå•é¡Œã€‚這種情æ³å¾€å¾€ç”±æ–¼å…¬é–‹çš„文檔太簡陋,或者驅動程åºæ˜¯é€š éŽé€†å‘工程編寫的。 æ¥é¤˜é–‹ç™¼è€…é²æ—©ä¹Ÿæœƒä¸å†é—œå¿ƒæŸé©…動。也許他們的測試硬體壞了,被更高級的玩æ„å– ä»£äº†ï¼Œæˆ–è€…æ˜¯å¤ªè€äº†ä»¥è‡³æ–¼åªèƒ½åœ¨è¨ˆç®—æ©Ÿåšç‰©é¤¨è£¡æ‰¾åˆ°ã€‚æœ‰æ™‚é–‹ç™¼è€…æ ¹æœ¬å°±ä¸é—œå¿ƒä»– 們的代碼和 Linux äº†ï¼Œå› çˆ²åœ¨ä»–å€‘çš„ç”Ÿæ´»ä¸ä¸€äº›ä¸åŒçš„æ±è¥¿è®Šå¾—æ›´é‡è¦äº†ã€‚在æŸäº›æƒ… æ³ä¸‹ï¼Œæ²’有人願æ„接手ç¶è·è€…的工作——也沒有人å¯ä»¥è¢«å¼·è¿«ï¼Œå› çˆ²å° Linux å…§æ ¸çš„è²¢ ç»æ˜¯è‡ªé¡˜çš„。然而被éºæ£„的驅動程åºä»ç„¶å˜åœ¨æ–¼å…§æ ¸ä¸ï¼šå®ƒå€‘å°äººå€‘ä»ç„¶æœ‰ç”¨ï¼Œåˆªé™¤ 它們å¯èƒ½å°Žè‡´å›žæ¸ã€‚ å°æ–¼é‚£äº›çˆ² Linux å…§æ ¸å·¥ä½œè€Œç²å¾—å ±é…¬çš„é–‹ç™¼è€…ä¾†èªªï¼Œæƒ…æ³ä¸¦æ²’有什麼ä¸åŒã€‚這些人 ç¾åœ¨è²¢ç»äº†å¤§éƒ¨åˆ†çš„變更。但是他們的僱主é²æ—©ä¹Ÿæœƒåœæ¢é—œæ³¨ä»–å€‘çš„ä»£ç¢¼æˆ–è€…è®“ç¨‹åº å“¡å°ˆæ³¨æ–¼å…¶ä»–äº‹æƒ…ã€‚ä¾‹å¦‚ï¼Œç¡¬é«”å» å•†ä¸»è¦é€šéŽéŠ·å”®æ–°ç¡¬é«”ä¾†è³ºéŒ¢ï¼›å› æ¤ï¼Œä»–們ä¸çš„ä¸ å°‘äººä¸¦æ²’æœ‰æŠ•å…¥å¤ªå¤šæ™‚é–“å’Œç²¾åŠ›ä¾†ç¶è·ä»–們多年å‰å°±åœæ¢éŠ·å”®çš„æ±è¥¿çš„ Linux å…§æ ¸é©… 動。ä¼æ¥ç´š Linux 發行商往往æŒçºŒç¶è·çš„時間比較長,但在新版本ä¸å¾€å¾€æœƒæŠŠå°è€èˆŠ 和稀有硬體的支æŒæ”¾åœ¨ä¸€é‚Šï¼Œä»¥é™åˆ¶ç¯„åœã€‚一旦公å¸æ‹‹æ£„了一些代碼,往往由æ¥é¤˜è²¢ ç»è€…接手,但æ£å¦‚上é¢æ到的:他們é²æ—©ä¹Ÿæœƒæ”¾ä¸‹ä»£ç¢¼ã€‚ 優先級是一些å•é¡Œæ²’有被修復的å¦ä¸€å€‹åŽŸå› ï¼Œå› çˆ²ç¶è·è€…相當多的時候是被迫è¨ç½®é€™ äº›å„ªå…ˆç´šçš„ï¼Œå› çˆ²åœ¨ Linux 上工作的時間是有é™çš„。å°æ–¼æ¥é¤˜æ™‚間或者僱主給予他們 çš„é–‹ç™¼äººå“¡ç”¨æ–¼ä¸Šæ¸¸å…§æ ¸ç¶è·å·¥ä½œçš„時間也是如æ¤ã€‚有時ç¶è·äººå“¡ä¹Ÿæœƒè¢«å ±å‘Šæ·¹æ²’, å³ä½¿ä¸€å€‹é©…動程åºå¹¾ä¹Žå®Œç¾Žåœ°å·¥ä½œã€‚爲了ä¸è¢«å®Œå…¨çºä½ï¼Œç¨‹å¼è¨è¨ˆå¸«å¯èƒ½åˆ¥ç„¡é¸æ“‡ï¼Œåªèƒ½ å°å•é¡Œå ±å‘Šé€²è¡Œå„ªå…ˆç´šæŽ’åºè€Œæ‹’絕其ä¸çš„ä¸€äº›å ±å‘Šã€‚ ä¸éŽé€™äº›éƒ½ä¸ç”¨å¤ªéŽæ“”心,很多驅動都有ç©æ¥µçš„ç¶è·è€…,他們å°å„˜å¯èƒ½å¤šçš„解決å•é¡Œ 相當感興趣。 çµæŸèªž ======= 與其他å…è²»/自由&é–‹æºè»Ÿé«”(Free/Libre & Open Source Software,FLOSS)相比, å‘ Linux å…§æ ¸é–‹ç™¼è€…å ±å‘Šå•é¡Œæ˜¯å¾ˆé›£çš„:這個文檔的長度和複雜性以åŠå—裡行間的內 涵都說明了這一點。但目å‰å°±æ˜¯é€™æ¨£äº†ã€‚這篇文å—的主è¦ä½œè€…希望通éŽè¨˜éŒ„ç¾ç‹€ä¾†çˆ² 以後改善這種狀æ³æ‰“下一些基礎。