パスワードを忘れた? アカウント作成
5871 story

Samba 3.0.0β 登場 58

ストーリー by Oliver
日本ローカルパッチをちゃんと作り直すチャンス 部門より

dseg 曰く、 "Sambaの次期メジャーバージョン、3.x系の初のβ版となる 3.0.0β1 が7日にリリースされた(リリースノート)。rpmなどのバイナリソース形式での配布となっている。
Samba 3.0については @ITの記事に詳しいが、最大の注目点はActive Directoryへの参加が可能になる点だろうか。記事に「これまで可能だったファイル名のCAPHEX形式へのエンコーディングがサポートされなくなる」とあるのは気になるが、記事掲載時から何らかの動きがあったのかどうかは確認できなかった。"

本家にも記事が掲載されている。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by masui (228) on 2003年06月11日 4時01分 (#334500) ホームページ
    過去に業務で何度かLinux+Sambaでファイルサーバをつくったのですが、どうも挙動がおかしいことが多々あり、いまはSolaris+PC-NetLinkを使っています。

    たとえば8.3ファイル名を扱うソフトがあった場合にファイルが上書きされてしまう、ファイルのパーミッションがおかしくなるなどでした。
    Sambaベースのファイルサーバは結構あちらこちらから出ていますが、この辺の対処ってどうなんっているんでしょう?

    契約上「ファイルが消えても責任とりません」と書いてあるのだとは思うのですが、使うソフトによってはかなりの頻度でファイルが消えたりするはずだから、クレームもかなりきているんじゃないのかなと。
    --
    May the 4th B w/z U
    • by hsgw (14585) on 2003年06月11日 9時21分 (#334552)
      Samba は長いファイル名を元に、動的に短い8.3形式のファイル名を作っているため、どうしても複数のファイルで短いファイル名が同一になる [samba.gr.jp]ことがあります。
      短いファイル名は、長いファイル名の先頭5文字 + ~ + 適当なalnum + 適当なalnum という具合に生成しています。 下2つの alnum は、ファイル名のハッシュ値から生成しており、 また A-Z0-9 の 26 * 26 なので約1/1300という確率でぶつかるわけです。

      どうしても短い名前が競合するなら、smb.conf にて mangling method = hash2 などと指定するといいかも知れません。
      それでもダメなら、ハッシュ値を求める部分に alnum だけでなく # や $ などの記号も含める patch を書いてください。
      親コメント
      • by hsgw (14585) on 2003年06月11日 18時40分 (#335041)
        気になってソースをみたら、A-Z0-9 だけでなく、すでに _-!@#$% の7文字も mangle するのに使うようになっていました。
        いつからこうなっていたのかは追いきれていませんが、最近になっての変更ではなく、少なくとも 2.0.x の時代からそうなっていたようです。
        すなわち、( 26 + 10 + 7 ) ^ 2 なので、約1/1800の確率で名前が衝突する、ということになります。

        また、短い名前(SFN)が動的に生成されるということは、SFNが衝突するだけでなく、長い名前(LFN)を使うアプリケーションAがLFNを変更すると、SFNを使うアプリケーションにもその影響が及ぶ、という問題もあります。

        ちなみに 3.0.0beta1 では mangle method = hash2 になっていますが、hash2 の場合、mangling char パラメータが無視されて常に ~ が使われるようです。
        親コメント
      • typo。

        - A-Z0-9 の 26 * 26 なので約1/1300
        + A-Z0-9 の 36 * 36 なので約1/1300
        親コメント
    • by Anonymous Coward on 2003年06月11日 9時41分 (#334565)

      以下のリンクにある例は現在の最新の日本語版samba-2.2.8aでも再現します。
      http://www.samba.gr.jp/project/kb/J0/0/49.html [samba.gr.jp]

      samba-2.2.5からは新しいオプションを追加すればかなり可能性は減るようです
      http://www.samba.gr.jp/news-release/2002/20020621-1.html [samba.gr.jp]

      今だに8.3形式でファイルを取り扱うアプリはどれくらいあるのでしょう?

      親コメント
      • by Anonymous Coward on 2003年06月11日 10時51分 (#334609)
        >今だに8.3形式でファイルを取り扱うアプリはどれくらいあるのでしょう?

        Windowsでプログラミングしていると、突然8.3形式のファイルを扱うことになって驚くことがあります。
        例えば、ファイルをドラッグ&ドロップすると、ドロップされたアプリが受け取るファイル名は8.3形式で、ロングファイル名が必要な場合は自分で変換しなくてはいけません。
        sambaでファイルサーバを作成した場合、ドラッグ&ドロップでファイルをやり取りするなんてのは日常的に行われる作業になるでしょうが、そのときは危険な8.3形式で扱われている可能性が高いです。

        私は、例え1%以下でも回復不能な事故が起こる可能性があるものは使うに値しないと考えるので、このバグ(仕様?)がどうにか回避可能になるまでsambaを使うことは無いでしょう。

        #間違ってるかもしれないのでAC
        親コメント
        • by Anonymous Coward on 2003年06月11日 11時34分 (#334638)
          >例え1%以下でも回復不能な事故が起こる可能性があるものは使うに値しない

          ならWindowsは使うに値しないと思われ・・・
          親コメント
        • あ、D&Dの場合は8.3を使うんですね。これで長年の謎が解けました。

           下のほーにあるこの問題の可能性を下げるパッチを作ったのは私なんですが、公開しても意外に反響がなくてびっくりしました。
           多分、この問題を認識していない人がたくさんいるのかなと。雑誌の特集とかもこの話をみたことはないし、ドキュメントをよく読めば書いてあるんですが、D&Dで発生する可能性があるはいま初めて分かったし。
           
           ファイル共有はWebDAVとかにうつっていくんでしょうか?今の所、普通にWindowsで使えるWebDAVサーバってあります?
          --
          May the 4th B w/z U
          親コメント
        • > 私は、例え1%以下でも回復不能な事故が起こる可能性があるものは使うに値しないと考えるので、
          > このバグ(仕様?)がどうにか回避可能になるまでsambaを使うことは無いでしょう。

          たまに回復不能な事故がおきる Windows を日々
          • NTFSではまさに,SFNはLFNへの(「への」という言い方は変だが)ハードリンクで実現されています。どのように相互関連づけているかは知りません^^;;
            親コメント
          • ShortとLongの相互変換ができないとマズーなので、SymLinkじゃダメなのでは?

            隠しファイルかなんかでファイル名の対応表を持たせれば解決する気もするんですが、そんなに単純な問題じゃないんでしょうか。
            • by Anonymous Coward on 2003年06月11日 22時28分 (#335249)
              > 隠しファイルかなんかでファイル名の対応表を持たせれば解決する気もする んですが、そんなに単純な問題じゃないんでしょうか。

              samba 1.9.x の時に8+3 名前変形の問題が気になって手を入れたのですが、 かなり無理があるという結論に達しました(解決方法はまだ残っているかも しれないけど)。

              突き当たった問題は samba で共有したディレクトリを NFS やそのホスト 自身のユーザーによってアクセス(作成、削除、名前変更)するのに応じ て、LFN 対 SFN のマッピングも更新しなければ矛盾が生じてしまう事でした。 samba 以外でアクセスしてはダメというルールならば深刻にならずに 済みます。かといって、アクセスの都度 LFN ハッシュの SFN に衝突が 無いか検査しようとすると、ファイル数が多くなればなるほど重くな ります。確かファイル一覧を取ろうとすると N^2 オーダー(N=ファイル数) の処理時間を潰したかな(私の考えが足らないだけかもしれないけ ど)。

              結局 FILEA~xx.EXT の x の文字数と種類を増やして、衝突確率を下げる のが精一杯。確率が 1/1300 と言うが「クラスの中で誕生日が同じ人問題」 の様に実感は結構衝突する。

              (samba を動かしていた) Solaris に Win32 の FindFirstChangeNotification に似た機能が有ればなぁと思いました。

              親コメント
          • Windowsが事故を起こすってのはあくまで経験則でしょ。#334638もそうだけど。
            今回のケースと同列に扱うのは技術者らしいとはいえないなぁ。

            もちろんWindowsにもはっきり判っている(Microsoftも認知している)問題点があるし、それが回避できないなら、ふつうにWindows捨ててるでしょ?
            • by Anonymous Coward on 2003年06月11日 16時34分 (#334908)
              つかWindowsは別な変換ルールを用いているだけで、多対1の変換は同じ為、問題の発生する場所が変わるだけ。
              8.3なアプリを運用しているPureMSなシステムでも運用制限は必要です。

              ではMS版消えるファイルの手順を、とりあえずWin98SEで

              1. エクスプローラで、カラのディレクトリ\temp1\testを作成
              2. 同じく\temp1\test\aaaaaaaaa.txtと\temp1\aaaaaa~1.txt,\temp1\aaaaaa~2.txtを作成
              ※このときaaaaaaaaa.txtとaaaaaa~1.txtの8.3はaaaaaa~1.txt、aaaaaa~2.txtはaaaaaa~2.txtとなること
              3. エクスプローラで、\temp1\aaaaaa~1.txtを\temp1\test\へ
              ※このときaaaaaaaaa.txtの8.3はaaaaaa~1.txt、aaaaaa~1.txtはaaaaaa~2.txtはとなる
              4. DOS窓からcd \temp1\test
              5. DOS窓からcopy ..\aaaaaa~2.txt .
              ※ここで上書きするか聞いてくるのでy
              6. あれ・・・・aaaaaa~1.txtしかない

              見事にaaaaaaaaa.txtとaaaaaa~2.txtが消える(w
              親コメント
        • >私は、例え1%以下でも回復不能な事故が起こる可能性があるものは使うに値しないと考える

          何も使えないな。それじゃ。

          #ある意味、すごいと思う。
          #どんな生活をしているのか是非教えてもらいたい。
          • ノンアルコールビールを飲んだあとには,運転しない。
            何杯ものめば,アルコールビールを1杯以上のんだのと同じ。

            1%以下といってもいろいろあるわな。
        • 1%でもっていうか、今回のは100%発生する問題ですし。
          1回あたりの確率は1/1300でも、事象としては必ず起きるんだからね。
      • by Anonymous Coward on 2003年06月11日 9時49分 (#334573)

        DOS時代に開発された業務アプリを継続して使用している企業は少なくないと思います。

        が、問題は8.3形式でしかファイルを扱えないアプリを使うような環境で、ロングファイルネームを使ってしまう(しかも8.3形式になったときに問題が生じるようなファイル名で)ということにあるのではないでしょうか。8.3形式に収まっているファイル名であれば問題は生じないわけでしょう?

        ロングファイルネームを参照できる環境と、参照できない環境とではファイル名の見え方が違うわけで、問題が生じる以前に気づくと思うのですが...

        親コメント
    • by Anonymous Coward on 2003年06月11日 4時31分 (#334505)
      おっしゃる通り、古いSambaには 数字や似た名前のファイル名が上書きされるバグがあったように思います。
      特に数字のみでのファイル名はかなり危険だったような。
      11111111.dat
      111111111.dat みたいなファイルは上書きされた気がします。
      親コメント
    • クレームっていうか障害報告がちゃんとされているバグであれば
      直されているのでは?
      私は、ファイルが消えてこまったことはないですね。

      エクスプローラ以外から触ったことないし。

      # ソフトに直接触らせるのは怖い
    • これって本当なんですか? 再現性のあるバグだとしたら、sambaの関係者は意図的に隠しているとしか思えないですね。O'ReilyのUsing Sambaにもそんな記述はなかったと思うし。sambaベースのネットワークHDDとかも同種の問題を抱えることになると思いますが、その手の警告はなかったような...

      • by Anonymous Coward on 2003年06月11日 6時50分 (#334522)
        単に Using Samba をきちんと読んでないだけなんじゃあ?
        5.4 ファイル名の短縮 (Name Mangling) と大文字小文字 [samba.gr.jp]から引用
        --
        この規則により、Windows for Workgroups 経由でネットワークにアクセスしないといけない不幸な人も、二つのファイルを区別することが可能になる。Samba は同じ長いファイル名は、常に同じ mangle 名に短縮することに留意すること。Windows ではその限りではない。この方式では、ファイル名の重複の可能性は皆無ではない。しかしその可能性は激減している。
        --
        親コメント
        • 「Samba は同じ長いファイル名は、常に同じ mangle 名に短縮することに留意すること。Windows ではその限りではない」これって、つまりどういうときに障害が発生すると指摘してるの?

          • ロングファイルネームを参照するアプリケーションと、8+3ファイル名を参照するアプリケーションとが、同一ファイルを参照しようとしている。
          • その両者が同時にそのファイルをリネームしようとした。

          ↑が条件になりそうなのはわかるけれど。

          僕の感性では

          • 運用の問題というのは確かだと思いますが、

            ロングファイルネームが短縮されたときにどのように命名されるか理解させるのは骨だから「とにかく8+3でファイル名を決めてください」とレクチャーしませんかね。
            という姿勢ではトラブルはなくならないかと。

            骨でもちゃんと道理を説きましょう。
      • いや、私でも知っているくらいだから
        かなりメジャーな類のバグではないかと…
        http://www.samba.gr.jp/project/kb/
        このあたりにも書いてあるのでは?
    • sambaは業務に使えるシロモノではないということでファイナルアンサー?
  • by moci (11748) on 2003年06月11日 4時38分 (#334507) 日記

    Active Directoryに縁が無い身としては、最大の注目点はBDCをサポートし、BDCからPDCに昇格させて、従来のNT4.0ドメインをそのまま引き継いだPDCとなることでした。日本語のメーリングリストのアーカイブを眺めていますと、あまりそういった関連では開発が進んでいないようにも思えましたが、Major new features:には

    10) Support for migrating from a Windows NT 4.0 domain to a Samba domain and maintaining user, group and domain SIDs

    となっていますね。

    Samba 2.2でpwdump2とsmbpasswd -Sを使った移行がうまくいかなかったもので、どのようにサポートされているのか、とても興味があります。

  • OSX では? (スコア:2, 興味深い)

    by Anonymous Coward on 2003年06月11日 7時00分 (#334524)
    文字コードの変換に iconv() が必要になるのか。
    実装されていないプラットフォームはどうなるんだろ?
    OSX とか、OSX とか、OSX とか。
    • Re:OSX では? (スコア:3, 参考になる)

      by hsgw (14585) on 2003年06月11日 9時30分 (#334561)
      @ITの記事 [atmarkit.co.jp] より引用。
      注:なお、iconv()が存在しないプラットフォームのために、Unicode(UCS-2、UTF-8)とASCIIだけはSamba内部でサポートしています
      だそうですので、UTF-8 な OSX ではいけそうな感じです。が、Samba team の UTF-8 の実装はおそらくバグバグでしょうから、日本語版のようなきめ細かさは期待しないほうがよいでしょう。

      ちなみに、gnu の libiconv を使うのであれば、patch [biglobe.ne.jp] をあててからのほうがよさげ。
      親コメント
    • by Anonymous Coward
      Bruno Haible 氏の libiconv が使えたりするといいかもね。
    • by Anonymous Coward
      > 文字コードの変換に iconv() が必要になるのか。

      CAP/HEXサポートがなくなったのもこの副作用ですね。
      MLや関係者の日記を見ると、大変そうですが。
  • sambaって、ストレージなんですか?
    --

    ----------------------------------------
    You can't always get what you want...
  • by Anonymous Coward on 2003年06月11日 9時49分 (#334572)
    netatalk との連携はどうなるの?
  • by Anonymous Coward on 2003年06月11日 12時22分 (#334678)
    そろそろ、Samba-TNG グループと再合流しても良い頃合かと・・。
typodupeerror

一つのことを行い、またそれをうまくやるプログラムを書け -- Malcolm Douglas McIlroy

読み込み中...