前に戻る。|次をみる。??

freebsd4.10 mount

mount に ついて

Linux から freebsd 領域を マウント するには kernel の 再構築が 必要 な場合が あります freebsd から Linux 領域を マウント するには 同じく 必 要なことらしい マウントが 最初 インストール したままの 状態では 出来ない ようなので、但し 正確には にゃんたろう は 知らない 経験上 そうらしい 拝!

freebsd から freebsd

freebsd が hdb (Linux でいう hdb に インストール されてる 状態で す。)に ある場合の 他の freebsd (Linux でいう sdd3 に インストール されてる 状態です。)を 見てみましょう。まず hdb のfreebsdでの動作

lx# mount
/dev/ad1s1a on / (ufs, local)
/dev/ad1s1f on /tmp (ufs, local, soft-updates)
/dev/ad1s1g on /usr (ufs, local, soft-updates)
/dev/ad1s1e on /var (ufs, local, soft-updates)
procfs on /proc (procfs, local)

自分自身 の 状態です、そこで sdd3 の freebsdの system 領域 を マウントします。

lx# mount /dev/da3c /mnt/
lx# mount
/dev/ad1s1a on / (ufs, local)
/dev/ad1s1f on /tmp (ufs, local, soft-updates)
/dev/ad1s1g on /usr (ufs, local, soft-updates)
/dev/ad1s1e on /var (ufs, local, soft-updates)
procfs on /proc (procfs, local)
/dev/da3c on /mnt (ufs, local)
lx# ls -aF /mnt/
./              bin/            etc/            modules/        sys@
../             boot/           home@           proc/           tmp/
.cshrc          cdrom/          kernel*         root/           usr/
.profile        compat@         kernel.GENERIC* sbin/           var/
COPYRIGHT       dev/            mnt/            stand/

これで ユーザー 領域 が 見る事 出来るでしょうか、自分の 所 hdb の ユーザー領域に 目印を つけます ファイルを 作成

%echo "/usr/home/mm">Here_is_ad1s1g

ユーザー領域 を 見るつもりで 試してみます。

%ls /mnt/home/mm
#tmount_bsd#                    006_todo
001_changeshell                 090_testpattern
002_japanese                    Here_is_ad1s1g
003_canna_server                listpkg_info
004_use_less_vim                mlist
005_dot_afterstep_xinitrc       proto_bashrc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

おかしな 振舞??

lx# df
Filesystem  1K-blocks    Used   Avail Capacity  Mounted on
/dev/ad1s1a    128990   36712   81960    31%    /
/dev/ad1s1f    257998      12  237348     0%    /tmp
/dev/ad1s1g   3191012 1280278 1655454    44%    /usr
/dev/ad1s1e    257998    3876  233484     2%    /var
procfs              4       4       0   100%    /proc
/dev/da3c      128990   38564   80108    32%    /mnt
~~~~~~~~~~~~~~~~~~~~

駄目なようです。

lx# umount /mnt/

では ユーザー 領域を マウント してみましょう

lx# mount /dev/da3g /mnt/
lx# df
Filesystem  1K-blocks    Used   Avail Capacity  Mounted on
/dev/ad1s1a    128990   36712   81960    31%    /
/dev/ad1s1f    257998      12  237348     0%    /tmp
/dev/ad1s1g   3191012 1280282 1655450    44%    /usr
/dev/ad1s1e    257998    3876  233484     2%    /var
procfs              4       4       0   100%    /proc
/dev/da3g     5286238 1280486 3582854    26%    /mnt
lx# ls /mnt/
@LongLink       games           libdata         ports
X11R6           home            libexec         sbin
bin             include         local           share
compat          lib             obj             src

再度 試みて見ましょう

%ls /mnt/home/mm
010_kterm       011_dev         012_mount       3001_mount      v_initial
lx# mount
/dev/ad1s1a on / (ufs, local)
/dev/ad1s1f on /tmp (ufs, local, soft-updates)
/dev/ad1s1g on /usr (ufs, local, soft-updates)
/dev/ad1s1e on /var (ufs, local, soft-updates)
procfs on /proc (procfs, local)
/dev/da3g on /mnt (ufs, local, soft-updates)
lx# umount /mnt/
%ls /mnt/home/mm
ls: /mnt/home/mm: No such file or directory
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

これらから 判明 するのは 少なくとも system 領域 da3c を マウントした 状況で リンクしている home から ユーザー領域 には アクセス できない 様 である。アクセスするには da3g をマウント する 必要が ある。まったく 別の 領域 として 考えねば なんねえ 起動 している システム 内部では リンクの こと 考えないで 問題ないが 外部 から 見ると 別領域 当り前なのだろう御粗 末でした。しかし 自分の ところが 見えるのは 合点が 行かぬが??

