[{"data":1,"prerenderedAt":489},["ShallowReactive",2],{"\u002Farticles\u002Fubuntu-nautilus-icon-theme-svg-crash-fix":3},{"id":4,"title":5,"body":6,"description":473,"draft":474,"extension":475,"meta":476,"navigation":477,"path":478,"publishedAt":479,"seo":480,"stem":481,"tags":482,"updatedAt":487,"__hash__":488},"articles\u002Farticles\u002Fubuntu-nautilus-icon-theme-svg-crash-fix.md","Ubuntu 下第三方图标主题导致 Nautilus 无法打开目录的修复",{"type":7,"value":8,"toc":466},"minimark",[9,16,24,29,36,62,69,73,76,95,98,139,142,145,185,196,200,214,245,248,259,263,266,292,295,315,322,375,379,423,429,440,455,462],[10,11,12],"blockquote",{},[13,14,15],"p",{},"适用场景：启用第三方图标主题后，Nautilus 打开含压缩包、安装包等特定文件的目录时立即退出；切回系统图标主题后恢复正常。",[13,17,18,19,23],{},"这通常不是目录或文件损坏，而是旧版 SVG 图标、错误的 ",[20,21,22],"code",{},"index.theme","，或它们与新版 GTK、Cairo 的兼容性问题。",[25,26,28],"h2",{"id":27},"_1-排除文件损坏","1. 排除文件损坏",[13,30,31,32,35],{},"以 ",[20,33,34],{},".tar.xz"," 为例：",[37,38,43],"pre",{"className":39,"code":40,"language":41,"meta":42,"style":42},"language-bash shiki shiki-themes github-light github-dark","xz -t \u002Fpath\u002Fto\u002Farchive.tar.xz\n","bash","",[20,44,45],{"__ignoreMap":42},[46,47,50,54,58],"span",{"class":48,"line":49},"line",1,[46,51,53],{"class":52},"sScJk","xz",[46,55,57],{"class":56},"sj4cs"," -t",[46,59,61],{"class":60},"sZZnC"," \u002Fpath\u002Fto\u002Farchive.tar.xz\n",[13,63,64,65,68],{},"命令无输出且退出状态为 ",[20,66,67],{},"0","，说明压缩包结构正常。",[25,70,72],{"id":71},"_2-确认问题来自图标主题","2. 确认问题来自图标主题",[13,74,75],{},"查看当前主题：",[37,77,79],{"className":39,"code":78,"language":41,"meta":42,"style":42},"gsettings get org.gnome.desktop.interface icon-theme\n",[20,80,81],{"__ignoreMap":42},[46,82,83,86,89,92],{"class":48,"line":49},[46,84,85],{"class":52},"gsettings",[46,87,88],{"class":60}," get",[46,90,91],{"class":60}," org.gnome.desktop.interface",[46,93,94],{"class":60}," icon-theme\n",[13,96,97],{},"临时切回 Ubuntu 默认主题后重新打开目录：",[37,99,101],{"className":39,"code":100,"language":41,"meta":42,"style":42},"gsettings set org.gnome.desktop.interface icon-theme 'Yaru'\nnautilus -q\ngio open \u002Fpath\u002Fto\u002Fproblem-directory\n",[20,102,103,118,127],{"__ignoreMap":42},[46,104,105,107,110,112,115],{"class":48,"line":49},[46,106,85],{"class":52},[46,108,109],{"class":60}," set",[46,111,91],{"class":60},[46,113,114],{"class":60}," icon-theme",[46,116,117],{"class":60}," 'Yaru'\n",[46,119,121,124],{"class":48,"line":120},2,[46,122,123],{"class":52},"nautilus",[46,125,126],{"class":56}," -q\n",[46,128,130,133,136],{"class":48,"line":129},3,[46,131,132],{"class":52},"gio",[46,134,135],{"class":60}," open",[46,137,138],{"class":60}," \u002Fpath\u002Fto\u002Fproblem-directory\n",[13,140,141],{},"如果目录可以正常打开，问题基本位于第三方图标主题。",[13,143,144],{},"还可以检查日志中的典型错误：",[37,146,148],{"className":39,"code":147,"language":41,"meta":42,"style":42},"journalctl --user --since '10 minutes ago' --no-pager \\\n  | grep -Ei 'nautilus|cairo|icon|theme directory'\n",[20,149,150,170],{"__ignoreMap":42},[46,151,152,155,158,161,164,167],{"class":48,"line":49},[46,153,154],{"class":52},"journalctl",[46,156,157],{"class":56}," --user",[46,159,160],{"class":56}," --since",[46,162,163],{"class":60}," '10 minutes ago'",[46,165,166],{"class":56}," --no-pager",[46,168,169],{"class":56}," \\\n",[46,171,172,176,179,182],{"class":48,"line":120},[46,173,175],{"class":174},"szBVR","  |",[46,177,178],{"class":52}," grep",[46,180,181],{"class":56}," -Ei",[46,183,184],{"class":60}," 'nautilus|cairo|icon|theme directory'\n",[13,186,187,188,191,192,195],{},"常见信息包括 ",[20,189,190],{},"cairo_surface_set_device_scale"," 断言失败，或主题目录缺少 ",[20,193,194],{},"Size"," 字段。",[25,197,199],{"id":198},"_3-检查主题索引","3. 检查主题索引",[13,201,202,203,206,207,210,211,213],{},"主题通常位于 ",[20,204,205],{},"~\u002F.icons\u002F主题名\u002F"," 或 ",[20,208,209],{},"~\u002F.local\u002Fshare\u002Ficons\u002F主题名\u002F","。打开其中的 ",[20,212,22],{},"，确认：",[215,216,217,224,231,242],"ul",{},[218,219,220,223],"li",{},[20,221,222],{},"Directories="," 中的每个目录真实存在；",[218,225,226,227,230],{},"每个目录都有对应的 ",[20,228,229],{},"[目录名]"," 段；",[218,232,233,234,237,238,241],{},"使用 ",[20,235,236],{},"Size=24","，不要写成区分大小写后无法识别的 ",[20,239,240],{},"size=24","；",[218,243,244],{},"删除重复项和不存在的目录声明。",[13,246,247],{},"修改后重启 Nautilus：",[37,249,251],{"className":39,"code":250,"language":41,"meta":42,"style":42},"nautilus -q\n",[20,252,253],{"__ignoreMap":42},[46,254,255,257],{"class":48,"line":49},[46,256,123],{"class":52},[46,258,126],{"class":56},[25,260,262],{"id":261},"_4-修复不兼容的-svg-图标","4. 修复不兼容的 SVG 图标",[13,264,265],{},"先根据文件 MIME 类型找到候选图标名：",[37,267,269],{"className":39,"code":268,"language":41,"meta":42,"style":42},"gio info \u002Fpath\u002Fto\u002Fproblem-file | grep -E 'content-type|standard::icon'\n",[20,270,271],{"__ignoreMap":42},[46,272,273,275,278,281,284,286,289],{"class":48,"line":49},[46,274,132],{"class":52},[46,276,277],{"class":60}," info",[46,279,280],{"class":60}," \u002Fpath\u002Fto\u002Fproblem-file",[46,282,283],{"class":174}," |",[46,285,178],{"class":52},[46,287,288],{"class":56}," -E",[46,290,291],{"class":60}," 'content-type|standard::icon'\n",[13,293,294],{},"如果某个旧 SVG 触发崩溃，最稳妥的办法是暂时移走它，让 GTK 使用继承主题中的安全图标：",[37,296,298],{"className":39,"code":297,"language":41,"meta":42,"style":42},"mv ~\u002F.icons\u002F主题名\u002F128x128\u002Fmimetypes\u002F问题图标.svg \\\n   ~\u002F.icons\u002F主题名\u002F128x128\u002Fmimetypes\u002F问题图标.svg.disabled\n",[20,299,300,310],{"__ignoreMap":42},[46,301,302,305,308],{"class":48,"line":49},[46,303,304],{"class":52},"mv",[46,306,307],{"class":60}," ~\u002F.icons\u002F主题名\u002F128x128\u002Fmimetypes\u002F问题图标.svg",[46,309,169],{"class":56},[46,311,312],{"class":48,"line":120},[46,313,314],{"class":60},"   ~\u002F.icons\u002F主题名\u002F128x128\u002Fmimetypes\u002F问题图标.svg.disabled\n",[13,316,317,318,321],{},"若希望保留原外观，可安装 ",[20,319,320],{},"librsvg2-bin","，将 SVG 转成 PNG：",[37,323,325],{"className":39,"code":324,"language":41,"meta":42,"style":42},"sudo apt install librsvg2-bin\nrsvg-convert -w 128 -h 128 问题图标.svg -o 问题图标.png\nmv 问题图标.svg 问题图标.svg.disabled\n",[20,326,327,341,366],{"__ignoreMap":42},[46,328,329,332,335,338],{"class":48,"line":49},[46,330,331],{"class":52},"sudo",[46,333,334],{"class":60}," apt",[46,336,337],{"class":60}," install",[46,339,340],{"class":60}," librsvg2-bin\n",[46,342,343,346,349,352,355,357,360,363],{"class":48,"line":120},[46,344,345],{"class":52},"rsvg-convert",[46,347,348],{"class":56}," -w",[46,350,351],{"class":56}," 128",[46,353,354],{"class":56}," -h",[46,356,351],{"class":56},[46,358,359],{"class":60}," 问题图标.svg",[46,361,362],{"class":56}," -o",[46,364,365],{"class":60}," 问题图标.png\n",[46,367,368,370,372],{"class":48,"line":129},[46,369,304],{"class":52},[46,371,359],{"class":60},[46,373,374],{"class":60}," 问题图标.svg.disabled\n",[25,376,378],{"id":377},"_5-重新启用并验证","5. 重新启用并验证",[37,380,382],{"className":39,"code":381,"language":41,"meta":42,"style":42},"gsettings set org.gnome.desktop.interface icon-theme '主题目录名'\nnautilus -q\ngio open \u002Fpath\u002Fto\u002Fproblem-directory\npgrep -a nautilus\n",[20,383,384,397,403,411],{"__ignoreMap":42},[46,385,386,388,390,392,394],{"class":48,"line":49},[46,387,85],{"class":52},[46,389,109],{"class":60},[46,391,91],{"class":60},[46,393,114],{"class":60},[46,395,396],{"class":60}," '主题目录名'\n",[46,398,399,401],{"class":48,"line":120},[46,400,123],{"class":52},[46,402,126],{"class":56},[46,404,405,407,409],{"class":48,"line":129},[46,406,132],{"class":52},[46,408,135],{"class":60},[46,410,138],{"class":60},[46,412,414,417,420],{"class":48,"line":413},4,[46,415,416],{"class":52},"pgrep",[46,418,419],{"class":56}," -a",[46,421,422],{"class":60}," nautilus\n",[13,424,425,426,428],{},"目录能打开、",[20,427,416],{}," 能看到 Nautilus，且日志中没有新的 Cairo 断言，即表示修复成功。",[13,430,431,432,435,436,439],{},"确认稳定后，可将测试主题、",[20,433,434],{},".bak","、",[20,437,438],{},".disabled"," 等文件移入回收站：",[37,441,443],{"className":39,"code":442,"language":41,"meta":42,"style":42},"gio trash \u002Fpath\u002Fto\u002Fconfirmed-test-copy\n",[20,444,445],{"__ignoreMap":42},[46,446,447,449,452],{"class":48,"line":49},[46,448,132],{"class":52},[46,450,451],{"class":60}," trash",[46,453,454],{"class":60}," \u002Fpath\u002Fto\u002Fconfirmed-test-copy\n",[13,456,457,458,461],{},"不要批量删除整个 ",[20,459,460],{},"~\u002F.icons","，也不要在未验证前删除原始图标；保留系统主题作为随时可用的回退方案。",[463,464,465],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":42,"searchDepth":120,"depth":120,"links":467},[468,469,470,471,472],{"id":27,"depth":120,"text":28},{"id":71,"depth":120,"text":72},{"id":198,"depth":120,"text":199},{"id":261,"depth":120,"text":262},{"id":377,"depth":120,"text":378},"排查并修复旧版 SVG 图标或错误主题索引导致 Nautilus 打开特定目录时崩溃的问题。",false,"md",{},true,"\u002Farticles\u002Fubuntu-nautilus-icon-theme-svg-crash-fix","2026-10-02",{"title":5,"description":473},"articles\u002Fubuntu-nautilus-icon-theme-svg-crash-fix",[483,484,485,486],"Ubuntu","Nautilus","图标主题","GTK",null,"jhxxIj1XQ1GzWaWdjhwLsaHqX7yooSDyCiqzh4MEokY",1791276707642]