sdc1にインストールされました/media/debian/Ventoy。 debian@debian:~$ sudo blkid | grep Ventoy
/dev/sdc1: LABEL="Ventoy" UUID="F82D-76BE" BLOCK_SIZE="512" TYPE="exfat" PTTYPE="dos" PARTUUID="1af31d46-01"
debian@debian:~$ df /media/debian/Ventoy
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sdc1 15324256 7971552 7352704 53% /media/debian/Ventoy
ディレクトリの内容を表示しますmaterial。 ls material
'Best Semiconductor Stocks & ETFs in 2021 | The Motley Fool_files' 'How To Use AppImage in Linux [Complete Guide] - It'\''s FOSS_files'
'Best Semiconductor Stocks & ETFs in 2021 | The Motley Fool.html' 'How To Use AppImage in Linux [Complete Guide] - It'\''s FOSS.html'
次の場所にコピーしてください/tmp。 sudo cp -R material /tmp
良い結果。次に、次の場所にコピーしますsdd1。 sudo cp -R material /media/debian/Ventoy
cp: cannot create directory '/media/debian/Ventoy/material/Best Semiconductor Stocks & ETFs in 2021 | The Motley Fool_files': No such file or directory
cp: cannot create regular file '/media/debian/Ventoy/material/Best Semiconductor Stocks & ETFs in 2021 | The Motley Fool.html': No such file or directory
ディレクトリ内のすべてのファイルをUSBストレージデバイスにコピーできないのはなぜですか?
これによるとカーネル文書、ディレクトリエントリはディスクに保存されません。私はそのディレクトリがinodeで、そのデータブロックにはファイル名とinodeブロック番号のみが含まれていると思います(下の画像を参照)。しかし、カーネルは正確にどのように解析されますか/home/foo/hello.c?/つまり、カーネルはどのinodeがorであるかどうかを/どうやって知ることができますか/var? Directory Entry Cache (dcache)
------------------------------
The VFS implements the open(2), stat(2), chmod(2), and similar system
calls. The pathname argument that is passed to them is used by the VFS
to search through the directory entry cache (also known as the dentry
cache or dcache). This provides a very fast look-up mechanism to
translate a pathname (filename) into a specific dentry. Dentries live
in RAM and are never saved to disc: they exist only for performance.
The dentry cache is meant to be a view into your entire filespace. As
most computers cannot fit all dentries in the RAM at the same time,
some bits of the cache are missing. In order to resolve your pathname
into a dentry, the VFS may have to resort to creating dentries along
the way, and then loading the inode. This is done by looking up the
inode.
常に一貫性が必要なデータを含むファイルがあります。変更が必要な場合は、Process 1新しいファイルを作成し、変更を新しいファイルに書き込んで、を使用してmv新しいファイルの名前を古いファイルの名前に変更します。 Process 2このファイルを読み取る必要がある他のプロセスがある場合、このプロセスが常に一貫したファイルを読み取るようにするにはどうすればよいですか。つまり、読み込みプロセスmv中にProcess 1データ破損を引き起こしていませんか?