GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

USB-Stick:Das Kopieren dauert etwa 3 Minuten, aber das Unmounten dauert sehr lange:10 bis 12 Minuten?

Ich verwende Ubuntu 17.10.

Ich habe einen USB-Stick auf NTFS formatiert, um einen Windows7-USB-Installer vorzubereiten.

Ich habe das bootfähige Flag auf diesem USB-Stick gesetzt und die Dateien hineinkopiert.

EDIT 1:Der USB-Stick wird automatisch von udev gemountet.

umount /dev/sdb1 dauert zwischen 10 und 12 Minuten.

Hier sind die Mount-Optionen:

$ mount | grep sdb
/dev/sdb1 on /media/mansfeld/Win7_USB_Installer type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,uhelper=udisks2)

BEARBEITEN 2:Der cp Der Vorgang ist überhaupt nicht SOFORT, es dauerte 3 Minuten, um die Dateien auf den USB-Stick zu kopieren.

BEARBEITEN 3:Die sync Operation (direkt nach dem cp ) dauerte 12 Minuten! Aber dann die umount wird sofort sein.

Bei FAT32 (mit ebenfalls deaktivierter Synchronisierung während des Mountens) bemerke ich das gleiche Verhalten.

Irgendwelche Ideen, warum es so lange dauert, den NTFS-USB-Stick abzumelden?

Akzeptierte Antwort:

Sie leiden wahrscheinlich unter Buffering zwischenspeichern . Um das Schreiben auf USB-Sticks (und Festplatten im Allgemeinen) zu beschleunigen, verwendet Linux einen Dateisystem-Cache:

Wenn Sie etwas auf den Stick schreiben (denken), dann wird es zuerst in den Cache (im RAM) und in den cp geschrieben Der Befehl (zum Beispiel) kehrt sofort zurück und gibt vor, eine wirklich schnelle Schreiboperation zu sein. Während Sie andere Dinge tun, wird der Inhalt des Caches dann im Hintergrund auf den Stick geschrieben. Möglicherweise stellen Sie fest, dass eine LED auf dem Stick immer noch blinkt und Schreibvorgänge anzeigt (hängt von Ihrem Stick ab), obwohl offensichtlich nichts passiert.

Wenn Sie umount ausgeben bald nach einer Schreiboperation, dann umount wartet, bis der gesamte Cache-Inhalt des Dateisystems auf den Stick geschrieben wurde, um sicherzustellen, dass keine Daten verloren gehen.

Mit sync Sie können das Leeren des Caches und das Schreiben der Daten auf den Stick manuell erzwingen. Dies beschleunigt jedoch nicht die insgesamt verstrichene Zeit, da Sie dann auf die sync warten müssen abzuschließen (anstatt auf umount zu warten ). Aber die umount wird dann sofort zurückkehren, da der Cache bereits geleert ist.

Zusammenfassend haben Sie drei Möglichkeiten, nachdem Sie große oder viele Dateien auf den Stick kopiert haben:

  • umount und warten Sie 10 Minuten, bis der Vorgang abgeschlossen ist
  • sync , warten Sie 10 Minuten bis zum Abschluss, gefolgt von umount (wird fast sofort zurückkehren)
  • warte einfach 10 Minuten (vielleicht etwas länger) und tue nichts (oder etwas, das nichts mit dem Stick zu tun hat) und dann geben Sie umount aus . Da der Cache automatisch im Hintergrund geschrieben wird, umount kommt dann auch fast sofort wieder.
Verwandte Themen:Kann ich von einer .vdi-Datei booten?
Ubuntu
  1. Linux – Ntp-Zeitsynchronisierung dauert lange?

  2. Ssh – Warum braucht Ssh so lange, um sich zu verbinden?

  3. Kopieren und Einfügen auf dem Ubuntu-Terminal

  4. Verwenden Sie den Bash-Verlauf, um einen vorherigen Befehl abzurufen, kopieren Sie ihn und führen Sie ihn dann aus, jedoch mit dem kommentierten Befehl

  5. Timen Sie die Ausführungszeit mehrerer Befehle

Kopieren Sie Dateien und erstellen Sie gleichzeitig Zielverzeichnisse

SSH-Verbindung dauert lange? Hier sind einige Korrekturen

Wie mache ich A Ls und sortiere dann die Ergebnisse nach Erstellungsdatum?

Grep Word in einer Datei und dann die Datei kopieren?

Die USB-Maus von Logitech funktioniert, aber die Initialisierung dauert nach dem Start von X länger als eine Minute?

Zeitanzeige zeigt Datum/Uhrzeit nicht an?