人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

FreeBSDにてRead-only file systemというエラーが出てファイルを置く事ができません。

■エラーが出るまでの流れは以下です。
#cd /usr/ports/distfiles
/usr/ports/distfiles#fetch http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-src-b05-jrl-24_sep_2007.jar
fetch: jdk-6u3-fcs-src-b05-jrl-24_sep_2007.jar: open(): Read-only file system

●質問者: php-beginner
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:CD FCS FreeBSD JAR JDK
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● masahikokimoto
●13ポイント

/usrがread only mountされていませんか?

mount を実行して、/usrパーティションの属性にread onlyとかかれていないか調べてください。

mount -w -u /usr

とすれば書き込み可でmountしなおします。

◎質問者からの返答

mountを実行すると下記のように出ます

/dev/da0e on / (ufs, local, with quotas)

/dev/da1e on /backup (ufs, local, read-only)

#mount -w -u /usrを行った結果は下記となります。

mount: not currently mounted /usr


2 ● masahikokimoto
●26ポイント

それは、/usr/portsか/usr/ports/distfilesが/backupのほうにsymbolic linkが張られているとかいう理由ではないでしょうか。

read-only mountされている/backupについて、mount -u -w /backupすればなんとなく大丈夫そうですが、/backupをread-onlyになっている理由はあると思うので、注意は必要だろうと思います。

というか、非常にお節介ですが、結構危険なオペレーションなので、内容理解されてから操作したほうがいいと思います。


3 ● otsune
●26ポイント

たぶん http://www.rapidsite.jp/product/vps/ のVPSだと思うのですが。

そこは/usr/ports以下をreadonlyで全仮想環境で共通に管理しているはずです。

それだと/usr/ports/distfilesにソースコードをfetchできませんので/etc/make.confなどにWRKDIRPREFIX環境変数を「/var/なんちゃら」として設定されていて、そっちにソースを置くようになっていると思います。

つまりjdk1.6のソースはそこにcdしてfetchすればOkです。

◎質問者からの返答

会社は違いますが、VPSです。

make.confを見ると以下のような記述でした。

WRKDIRPREFIX=/var/build

DISTDIR=/var/distfiles

...


/var/buildのディレクトリは存在がなく/var/distfilesは空のディレクトリとして存在しました。

buildのディレクトリを作成しそこにファイルを置けば良いのでしょうか?


4 ● otsune
●25ポイント

make.confを見ると以下のような記述でした。

WRKDIRPREFIX=/var/build

DISTDIR=/var/distfiles

そのmake.confだとDISTDIRがソースコードを保存しておくディレクトリなので

cd /var/distfiles

fetch http://www.java.net/download/jdk6/6u3/promoted/b05/jdk-6u3-fcs-s...

とすれば良いと思います。

つまりFreeBSD HandBookやその他ドキュメントで説明に出てくる「/usr/ports/distfiles」を「/var/distfiles」と置き換えて読み取ればOkです。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