Een gekoppeld bestandssysteem kan het aanmaken van bestanden toestaan, maar het hernoemen weigeren omdat voor hernoemen afzonderlijke vereisten gelden voor mappen, eigendom, bestandssysteemgrenzen, vlaggen en geopende ingangen.
Een geslaagde koppeling bewijst alleen dat het bestandssysteem is aangekoppeld, en een geslaagde schrijfactie bewijst dat de client ten minste één object kan aanmaken of wijzigen. Hernoemen is een bewerking op een directory-item waarvoor mogelijk rechten nodig zijn op zowel de bron- als de doelmap, verwijderrechten, een pad binnen hetzelfde bestandssysteem, een geldige doelnaam en geen conflicterende SMB-deelmodus of beveiligde bestandsvlag. Leg de exacte fout vast en vergelijk aanmaken, hernoemen, verplaatsen en verwijderen afzonderlijk voordat je aanneemt dat het bestandssysteem beschadigd is.
Leg de exacte hernoemingsfout vast voordat je rechten wijzigt
Herhaal één hernoeming vanaf de host en vanaf de getroffen client. Noteer het bronpad, doelpad, de gebruikersidentiteit, het bestandssysteem, het koppelpunt, de foutcode en of de doelnaam al bestaat.
De fouten van de Linux-systeemaanroep rename maken onderscheid tussen rechtenproblemen, bezette koppelpunten, verplaatsingen tussen apparaten, alleen-lezenbestandssystemen, niet-lege doelen en andere situaties die er in een grafische bestandsbrowser hetzelfde uit kunnen zien.
Als het aanmaken van een nieuw bestand lukt, maar het hernoemen ervan mislukt, behoud dan dat contrast. Dit beperkt het probleem tot het vervangen van een directory-item, verwijderrechten, naamgevingsregels, vergrendelingen of een padgrens, in plaats van gewone schrijftoegang.
Controleer de rechten op beide bovenliggende mappen
Controleer eigendom, modusbits, ACL's en de effectieve identiteit op de map die de oude naam bevat en op de map die de nieuwe naam zal bevatten. Hernoemrechten worden voornamelijk door de mappen bepaald, niet door de schrijfrechten van het bestand.
Red Hat legt uit dat de sticky bit hernoemen en verwijderen beperkt in gedeelde schrijfbare mappen tot de bestandseigenaar, mapeigenaar of een bevoorrechte gebruiker, zelfs wanneer meerdere gebruikers daar bestanden kunnen aanmaken.
Test met dezelfde NAS-gebruiker die de fout krijgt. Succes als beheerder bewijst niet dat het gewone account verwijder- of hernoemrechten heeft op beide directory-items.
Controleer onveranderlijke, niet-verwijderbare en alleen-toevoegbare vlaggen
Controleer naast gewone rechten en ACL's ook de bestandssysteemvlaggen van het bestand en de bovenliggende mappen. Herstelbewerkingen, beveiligingstools of bewaarbeleid kunnen vlaggen behouden die niet zichtbaar zijn in een eenvoudige rechtenlijst.
Het beveiligingshandboek van FreeBSD vermeldt dat een onveranderlijke bestandsvlag wijzigen of verwijderen verhindert, terwijl vlaggen voor alleen toevoegen en niet verwijderen ook de mapwijzigingen kunnen blokkeren die voor hernoemen nodig zijn.
Verwijder een beschermende vlag pas nadat je hebt vastgesteld welk beleid of welke toepassing deze heeft ingesteld. Het globaal wissen van vlaggen kan bewaarbeleid, back-ups of bescherming tegen ransomware ondermijnen.
Sluit een verplaatsing tussen bestandssystemen uit die achter één mappenstructuur verborgen zit
Herleid de bron- en doelmappen tot apparaat-ID's, koppelpunten, bind mounts, datasets en containerpaden. Twee mappen binnen dezelfde share kunnen nog steeds tot verschillende aangekoppelde bestandssystemen behoren.
De GNU C Library definieert EXDEV als een fout bij hernoemen tussen apparaten. Een hulpprogramma voor verplaatsen op hoger niveau kan dit oplossen door te kopiëren en te verwijderen, terwijl een toepassing die een atomische hernoeming verwacht eenvoudig kan mislukken.
Als een lokale verplaatsing alleen lukt door het hele bestand te kopiëren, was de bewerking geen atomische hernoeming. Corrigeer de tijdelijke en definitieve paden van de toepassing of houd beide fasen op hetzelfde bestandssysteem.
Controleer geopende ingangen en SMB-deelrechten voor verwijderen
Bekijk geopende bestanden en SMB-sessies voor de bron- en doelmappen. Sluit voorbeeldweergaven, miniatuurgeneratoren, editors, mediascanners, antivirusprogramma's en back-upclients één voor één.
Microsoft documenteert een situatie met een netwerkmap waarin een geopende ingang van de miniatuurcache het hernoemen blokkeert. Dit laat zien waarom het lezen of aanmaken van andere bestanden een deelconflict op het specifieke object niet opheft.
Herstart de volledige NAS niet voordat je de informatie over geopende ingangen hebt vastgelegd. Door een herstart kan de vergrendeling verdwijnen, terwijl verborgen blijft welke client of service deze opnieuw heeft veroorzaakt.
Vergelijk SMB-hernoemingsregels met de bestandsnaam van de client
Test een eenvoudige naam met kleine ASCII-letters in dezelfde map. Vergelijk daarna wijzigingen die alleen verschillen in hoofdletters, gereserveerde tekens, afsluitende punten of spaties, Unicode-normalisatie en een al bestaande doelnaam.
De macOS-interoperabiliteitsmodule van Samba biedt een compatibiliteitsoptie voor POSIX-hernoemen. Dit illustreert dat naamgevingssemantiek van client en server kan bepalen of een hernoeming van een map wordt geaccepteerd.
Als slechts één patroon van bestandsnamen mislukt, bewaar dan de oorspronkelijke naamkoppeling voordat je deze normaliseert. Batchgewijs hernoemen zonder terugdraaiverwijzing kan med bibliotheken, synchronisatietaken, snelkoppelingen en back-ups beschadigen.
Herstel de vastgestelde laag en controleer elke bewerking
Corrigeer alleen de geverifieerde oorzaak: rechten op de bovenliggende map, eigendom in combinatie met de sticky bit, een beveiligde vlag, een pad binnen hetzelfde bestandssysteem, een geopende ingang of een incompatibele bestandsnaam. Herhaal de test met de oorspronkelijke gebruiker en toepassing.
Het ZimaSpace-artikel over botsingen door bestandsnamen die alleen in hoofdletters verschillen behandelt het specifiekere platformoverschrijdende geval waarin twee namen op de bestemming gelijkwaardig worden.
Het probleem is opgelost wanneer aanmaken, sluiten, hernoemen, verplaatsen, verwijderen en opnieuw aanmaken allemaal op het bedoelde pad lukken na opnieuw verbinden en herstarten. Stop met schrijven als het bestandssysteem alleen-lezen wordt of beschadiging of hardwarematige I/O-fouten meldt.
Veelgestelde vragen
Waarom kan ik wel een bestand aanmaken, maar het niet hernoemen?
Voor aanmaken is toestemming nodig om een directory-item toe te voegen, terwijl voor hernoemen ook verwijderrechten op het oude item, schrijf- en uitvoerrechten op beide bovenliggende mappen, compatibele naamgevingsregels en het ontbreken van beschermde vlaggen of conflicterende ingangen nodig kunnen zijn.
Betekent een EXDEV-fout bij hernoemen dat het bestandssysteem beschadigd is?
Nee. Dit betekent meestal dat de bron en bestemming zich op verschillende bestandssystemen bevinden, waardoor de kernel geen atomische hernoeming kan uitvoeren. Verplaatsen door kopiëren en verwijderen kan nog steeds werken.
Kan een geopend bestand worden hernoemd?
Veel lokale POSIX-bestandssystemen staan dit toe, maar SMB-clients en toepassingen kunnen bestanden openen zonder delen voor verwijderen, waardoor de server het hernoemen weigert totdat de ingang wordt gesloten.
Ondersteuning & Tips
Meer om te lezen

Kan Plex een GPU delen met een andere Docker-container?
Plex en een andere container kunnen vaak dezelfde GPU gebruiken, maar je moet de driverondersteuning, apparaattoewijzing, belasting van de video-engine, het geheugengebruik en het...

Hoe je kunt bepalen of een Plex-fout door de client of de server wordt veroorzaakt
Reproduceer hetzelfde item op een andere client, vergelijk het sessiepad en verzamel pas serverbewijs nadat de scope heeft uitgewezen waar de fout daadwerkelijk zit.

Plex-cache en tijdelijke opslag voor transcodering configureren
Bescherm de permanente Plex-status door tijdelijke transcodebestanden op geschikte lokale opslag te plaatsen en controleer vervolgens het opruimen, de beschikbare ruimte en het gedrag...

