組み込みLinuxの環境でライトプロテクト付きUSBメモリ(バッファロ製、型番不明)について質問があります。
このメモリは、SWがついており、ライトプロテクトのON/OFFが出来ます。

このメモリをプロテクトONでマウントすると

mount: /dev/sda1 is write-protected, mounting read-only

とメッセージがデますがマウントできます。
この状態で、以下の様にファイルをリード属性でオープンするとエラーになります。

fp = fopen("/mdeia/usb/test.txt","r");

オープンすると、エラーになり、errno=2が帰ってきます。
コマンドラインからマニュアルでマウントし、catでファイル内容を表示しても問題ありません。

プロテクトOFFでは、正常にオープン出来ます。

ls -al ファイル属性を見ても、プロテクトON/OFFでは差がありません。

プロテクトONでは、fopen()でオープン出来無いのでしょうか?


fd = open("/media/usb/test.txt", O_RDONLY);

も試して見ました。やはりfopen()と同じでプロテクトONでは-1が返り、プロテクトOFFではオープン出来ました。