Para solucionar ambos problemas de forma óptima, necesitarás acceso (de administrador) a la configuración de tu servidor SMB; aunque existe una solución para el problema 2 si no lo tienes.
Número 1
Aunque files.app parece realizar la mayor parte de su tráfico a través del SMB3
algunas actividades iniciales de conexión sólo parecen funcionar si el servidor acepta SMB2
peticiones. Para ello es necesario ajustar la configuración del servidor (véase más adelante).
Número 2
Solución 1: eliminar la conexión "servidor" antigua/que no funciona
Eliminar una conexión a un servidor anterior que proporciona un recurso compartido con el mismo nombre (files.app -> menú principal (...) -> conectar con el servidor -> (i) -> eliminar) resuelve el problema.
Esta puede ser una solución en caso de que no tengas acceso a la configuración del servidor, aunque sólo podrás acceder a uno de los servidores/compartimentos "en conflicto" a la vez, lo que podría ser frustrante.
Solución 2: garantizar un nombre de recurso compartido SMB único en todos los servidores
Una mejor solución es asegurarse de que el nombre del recurso compartido SMB es único en todas las conexiones almacenadas/recordadas en su files.app. En mi caso, la configuración estándar de mis servidores era llamarles algo como smbshare
Al intentar acceder a más de un servidor con el mismo nombre de recurso compartido, se produce el problema, que parece un error en files.app, en mi opinión (los nombres de recurso compartido deberían estar calificados por el nombre del servidor).
Cómo ajustar la configuración de un servidor SMB para resolver ambos problemas
El procedimiento y el ejemplo siguientes están basados en Ubuntu, pero deberían funcionar de forma similar en otros derivados de *NIX/*BSD (y NAS) que utilicen Samba como software de servidor SMB, aunque posiblemente con diferentes rutas/nombres de archivo, etc:
- Inicie sesión en su servidor SMB y ejecute
sudo -i
para acceder a root
privilegios.
- Editar
/etc/samba/smb.conf
- Para número 1 Querrá asegurarse de que
server min protocol
(normalmente se encuentra en el [global]
) se establece en SMB2
.
- Para número 2 localice el nombre de la acción (colocado entre paréntesis; en mi ejemplo
[smbshare]
) y cambiarlo por algo único. Por ejemplo, incluyendo el nombre del host, que puede ser stubbed como %h
si quiere mantener sus archivos de configuración estandarizados.
systemctl restart smbd
Un ejemplo de smb.conf que funciona para la aplicación iOS files.app
He aquí un ejemplo smb.conf
que funciona bien con iOS files.app y se esfuerza por ser razonablemente seguro (SMB es un vector de ataque bien conocido !). Los comentarios, sobre todo si mejoran la seguridad, son bienvenidos.
[global]
server string = %h
server role = standalone server
interfaces = lo eth0
bind interfaces only = yes
disable netbios = yes
smb ports = 445
log file = /var/log/samba/smb.log
# log level = 3
max log size = 1000
map to guest = bad user
smb encrypt = required
server min protocol = SMB2
client min protocol = SMB3
[%h]
valid users = MY_SMB_USER
path = /home/MY_SMB_USER/SHARE
available = yes
browseable = yes
read only = no
force create mode = 0660
force directory mode = 2770
[%h]
utiliza el nombre del servidor como nombre del recurso compartido, lo que resuelve el problema 2 por sí solo. Sólo tiene que ser algo único para solucionar el error de file.app.
log level = 3
(o superior) es útil para aumentar la verbosidad de los registros para solucionar problemas.
- Tendrá que ajustar
interfaces =
y MY_SMB_USER
para adaptarse a sus circunstancias ( ip link show
es tu amigo para descubrir los nombres de tus interfaces). interfaces
Las restricciones pueden omitirse, pero definitivamente no se recomienda en una máquina que se enfrenta directamente a Internet.
Nota sobre el sistema operativo del servidor
Aunque los ejemplos anteriores se refieren a un servidor SMB de Ubuntu, el mismo problema parece existir con los servidores de Windows (por lo que los errores parecen estar en la aplicación files.app de iOS), como se evidencia en la pregunta de los foros de Apple enlazada en la pregunta.