<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Macos on inetshell</title><link>https://inet.sh/es/tags/macos/</link><description>Recent content in Macos on inetshell</description><generator>Hugo</generator><language>es</language><lastBuildDate>Sat, 26 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://inet.sh/es/tags/macos/index.xml" rel="self" type="application/rss+xml"/><item><title>Nextcloud: 'will not be accessible due to incompatible encoding' (archivos invisibles por nombres NFD o Latin-1)</title><link>https://inet.sh/es/posts/nextcloud/incompatible-encoding-nfc-convmv/</link><pubDate>Sat, 26 Sep 2026 00:00:00 +0000</pubDate><guid>https://inet.sh/es/posts/nextcloud/incompatible-encoding-nfc-convmv/</guid><description>occ files:scan avisa &amp;#39;will not be accessible due to incompatible encoding&amp;#39; y los archivos con tildes o eñes no aparecen en Nextcloud ni en ownCloud. Son nombres en Unicode NFD (macOS, SMB) o en ISO-8859-1 (Windows viejo) copiados directo al data directory. Arreglo con convmv --nfc o -f iso-8859-1, files:scan, y cómo evitar que vuelva con rsync --iconv y Samba.</description><content:encoded><![CDATA[<h2 id="en-corto">En corto</h2>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl">apt install convmv                                   <span class="c1"># dnf install convmv</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 1. Ver qué se renombraría (sin --notest, convmv solo simula)</span>
</span></span><span class="line"><span class="cl">convmv -f utf-8 -t utf-8 -r --nfc /var/www/nextcloud/data/alice/files
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 2. Aplicar</span>
</span></span><span class="line"><span class="cl">convmv -f utf-8 -t utf-8 -r --notest --nfc /var/www/nextcloud/data/alice/files
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># 3. Que Nextcloud vuelva a indexar</span>
</span></span><span class="line"><span class="cl">sudo -u www-data php occ files:scan --all
</span></span></code></pre></td></tr></table>
</div>
</div><p>Si los nombres vienen de un Windows o un Samba viejos y ni siquiera son UTF-8 (<code>convmv</code> los marca como <em>not UTF-8</em>): <code>convmv -f iso-8859-1 -t utf-8 -r --notest &lt;ruta&gt;</code>.</p>
<p>En Docker, el <code>occ</code> va dentro del contenedor: <code>docker exec -u www-data nextcloud php occ files:scan --all</code> (en la imagen de linuxserver.io, <code>sudo -u abc php /config/www/nextcloud/console.php files:scan --all</code>).</p>
<h2 id="el-error">El error</h2>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-text" data-lang="text"><span class="line"><span class="cl">Entry &#34;Ñandú y Ñoño.pdf&#34; will not be accessible due to incompatible encoding
</span></span></code></pre></td></tr></table>
</div>
</div><p>Lo imprime <code>occ files:scan</code>. Los archivos están en disco, se ven con <code>ls</code>, pero no salen en la web, ni sincronizan, ni cuentan para el espacio. Aparece casi siempre después de copiar datos <strong>directamente al data directory</strong> (migraciones, <code>rsync</code> desde un Mac, un recurso SMB montado como <em>external storage</em>) en vez de subirlos por el cliente.</p>
<h2 id="por-qué-pasa">Por qué pasa</h2>
<p>Unicode permite escribir &ldquo;ñ&rdquo; de dos formas: precompuesta (<strong>NFC</strong>, un solo code point) o descompuesta (<strong>NFD</strong>, una &ldquo;n&rdquo; más una tilde combinante). Se ven idénticas y son bytes distintos. macOS históricamente guarda los nombres en NFD (HFS+ los forzaba; APFS y el Finder siguen produciéndolos al copiar por SMB o <code>rsync</code>); Linux y Nextcloud trabajan en NFC. Nextcloud normaliza todos los nombres a NFC y descarta los que no puede casar con lo que hay en disco, de ahí el aviso.</p>
<p>El otro caso es más viejo: nombres en <strong>ISO-8859-1</strong> (Latin-1) heredados de Windows o de un Samba sin <code>unix charset = UTF-8</code>. No son UTF-8 válido y Nextcloud tampoco los acepta.</p>
<h2 id="arreglo-con-calma">Arreglo, con calma</h2>
<ol>
<li><strong>Modo mantenimiento</strong> para que ningún cliente sincronice a medias: <code>occ maintenance:mode --on</code>.</li>
<li><strong>Simula</strong>: <code>convmv</code> sin <code>--notest</code> lista cada renombrado que haría. Si aparecen archivos <em>not UTF-8</em>, esos van con <code>-f iso-8859-1</code>.</li>
<li><strong>Aplica</strong> con <code>--notest</code>. Si ya existe el gemelo en NFC (el mismo nombre subido dos veces), <code>convmv</code> lo salta y avisa; <code>--replace</code> sobrescribe, así que decide antes cuál es el bueno.</li>
<li><strong><code>occ files:scan --all</code></strong> (o <code>--path=/alice/files/Fotos</code> para un usuario o carpeta). El aviso desaparece y los archivos entran al índice.</li>
<li><code>occ maintenance:mode --off</code>.</li>
</ol>
<p><code>convmv</code> renombra con <code>rename()</code>: conserva dueño, permisos y fechas, y es instantáneo aunque sean cientos de miles de archivos.</p>
<h2 id="que-no-vuelva">Que no vuelva</h2>
<ul>
<li><strong>Desde macOS, sube con el cliente de Nextcloud</strong>, que normaliza a NFC. Si copias con <code>rsync</code>, <code>--iconv=utf-8-mac,utf-8</code> convierte los nombres en vuelo.</li>
<li><strong>Samba</strong> como puente: <code>vfs objects = fruit</code> con <code>fruit:encoding = native</code> hace la conversión para clientes Mac; y <code>unix charset = UTF-8</code> siempre.</li>
<li><strong>External storage SMB/local</strong>: arregla los nombres en el origen; Nextcloud no renombra lo que no puede indexar.</li>
</ul>
<h2 id="trampas">Trampas</h2>
<ul>
<li><strong><code>--notest</code> es lo que aplica.</strong> Al revés de lo que uno espera: por defecto <code>convmv</code> es un simulacro.</li>
<li><strong>Renombrar cambia el <code>fileid</code>.</strong> Para Nextcloud, el archivo NFD desaparece y nace uno NFC: los enlaces compartidos, comentarios y versiones de esos archivos se pierden. Avisa a los usuarios afectados antes.</li>
<li><strong>ownCloud</strong> tiene el mismo comportamiento y el mismo <code>occ</code>.</li>
<li><strong>Bases MySQL con <code>utf8</code> de 3 bytes</strong> dan un error parecido pero distinto (emojis y CJK): ahí es <code>occ db:convert-mysql-charset</code>, no <code>convmv</code>.</li>
</ul>
<p>Ver también: <a href="/es/posts/seafile/recuperar-espacio-seaf-gc/">Seafile: recuperar espacio con seaf-gc</a> y <a href="/es/posts/linux/rsync-reanudar-copias-grandes/">rsync: reanudar copias grandes</a> (el <code>--iconv</code>). Referencia: <a href="https://help.nextcloud.com/t/will-not-be-accessible-due-to-incompatible-encoding/86612">hilo en help.nextcloud.com</a>.</p>
]]></content:encoded></item></channel></rss>