FAQ
Utilisateur
Comment réinitialiser le mot de passe administrateur ?
Le mot de passe administrateur peut être réinitialisé en exécutant la commande reset-admin-password sur le serveur immich.
Comment voir la liste de tous les utilisateurs sur Immich ?
Vous pouvez voir la liste de tous les utilisateurs en exécutant la commande list-users sur le serveur Immich.
Application mobile
Quelle est la différence entre les icônes de nuage sur l'application mobile ?
Icône | Description |
---|---|
L'élément n'est disponible que sur le serveur et a été téléchargé depuis un autre appareil (par exemple, le client web) ou a été supprimé de cet appareil après téléchargement | |
L'élément n'est disponible que localement et n'a pas encore été sauvegardé | |
L'élément a été téléchargé depuis cet appareil et est maintenant sauvegardé sur le serveur ; le fichier original est toujours sur l'appareil |
Je ne peux pas me connecter à l'application après une mise à jour. Que puis-je faire ?
Vérifiez que l'application mobile et le serveur fonctionnent tous deux avec la même version (principale et mineure).
Les mises à jour sur les stores d'applications peuvent parfois prendre plus de temps car les magasins (Google Play Store et Apple App Store) doivent approuver la mise à jour en premier, ce qui peut prendre un certain temps.
Si vous ne pouvez toujours pas vous connecter à l'application, essayez les étapes suivantes :
- Vérifiez les journaux mobiles
- Assurez-vous que les identifiants de connexion sont corrects en vous connectant sur l'application web
Pourquoi la sauvegarde au premier plan s'arrête-t-elle lorsque je quitte l'application ? Ne devrait-elle pas transférer la tâche en arrière-plan ?
La sauvegarde au premier plan et la sauvegarde en arrière-plan sont deux mécanismes distincts. Ils ne communiquent ni n'interagissent entre eux.
La sauvegarde au premier plan est contrôlée par l'action de l'utilisateur, tandis que la sauvegarde en arrière-plan est contrôlée par le système d'exploitation de votre appareil. Lorsque l'application est mise à l'arrière-plan, l'invocation des tâches d'arrière-plan est déléguée au planificateur du système d'exploitation de l'appareil, qui décide quand et combien de temps la tâche d'arrière-plan peut s'exécuter.
Les comportements varient en fonction du fabricant de l'appareil et du système d'exploitation, mais la plupart sont liés aux politiques d'économie de batterie.
Pourquoi la sauvegarde en arrière-plan ne fonctionne-t-elle pas sur iOS ?
Sur iOS (iPhone et iPad), le système d'exploitation détermine si une application particulière peut invoquer des tâches d'arrière-plan en fonction de plusieurs facteurs, dont la plupart ne sont pas sous le contrôle de l'application Immich. Pour augmenter les chances que la tâche de sauvegarde en arrière-plan s'exécute, suivez les étapes ci-dessous :
- Activez l'actualisation en arrière-plan pour Immich dans les paramètres iOS à
Réglages > Général > Actualisation en arrière-plan
. - Désactivez Le mode basse consommation lorsque ce n'est pas nécessaire, car cela peut empêcher les applications de fonctionner en arrière-plan.
- Désactivez l'actualisation en arrière-plan pour les applications qui n'ont pas besoin de tâches d'arrière-plan. Cela réduira la concurrence pour l'invocation des tâches en arrière-plan pour Immich.
- Utilisez l'application Immich plus souvent.
Pourquoi certaines fonctionnalités de l'application mobile ne fonctionnent-elles pas avec un certificat auto-signé, une authentification de base, des en-têtes personnalisés ou le TLS mutuel ?
Ces fonctionnalités réseau sont expérimentales. Elles ne fonctionnent souvent pas avec la lecture de vidéos, le téléchargement ou la restauration d'éléments, et d'autres fonctionnalités. Bon nombre de ces limitations sont suivies dans #15230. Au lieu de ces fonctionnalités expérimentales, nous recommandons d'utiliser la fonction de changement d'URL, un VPN ou un certificat SSL de confiance gratuit pour votre domaine.
Nous ne développons pas activement ces fonctionnalités et ne pouvons pas fournir de support, mais nous accueillons volontiers les contributions pour les améliorer. Veuillez discuter des PR de grande envergure avec notre équipe de développement pour vous assurer que votre temps n'est pas gaspillé.
Pourquoi l'application mobile n'est-elle pas encore mise à jour ?
Les magasins d'applications peuvent prendre quelques jours pour approuver de nouvelles versions de l'application. Si vous êtes impatient, les APK d'Android peuvent être téléchargés à partir des versions disponibles sur GitHub.
Fichiers
Immich modifie-t-il les fichiers ?
Non, Immich ne modifie pas les fichiers originaux.
Tous les métadonnées modifiés sont enregistrés dans des fichiers d'accompagnement .xmp
et dans la base de données.
Cependant, Immich supprimera les fichiers originaux qui ont été mis à la corbeille lorsque celle-ci est vidée depuis l'interface d'Immich.
Pourquoi les noms de mes fichiers apparaissent-ils comme une chaîne aléatoire dans le gestionnaire de fichiers ?
Lorsque le modèle de stockage est désactivé (par défaut), Immich enregistre les noms de fichiers sous forme de chaîne aléatoire (connue sous le nom UUID aléatoires) pour éviter les doublons. Pour récupérer les noms de fichiers originaux, vous devez activer le modèle de stockage puis exécuter le travail de migration du modèle de stockage. Il est recommandé de lire sur le Modèle de stockage avant l'activation.
Puis-je ajouter ma bibliothèque de photos existante ?
Oui, avec une Bibliothèque externe.
Que se passe-t-il pour les fichiers existants après avoir choisi un nouveau Modèle de stockage ?
Les changements de modèle ne s'appliqueront qu'aux nouveaux éléments. Pour appliquer rétroactivement le modèle aux éléments téléchargés précédemment, exécutez le travail de migration du stockage, disponible sur la page des Travaux.
Pourquoi seules les photos et non les vidéos sont-elles télécharg ées sur Immich ?
Cela se produit souvent lors de l'utilisation d'un proxy inverse devant Immich. Assurez-vous de configurer votre proxy inverse pour autoriser les grandes requêtes. Vérifiez également l'espace disque de votre proxy inverse. Dans certains cas, les proxys mettent en cache les requêtes sur le disque avant de les transmettre, et si l'espace disque est insuffisant, la requête échoue.
Si vous utilisez Cloudflare Tunnel, sachez qu'ils imposent une taille maximale de fichier de 100 Mo qui ne peut pas être modifiée. Parfois, des fichiers plus grands que cette taille peuvent passer, potentiellement jusqu'à 1 Go. Cependant, la limite officielle est de 100 Mo. Si vous rencontrez des problèmes, nous recommandons de passer à un autre déploiement réseau.
Pourquoi certaines photos sont-elles stockées dans le système de fichiers avec une mauvaise date ?
Il existe plusieurs scénarios pouvant conduire à cette situation. La solution consiste à relancer le travail de migration du stockage. Le travail est automatiquement exécuté une seule fois par élément après le téléchargement. Si l'extraction des métadonnées a échoué initialement, si les travaux ont été effacés/annulés, etc., le travail peut ne pas avoir été exécuté automatiquement la première fois.
Comment masquer des photos de la timeline ?
Vous pouvez les archiver.
Comment sauvegarder des données depuis Immich ?
Voir Sauvegarde et restauration.
Immich prend-il en charge la lecture des métadonnées de tag existantes des visages ?
Oui, il crée de nouveaux visages et personnes à partir des métadonnées des éléments importés. Pour plus de détails, voir la demande de fonctionnalité #4348 et la PR #6455.
Immich prend-il en charge le filtrage des images NSFW ?
Non, actuellement ce n'est pas le cas. Il existe une demande de fonctionnalité ouverte sur Github.
Pourquoi y a-t-il tant de travaux de génération de vignettes ?
Il y a trois travaux de vignette pour chaque élément :
- Flou (thumbhash)
- Prévisualisation (Webp)
- Vignette (Jpeg)
De plus, il existe des travaux supplémentaires pour les vignettes de personne (visage).
Pourquoi les fichiers de WhatsApp n'apparaissent-ils pas avec la bonne date ?
Les fichiers envoyés sur WhatsApp sont enregistrés sans métadonnées sur le fichier. Par conséquent, Immich n'a aucun moyen de connaître la date d'origine du fichier lorsque les fichiers sont téléchargés depuis WhatsApp, et non l'ordre d'arrivée sur l'appareil. Voir #9116.
Que se passe-t-il si un élément existe dans plusieurs comptes ?
Il n'y a aucune exigence pour que les éléments soient uniques entre les utilisateurs. Si plusieurs utilisateurs téléchargent la même image, elle est traitée comme un élément distinct, et les travaux s'exécutent et les vignettes sont générées en conséquence.
Pourquoi les vidéos HDR apparaissent-elles pâles dans le lecteur Immich, mais ont une apparence normale après téléchargement ?
Immich utilise un lecteur avec des problèmes connus d'affichage des couleurs HDR. Nous expérimentons un lecteur différent offrant de meilleurs profils de couleur pour le contenu HDR pour de futures améliorations.
Pourquoi Immich transcode-t-il mes vidéos en une qualité inférieure ?
Immich conserve toujours vos fichiers originaux. En parallèle, il génère une version transcodée pour des raisons de compatibilité et de performance.
Comment supprimer des vidéos transcodées sans supprimer l'original ?
La version transcodée d'un élément peut être supprimée en définissant une politique de transcodage qui la rend inutile, puis en exécutant un travail de transcodage pour cet élément. Cela peut être fait au cas par cas en lançant un travail de transcodage pour un seul élément avec le bouton Actualiser les vidéos encodées dans les options du visualiseur d'élément, ou pour tous les éléments en exécutant des travaux de transcodage pour tous les éléments depuis la page d'administration.
Pour mettre à jour la politique de transcodage, allez dans Administration > Paramètres de transcodage vidéo > Politique de transcodage et sélectionnez une politique dans le menu déroulant. Cette politique déterminera si un transcodage existant sera supprimé ou écrasé lors du travail de transcodage. Si une vidéo doit être transcodée selon cette politique, un transcodage existant est écrasé. Sinon, il est supprimé.
Par exemple, si vous avez des transcodages existants avec la politique « Vidéos de résolution supérieure à la normale ou pas dans le format souhaité » et que vous passez à une politique plus stricte : « Vidéos pas dans le format souhaité ». Si un élément a été transcodé seulement en raison de sa résolution, l'exécution d'un travail de transcodage pour cet élément supprimera le transcodage existant. Cela est dû au fait que la résolution ne fait plus partie de la politique de transcodage et que le transcodage est inutile. De même, si vous définissez la politique sur « Ne pas transcoder de vidéos » et exécutez des travaux de transcodage pour tous les éléments, cela supprimera tous les transcodages existants, car ils sont inutiles.
Est-il possible de compresser des images lors de la sauvegarde ?
Non. Notre principe de conception est que les éléments originaux doivent toujours rester intacts.
Comment monter un volume CIFS/Samba dans Docker?
Si vous ne pouvez pas ou préférez ne pas monter Samba sur l’hôte (comme dans un environnement Windows), vous pouvez monter le volume directement dans Docker.
Voici un exemple dans le fichier docker-compose.yml
.
Modifiez votre nom d'utilisateur, mot de passe, IP locale et nom de partage, et notez ci-dessous où la ligne - originals:/usr/src/app/originals
correspond à la section où le volume originals
a été créé. Vous pouvez l'appeler comme vous le souhaitez et le mapper au container Docker selon vos préférences.
Par exemple, vous pourriez changer originals:
en Photos:
, et remplacer - originals:/usr/src/app/originals
par Photos:/usr/src/app/photos
.
...
services:
immich-server:
...
volumes:
# Ne modifiez pas la ligne suivante. Si vous souhaitez changer l'emplacement de stockage des médias sur votre système, modifiez la valeur de UPLOAD_LOCATION dans le fichier .env
- ${UPLOAD_LOCATION}:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
+ - originals:/usr/src/app/originals
...
volumes:
model-cache:
+ originals:
+ driver_opts:
+ type: cifs
+ o: 'iocharset=utf8,username=USERNAMEHERE,password=PASSWORDHERE,rw' # changer pour `ro` si un accès en lecture seule est souhaité
+ device: '//localipaddress/sharename'
Albums
Puis-je conserver ma structure d'album existante lors de l'importation d'éléments dans Immich?
Oui, en utilisant le CLI Immich avec le drapeau --album
.
Existe-t-il un moyen de réorganiser les photos dans un album?
Non, pas encore. Pour les mises à jour sur cette fonctionnalité prévue, suivez la discussion GitHub.
Bibliothèque externe
Puis-je ajouter une bibliothèque externe tout en conservant la structure d'album existante?
Nous n'avons pas implémenté de mécanisme officiel pour créer des albums à partir de bibliothèques externes, mais il existe certains contournements de la communauté pour vous aider à y parvenir.
Que se passe-t-il avec les doublons dans les bibliothèques externes?
La vérification des doublons n'existe que pour les bibliothèques d'uploads, en utilisant le hash du fichier. De plus, la vérification des doublons n'est pas globale, mais par bibliothèque. Par conséquent, une situation où le même fichier apparaît deux fois sur la timeline est possible, surtout pour les bibliothèques externes.
Pourquoi mes modifications de fichiers ne sont-elles pas enregistrées dans les bibliothèques externes en lecture seule?
Les images dans les bibliothèques externes en lecture-écriture (par défaut) peuvent être modifiées normalement.
Dans les bibliothèques en lecture seule (:ro
dans le docker-compose.yml
), Immich ne peut pas créer les fichiers sidecar .xmp
pour stocker les métadonnées des fichiers modifiés.
Pour cette raison, les métadonnées (horodatage, emplacement, description, note étoilée, etc.) ne peuvent pas être modifiées pour les fichiers dans les bibliothèques externes en lecture seule.
Comment sont gérées les suppressions de fichiers dans les bibliothèques externes?
Immich tentera de supprimer les fichiers originaux qui ont été placés dans la corbeille lorsqu'elle est vidée.
Dans les bibliothèques externes en lecture-écriture (par défaut), Immich supprimera le fichier original.
Dans les bibliothèques en lecture seule (:ro
dans le docker-compose.yml
), les fichiers peuvent toujours être placés dans la corbeille par l'interface utilisateur.
Cependant, lorsque la corbeille est vidée, les fichiers réapparaîtront dans la timeline principale car Immich est incapable de supprimer le fichier original.
Apprentissage automatique
Comment fonctionne la recherche intelligente?
Immich utilise des modèles CLIP. Un modèle d'apprentissage automatique convertit chaque image en un "embedding", qui est essentiellement une chaîne de chiffres encodant sémantiquement ce qui se trouve dans l'image. La même opération est effectuée pour le texte que vous saisissez lorsque vous effectuez une recherche, et cet embedding texte est alors comparé à ceux des images pour trouver des correspondances. Par conséquent, aucun "tag", "label" ou "description" n'est généré que vous pouvez consulter. Pour plus d'informations sur CLIP et ses capacités, consultez ici.
Comment fonctionne la reconnaissance faciale?
Voir Comment fonctionne la reconnaissance faciale pour plus de détails.
Comment puis-je désactiver l'apprentissage automatique?
Désactiver l'apprentissage automatique entraînera une mauvaise expérience pour la recherche et la page "Explorer", car elles en dépendent pour fonctionner comme prévu.
L'apprentissage automatique peut être désactivé dans Administration > Paramètres > Paramètres d'apprentissage automatique, soit complètement soit par type de modèle. Par exemple, vous pouvez choisir de désactiver la recherche intelligente avec CLIP, tout en conservant la reconnaissance faciale activée. Cela signifie que le service d'apprentissage automatique ne traitera que les tâches activées.
Cependant, désactiver toutes les tâches ne désactivera pas le service d'apprentissage automatique lui-même. Pour l'empêcher de démarrer complètement dans ce cas, vous pouvez commenter la section immich-machine-learning
du docker-compose.yml
.
Je reçois des erreurs concernant des modèles corrompus ou qui échouent à être téléchargés. Que dois-je faire?
Vous pouvez supprimer le volume cache du modèle où les modèles sont téléchargés. Cela donnera au service un environnement propre pour télécharger à nouveau le modèle. Si les modèles échouent totalement à se télécharger, vous pouvez les télécharger manuellement depuis Hugging Face et les placer dans le dossier cache.
Puis-je utiliser un modèle CLIP personnalisé?
Non, cela n'est pas pris en charge. Seuls les modèles listés sur la page Hugging Face sont compatibles. N'hésitez pas à faire une demande de fonctionnalité si un modèle qui n'est pas listé ici devrait selon vous être ajouté.
Je veux effectuer des recherches dans d'autres langues que l'anglais. Comment puis-je faire cela?
Vous pouvez changer pour un modèle CLIP multilingue. Voir ici pour les instructions.
Immich prend-il en charge la reconnaissance faciale pour les vidéos?
La fonctionnalité d'apprentissage automatique d'Immich fonctionne sur la vignette générée. Si un visage est visible dans la vignette du vidéo, il sera détecté par la reconnaissance faciale. Le balayage de la totalité de la vidéo pour détecter des visages pourrait être implémenté à l'avenir.
Immich propose-t-il la reconnaissance des animaux?
Non.
Vous pouvez utiliser Recherche intelligente pour cela dans une certaine mesure. Par exemple, si vous avez un Golden Retriever et un Chihuahua, tapez ces mots dans la recherche intelligente et observez les résultats.
Je détecte beaucoup de "visages" qui ne sont pas des visages, que puis-je faire?
Vous pouvez augmenter le SCORE MINIMAL DE DÉTECTION à 0.8 pour éviter les mauvaises vignettes. Définir un score trop élevé (au-dessus de 0.9) pourrait filtrer trop de véritables visages selon la bibliothèque utilisée. Si vous souhaitez simplement masquer des visages spécifiques, vous pouvez ajuster le paramètre 'FACES MINIMES DÉTECTÉS' dans le panneau d'administration
pour augmenter la barre de ce que l'algorithme considère comme un "visage central" pour cette personne, réduisant ainsi le risque que de mauvaises vignettes soient choisies.
Le volume immich_model-cache occupe beaucoup d'espace, quel pourrait être le problème?
Si vous avez installé plusieurs modèles et décidé de ne pas en utiliser certains, il pourrait être utile de supprimer les anciens modèles présents dans immich_model-cache. Pour cela, vous pouvez monter le cache des modèles et supprimer les modèles non désirés.
Étapes
docker run -it --rm -v immich_model-cache:/mnt-models alpine sh
cd /mnt-models
ls clip/ facial-recognition/
# rm -r clip/ABC facial-recognition/DEF # supprimer les modèles inutilisés
Performance
Pourquoi Immich est-il lent sur des systèmes à faible mémoire comme le Raspberry Pi?
Immich utilise optionnellement le transcodage et l'apprentissage automatique pour plusieurs fonctionnalités. Cependant, cela peut être trop lourd pour un Raspberry Pi. Vous pouvez atténuer cela ou héberger le conteneur d'apprentissage automatique d'Immich sur un système plus puissant, ou désactiver complètement l'apprentissage automatique.
Puis-je réduire l'utilisation du processeur et de la RAM?
La sauvegarde initiale est la plus intensive en raison du nombre de tâches en cours d'exécution. Les tâches les plus gourmandes en CPU sont le transcodage et les tâches d'apprentissage automatique (Recherche intelligente, Détection de visages), et dans une moindre mesure, la génération de vignettes. Voici quelques façons de réduire leur utilisation du CPU:
- Réduire la concurrence des tâches pour ces derniers à 1.
- Dans Paramètres > Paramètres de transcodage > Threads, définissez le nombre de threads sur un faible nombre comme 1 ou 2.
- Dans Paramètres > Paramètres d'apprentissage automatique > Reconnaissance faciale > Nom du modèle, vous pouvez changer le modèle de reconnaissance faciale pour
buffalo_s
au lieu debuffalo_l
. Le premier est un modèle plus petit et plus rapide, bien qu'un peu moins performant.- Pour que la reconnaissance faciale sur de nouvelles images fonctionne correctement, vous devez relancer la tâche de Détection de visages pour toutes les images après cela.
- Au niveau du conteneur, vous pouvez appliquer des contraintes de ressources pour réduire davantage la consommation.
- Il est recommandé d'appliquer ces contraintes après avoir pris certaines des mesures mentionnées ici pour une meilleure performance.
- Si ces changements ne sont pas suffisants, voir au-dessus pour les instructions sur comment désactiver l'apprentissage automatique.
Puis-je limiter l'utilisation du processeur et de la RAM?
Par défaut, un conteneur n'a aucune contrainte de ressource et peut utiliser autant d'une ressource donnée que le planificateur du kernel de l'hôte le permet. Pour limiter cela, vous pouvez ajouter les éléments suivants au bloc docker-compose.yml
de tout conteneur que vous souhaitez limiter.
docker-compose.yml
deploy:
resources:
limits:
# Nombre de threads CPU
cpus: '1.00'
# Gigaoctets de mémoire
memory: '1G'
Pour plus de détails, vous pouvez consulter les docs Docker originales ou utiliser ce guide.
Notez que les contraintes de mémoire fonctionnent en terminant le conteneur, cela peut donc introduire de l'instabilité si elles sont trop faibles.
Comment puis-je accélérer la vitesse d'apprentissage automatique?
Ces conseils améliorent le débit, pas la latence. Cela signifie qu'ils permettront aux tâches de Recherche intelligente de se traiter plus rapidement, mais ne rendront pas la recherche elle-même plus rapide.
Vous pouvez augmenter le débit en augmentant la concurrence des tâches d'apprentissage automatique (Recherche intelligente, Détection de visages). Avec une plus grande concurrence, l'hôte travaillera sur plus d'éléments en parallèle. Vous pouvez faire cela en vous rendant dans Administration > Paramètres > Paramètres des tâches et en augmentant la concurrence selon vos besoins.
Sur une machine normale, 2 ou 3 tâches simultanées peuvent probablement maximiser le CPU. La vitesse et la latence de stockage peuvent rapidement devenir le facteur limitant au-delà de cela, en particulier lors de l'utilisation de disques durs (HDD).
La simultanéité peut être augmentée plus confortablement avec un GPU, mais ne devrait toujours pas dépasser 16 dans la plupart des cas.
N'exagérez pas avec la simultanéité des tâches car vous risquez de surcharger complètement le serveur.
Mon serveur affiche Statut du serveur hors ligne | Version inconnue. Que puis-je faire ?
Vous devez activer WebSockets sur votre reverse-proxy.
Docker
Comment puis-je voir les journaux d'Immich ?
Les composants d'Immich sont généralement déployés à l'aide de Docker. Pour voir les journaux des conteneurs Docker déployés, vous pouvez utiliser le CLI Docker, en particulier la commande docker logs
. Pour des exemples, voir Aide Docker.
Comment puis-je réduire la verbosité des journaux de Redis ?
Pour réduire les journaux de Redis, vous pouvez ajouter la ligne suivante à la section redis:
du fichier docker-compose.yml
:
command: redis-server --loglevel warning
Comment puis-je exécuter Immich en tant qu'utilisateur non root ?
Vous pouvez changer l'utilisateur dans le conteneur en définissant l'argument user
dans docker-compose.yml
pour chaque service.
Vous devrez peut-être ajouter des points de montage ou des volumes Docker pour les chemins internes du conteneur suivants :
immich-machine-learning:/.config
immich-machine-learning:/.cache
redis:/data
L'utilisateur/groupe non root doit avoir accès en lecture/écriture aux montages de volumes, y compris UPLOAD_LOCATION
et /cache
pour l'apprentissage automatique.
L'élément volume de niveau supérieur de Docker Compose ne prend pas en charge l'accès en tant que non root, tous les volumes ci-dessus doivent être des montages de volume locaux.
Pour un système davantage renforcé, vous pouvez ajouter le bloc suivant à chaque conteneur.
docker-compose.yml
security_opt:
# Empêche l'escalade des privilèges après le d émarrage du conteneur
- no-new-privileges:true
cap_drop:
# Empêche l'accès au trafic réseau brut
- NET_RAW
Comment puis-je purger des données d'Immich ?
Les données d'Immich se présentent sous deux formes :
- Métadonnées stockées dans une base de données Postgres, stockées dans le dossier
DB_DATA_LOCATION
(anciennement le volume Dockerpg_data
). - Fichiers (originaux, vignettes, profil, etc.), stockés dans le dossier
UPLOAD_LOCATION
, plus info.
Cela détruira votre base de données et réinitialisera votre instance, ce qui signifie que vous recommencerez à zéro.
docker compose down -v
Après avoir supprimé les conteneurs et volumes, il y a quelques répertoires à supprimer pour réinitialiser Immich à une nouvelle installation. Une fois ces répertoires supprimés, Immich peut être redémarré et sera une installation fraîche.
DB_DATA_LOCATION
contient la base de données, les informations multimédia et les paramètres.UPLOAD_LOCATION
contient tous les fichiers multimédias téléchargés sur Immich.
Si vous utilisez Portainer, arrêtez la pile dans Portainer. Accédez à la section volumes et supprimez tous les volumes liés à Immich, puis redémarrez la pile.
Pourquoi le service d'apprentissage automatique signale des travailleurs en panne ?
Si l'erreur indique que le travailleur se termine, alors c'est normal. Il s'agit d'une fonctionnalité destinée à réduire la consommation de RAM lorsque le service n'est pas utilisé.
Il existe plusieurs raisons pour lesquelles cela peut se produire.
Si l'erreur mentionne SIGKILL ou le code d'erreur 137, cela signifie très probablement que le service manque de mémoire. Considérez soit l'augmentation de la RAM du serveur, soit le transfert du service vers un serveur avec plus de RAM.
Si elle mentionne SIGILL (notez l'absence de K) ou le code d'erreur 132, cela signifie très probablement que le CPU de votre serveur est incompatible avec Immich.
Base de données
Pourquoi je rencontre des erreurs de propriété de base de données ?
Si vous obtenez des erreurs liées à la base de données telles que FATAL: data directory "/var/lib/postgresql/data" has wrong ownership
lors du démarrage de la base de données, cela est probablement dû à un problème avec votre système de fichiers.
Les systèmes de fichiers NTFS et ex/FAT/32 ne sont pas pris en charge. Consultez ici pour plus de détails.
Comment puis-je vérifier l'intégrité de ma base de données ?
Les sommes de contrôle de la base de données sont activées par défaut pour les nouvelles installations depuis la version v1.104.0. Vous pouvez vérifier si elles sont activées en exécutant la commande suivante. Un résultat de on
indique que les sommes de contrôle sont activées.
Vérifier si les sommes de contrôle sont activées
docker exec -it immich_postgres psql --dbname=postgres --username=<DB_USERNAME> --command="show data_checksums"
data_checksums
----------------
on
(1 row)
Si les sommes de contrôle sont activées, vous pouvez vérifier l'état de la base de données avec la commande suivante. Un résultat normal est composé uniquement de 0
.
Recherche de corruption dans la base de données
docker exec -it immich_postgres psql --dbname=postgres --username=<DB_USERNAME> --command="SELECT datname, checksum_failures, checksum_last_failure FROM pg_stat_database WHERE datname IS NOT NULL"
datname | checksum_failures | checksum_last_failure
-----------+-------------------+-----------------------
postgres | 0 |
immich | 0 |
template1 | 0 |
template0 | 0 |
(4 rows)
Vous pouvez également scanner la structure des fichiers de la base de données Postgres pour détecter des erreurs :
Scanner les erreurs de structure de fichier
docker exec -it immich_postgres pg_amcheck --username=<DB_USERNAME> --heapallindexed --parent-check --rootdescend --progress --all --install-missing
Un résultat normal ressemblera à ceci à la fin et retournera un code de sortie de 0
:
7470/8832 relations (84%), 730829/734735 pages (99%)
8425/8832 relations (95%), 734367/734735 pages (99%)
8832/8832 relations (100%), 734735/734735 pages (100%)
Si une corruption est détectée, vous devez immédiatement effectuer une sauvegarde avant d'effectuer tout autre travail sur la base de données.
Pour ce faire, vous devrez peut-être définir le paramètre zero_damaged_pages=on
pour le serveur de base de données afin de permettre à pg_dumpall
de réussir.
Après avoir pris une sauvegarde, l'étape suivante recommandée est de restaurer la base de données à partir d'une sauvegarde saine effectuée avant la détection de la corruption.
La sauvegarde de la base de données endommagée peut être utilisée pour récupérer manuellement les modifications apportées depuis la dernière sauvegarde, si nécessaire.
Les causes possibles de corruption sont nombreuses, mais peuvent inclure des coupures de courant imprévues ou des démontages, l'utilisation d'un partage réseau pour les données Postgres, ou un support de stockage médiocre tel qu'une carte SD ou un disque dur/périphérique SSD défectueux.