マウント した 領域の 容量 も 確認 しながら 見て下さい、わりと にゃん たろうに とっては 解かりにくいところです。

freebsd から dos

dos 領域 を マウント してみましょう

lx# mount -t msdos /dev/ad0s1 /mnt/
lx# ls /mnt/
001.eps      defi.tune       Nyantarou.fls    instlug.files   bootf.sti
normal.bach  pquitlug.files  seriallug.fle    snooplug.val    beosldr
start.vbc    os9IME.tune     network.con      tuneTEM.1ST
start.files  IO.set          plist  data      screen.det
load.os9     MSos9.---       box.dir          OS8
search.est   MSos9.tune      defer.ed         boot.ida
lx# mount 
/dev/ad1s1a on / (ufs, local)
/dev/ad1s1f on /tmp (ufs, local, soft-updates)
/dev/ad1s1g on /usr (ufs, local, soft-updates)
/dev/ad1s1e on /var (ufs, local, soft-updates)
procfs on /proc (procfs, local)
/dev/ad0s1 on /領域を マウント するにはmnt (msdos, local)
lx# df
Filesystem  1K-blocks    Used   Avail Capacity  Mounted on
/dev/ad1s1a    128990   36712   81960    31%    /
/dev/ad1s1f    257998      12  237348     0%    /tmp
/dev/ad1s1g   3191012 1280278 1655454    44%    /usr
/dev/ad1s1e    257998    3874  233486     2%    /var
procfs              4       4       0   100%    /proc
/dev/ad0s1    1026112  249836  776276    24%    /mnt
lx# umount /mnt/
=====================================================

内容は別にして 何かあるのが わかると 思います。

ここで sdd3 (Linux で いう sdd3 に インストール してある)の freebsdから みた 場合を 参考 に 見てみる。 最初 その 内容の ファ イルを Linux から 取り出してみよう

linux から freebsd の データ (ユーザー)領域 の マウント

Linux : sda5; freebsd : sdd3 の 条件

lx:~# fdisk -l | grep sdd3
/dev/sdd3   *     13353     19541   6337536   a5  BSD/386
lx:~# cat /proc/partitions | grep sdd 
   8    48   20010816 sdd
   8    49    6836208 sdd1
   8    50    6836224 sdd2
   8    51    6337536 sdd3
   8    53     131072 sdd5
   8    54     311920 sdd6
   8    55     262144 sdd7
   8    56     262144 sdd8
   8    57    5370256 sdd9

目的の場所は sdd9 と あたりを つけて

lx:~# mount -t ufs -ro ufstype=44bsd /dev/sdd9 /mnt/
lx:~# ls -aF  /mnt/  
./   @LongLink  bin/     games/  include/  libdata/  local/  ports/  share/
../  X11R6/     compat/  home/   lib/      libexec/  obj/    sbin/   src/
lx:~# df
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/sda5              4960464   2802156   1902260  60% /
/dev/sdd9              5286238   1280942   3582400  27% /mnt
lx:~# mount
/dev/sda5 on / type ext3 (rw)
none on /proc type proc (rw)
none on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/sdd9 on /mnt type ufs (ro,ufstype=44bsd)

freebsd から freebsd と dos 領域 の マウント

さて 見てみましょう ここからは freebsd の 世界です。 自分自身 は sdd3 (Linux で いうところの sdd3) のfreebsdです。

lx# mount 
/dev/da3s3a on / (ufs, local)
/dev/da3s3f on /tmp (ufs, local, soft-updates)
/dev/da3s3g on /usr (ufs, local, soft-updates)
/dev/da3s3e on /var (ufs, local, soft-updates)
procfs on /proc (procfs, local)

自分の領域確認 したら 他の freebsd を マウント します。 (Linux で いうところの hdb の 内部 を マウントする。)

lx# mount: /dev/ad1 on /mnt: incorrect super block

駄目!

lx# mount /dev/ad1c /mnt/
lx# ls -aF /mnt/
./              bin/            etc/            modules/        sys@
../             boot/           home@           proc/           tmp/
.cshrc          cdrom/          kernel*         root/           usr/
.profile        compat@         kernel.GENERIC* sbin/           var/
COPYRIGHT       dev/            mnt/            stand/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
lx# df
Filesystem  1K-blocks    Used   Avail Capacity  Mounted on
/dev/da3s3a    128990   38564   80108    32%    /
/dev/da3s3f    257998      14  237346     0%    /tmp
/dev/da3s3g   5286238 1280490 3582850    26%    /usr
/dev/da3s3e    257998    3828  233532     2%    /var
procfs              4       4       0   100%    /proc
/dev/ad1c      128990   36712   81960    31%    /mnt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
lx# mount
/dev/da3s3a on / (ufs, local)
/dev/da3s3f on /tmp (ufs, local, soft-updates)
/dev/da3s3g on /usr (ufs, local, soft-updates)
/dev/da3s3e on /var (ufs, local, soft-updates)
procfs on /proc (procfs, local)
/dev/ad1c on /mnt (ufs, local)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
lx# umount /mnt/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

