dポイントプレゼントキャンペーン実施中!

こんばんは。
linux初心者で困っています。助けてください。
USBのマウントの方法でわからないことがあります。

組み込みなので、コマンドではなくて、mount関数でUSBをマウントしたく、
下記の関数を使おうとおもっているのですが、

#include <sys/mount.h>

int mount(constchar* source ,constchar* target , constchar* filesystemtype ,unsignedlong mountflags , constvoid* data );

それぞれの引数に具体的にどんな値を設定していいのかわかりません。
( mount(/dev/sda1,/mnt/usb/,vfat,MS_RDONLY)とやってみたらエラーでした・・・)

具体的な設定方法をご教授願います。

また、そもそもmount関数ではなく、system関数でコマンドを実行した方がいいのでしょうか?
よろしくお願い致します。

A 回答 (1件)

linuxよりもまずC言語を勉強しましょう。


文字列と数値の区別がつけられないようだとマニュアルも読めません。

そのまま書いてしまうと、
ret = mount("/dev/sda1", "/mnt/usb/", "vfat", MS_RDONLY, NULL);
でとりあえず動作するようです。
mount関数の方がマウント失敗時のエラー原因が特定出来るので、
system関数よりもmount関数を使う方がいいでしょう。

詳しい引数、オプションなどはマニュアルを見てください。

参考URL:http://www.linux.or.jp/JM/html/LDP_man-pages/man …
    • good
    • 0
この回答へのお礼

返信ありがとうございます。
おっしゃる通り、C言語も初心者なものでご迷惑をおかけしました。

精進いたしますので、今後も何かわからないことがありましたら
ご教授ください。よろしくお願い致します。

お礼日時:2008/03/17 11:52

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!