最近、私はUSB2フラッシュドライブを使用して会社に大量のデータを転送しています。
データをフラッシュドライブにコピーしている間、データがドライブに直接書き込まれていないことがわかりました。 200MB/秒(?)の速度でキャッシュに書き込みます。その後、私umount
またはsync
ドライブが実際にドライブにデータを書き込むのに数時間かかります。
代わりにNautilusを試してみましたが、cp
動作は同じです。dd
通常のファイルをコピーするオプションではありません。
USBストレージデバイスに書き込むときに、Linuxにキャッシュなしで直接データを書き込む方法はありますか?それとも、ドライブのマウント解除中に数時間待つ必要がないようにキャッシュを減らすことはできますか?
sync
最も迷惑なのは、進行状況バーのコピーが完了してからデータを書き込むことができるまで不特定の時間を待たなければならないことです。
私はFedora 25マシンを使用しています。
[更新]私の質問を明確にしようとしました。
[更新2]答えがない同様の質問を見つけました。フラッシュデバイスのキャッシュサイズを減らす
答え1
自分で行うことができますdd
。mk2fs.
-fs-of-your-choiceを使用してドライブを再フォーマットする必要があるときのようです。
man mkf2s
ddパスは簡単です。
ドライブを接続する前に、このタスクを一度実行してください。
lsblk
次に。
装置の出力に注意してください。
その後、ファイルをコピーするには、次の新しいデバイスを作成できます。
dd if=/dev/zero of=~/my-files.dd.img bs=1G mkfs.ext4 ~/my-files.dd.img losetup /dev/loop0 ~/my-files.dd.img
メモ コンピュータを再起動して再インストールするには、rc.local ファイルに上記の行を追加します。
vi /etc/rc.local
次のコマンドを使用してデバイスをインストールします。
mkdir /mnt/amazing mount -o loop=/dev/loop0 ~/my-files.dd.img /mnt/mymountpoint
ファイルがマウントされていることを確認するには、dfコマンドを使用できます。
df -h | grep mymountpoint /dev/loop0 976M 1.3M 924M 1% /mnt/mymountpoint where `bs=` a value greater than the output of: `ls -lh ./your-file-here`
デバイスの取り外しが完了したら:
umount /mnt/mymountpoint losetup -d /dev/loop0
まだテストしていませんが、これがうまくいく方法だと思います。
乾杯リバノフ