hdb の 別の 場所

lx# mount /dev/ad1g /mnt/
lx# ls -aF /mnt/
./              bin/            include/        local/          share/
../             compat/         lib/            obj/            src/
@LongLink       games/          libdata/        ports/
X11R6/          home/           libexec/        sbin/
lx# ls -aF /mnt/home/
./      ../     mm/
~~~~~~~~~~~~~~~~~~~~~~~~~~~
lx# df
Filesystem  1K-blocks    Used   Avail Capacity  Mounted on
/dev/da3s3a    128990   38564   80108    32%    /
/dev/da3s3f    257998      14  237346     0%    /tmp
/dev/da3s3g   5286238 1280494 3582846    26%    /usr
/dev/da3s3e    257998    3828  233532     2%    /var
procfs              4       4       0   100%    /proc
/dev/ad1g     3191012 1280284 1655448    44%    /mnt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
lx# mount
/dev/da3s3a on / (ufs, local)
/dev/da3s3f on /tmp (ufs, local, soft-updates)
/dev/da3s3g on /usr (ufs, local, soft-updates)
/dev/da3s3e on /var (ufs, local, soft-updates)
procfs on /proc (procfs, local)
/dev/ad1g on /mnt (ufs, local, soft-updates)
lx# umount /mnt/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

****次は msdos の マウント です。基本領域

lx# mount -t msdos /dev/ad0s1 /mnt
lx# ls /mnt/
001.eps      defi.tune       Nyantarou.fls    instlug.files   bootf.sti
normal.bach  pquitlug.files  seriallug.fle    snooplug.val    beosldr
start.vbc    os9IME.tune     network.con      tuneTEM.1ST
start.files  IO.set          plist  data      screen.det
load.os9     MSos9.---       box.dir          OS8
search.est   MSos9.tune      defer.ed         boot.ida
lx# df
Filesystem  1K-blocks    Used   Avail Capacity  Mounted on
/dev/da3s3a    128990   38564   80108    32%    /
/dev/da3s3f    257998      14  237346     0%    /tmp
/dev/da3s3g   5286238 128da3s3a0688 3582652    26%    /usr
/dev/da3s3e    257998    3828  233532     2%    /var
procfs              4       4       0   100%    /proc
/dev/ad0s1    1026112  249836  776276    24%    /mnt
lx# mount
/dev/da3s3a on / (ufs, local)
/dev/da3s3f on /tmp (ufs, local, soft-updates)
/dev/da3s3g on /usr (ufs, local, soft-updates)
/dev/da3s3e on /var (ufs, local, soft-updates)
procfs on /proc (procfs, local)
/dev/ad0s1 on /mnt (msdos, local)
lx# umount /mnt/

***** msdos 拡張領域 と いきませう

lx# mount -t msdos /dev/ad0s5 /mnt
lx# ls /mnt/
doqumanta unt sataauf        winenet
plgrama au feiles            prigrim.ida*
rdust
lx# df
Filesystem  1K-blocks    Used   Avail Capacity  Mounted on
/dev/da3s3a    128990   3da3s3a8564   80108    32%    /
/dev/da3s3f    257998      14  237346     0%    /tmp
/dev/da3s3g   5286238 1280664 3582676    26%    /usr
/dev/da3s3e    257998    3828  233532     2%    /var
procfs              4       4       0   100%    /proc
/dev/ad0s5    3166612 1127484 2039128    36%    /mnt
lx# mount
/dev/da3s3a on / (ufs, local)
/dev/da3s3f on /tmp (ufs, local, soft-updates)
/dev/da3s3g on /usr (ufs, local, soft-updates)
/dev/da3s3e on /var (ufs, local, soft-updates)
procfs on /proc (procfs, local)
/dev/ad0s5 on /mnt (msdos, local)
lx# umount /mnt/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

いやはや 非常に わかり 難い のか にゃんたろうが おかしいのか ?おもろ い 状況ですね

なんか が 類推 されます が da3s3a と マウント するときの 記号 も 合わ ない? 見直し 必要ですね マウント する度に 考えなきゃ いけん つう ことで すな 注意 ad で 駄目 なら da で とでも 考えまひょう


前に戻る。|次をみる。??


freebsd4.10 に ついて に戻る

Copyright © 2004.-2007. nyantarou All Rights Reserved.