PLEASE USE "WYSIWYG" TO EDIT THIS PAGE

(A button of "WYSIWYG" can be found in the bottom of this page.)

ホームの移動

ホームディレクトリ をAFSに移動します。具体的には

  • 管理者がホームディレクトリ を /afs/cern.ch/user/?/username に設定する
ということを意味します。

これにより、lxplus.cern.chにログインしたときとlxatutXXにログインした場所(=ホームディレクトリ)が同じになります。

この変更を行っても/data/data..., /data/maxi..., condorの利用等は今まで通り行えます。

  1. 古いホームディレクトリ(/home/username/)から必要なファイルを新しいホームにコピーしてください。
    • ファイルをコピーする前に空き容量が十分かどうか ここで確認してください。
      • 新しいホームディレクトリ の容量が足りない場合は ここを参考に増やしてください。最大10GBまで増やせます。ホームの他にワークスペース(/afs/cern.ch/work/...)も100GBまで増やせます。
      • リンク先に書かれている通りデータを置くのにEOSも利用できます。/eos/atlas/unpledged/group-tokyo/users/username ディレクトリに普通のLinuxのコマンド(cp, mv...)でファイル操作ができます。このディレクトリがない場合は、/home/atljphys/eos/bin/eos-showInfo.sh を実行してその内容に従ってディレクトリを作ってください。個人情報やパスワードを含むファイルについては 下記を参考にパーミッションに注意してください。
    • cpコマンドを使う場合は-aオプションを指定しておくと、変更日時やパーミッションも引きつがれます。
    • .bashrcや.sshのように両方のホームディレクトリにあるものについては適宜手でマージしてください。
    • もし上で書かれていることが何のことかよく分からない場合は、古いホームを以下にある方法で丸ごと保存しておいて、何か問題が起きたときだけ古いファイルを参考にするようにしてください。(xとusernameは置き換えてください)
      1. lxatutXXにsshログイン
      2. ここを参考にAFS上に十分なサイズ(>10GB程度)のワークスペースを取得する。
      3. mkdir /afs/cern.ch/work/x/username/private/atutoldhome/
      4. (/home/username/の中のどう考えても必要がなさそうなファイルは消す)
      5. rsync -auvv /home/username/ /afs/cern.ch/work/x/username/private/atutoldhome/
AFSのホームディレクトリはトークンが有効な間だけ見えます。AFSトークンの有効期間は1日です。それ以上ログインしたままだとホームディレクトリが見えなくなります。その時はkinitというコマンドを打ってください。くわしくは ここを参照してください。

AFSのファイル権限はchmodではコントロールできません。 ここを参考に fs コマンドを使う必要がありますが、むやみに設定を変えることはお勧めしません。

  • お勧めの方針:他のユーザーに見せたいものは ~/public/ 以下に置く。ここに置いたとき「読めないよ」と指摘されたら fs コマンドを使って権限を変更する。

データの移動

移行後先ストレージの選択

移行先としてEOSとAFS、そのミックスが選択できます。

EOS: デフォルトではひとり25TBのquotaを切ります。必要があればquotaの変更は管理者と相談の上行います。大きいファイルにパラレルにアクセスするのに適しています。一方ファイルを作ったり消したりするのに時間がかかるので、非常にたくさんの小さいファイルを扱うのは得意ではありません。また、たまに書き込みや削除でエラーがでることがあります。普通のLinuxのコマンド(cp, ls, rm...)で操作できますが、ヘビーな操作をする場合はeosコマンドやxrdcpコマンドを使うことが推奨されています。rootからは直接TFile::Open("root://...")のように開けます。

AFS: ここから100GBのワークスペースをもらえます。普通のファイルシステムとしてアクセスでき、たくさんのファイルを作ったり消したりするのはEOSよりも速くできます。CERNはAFSはなくしていく方針なのでいつまでサービスが続くか分かりません。(ゆくゆくはEOSだけになる?)

ということで、大きなデータセットはEOSに置くのがよいと思います。現状ではスクリプトやログファイルなどを置くワークスペースとしてはAFSを使う方がトラブルがすくないと思います。AFSの容量が足りなくなった場合は、要らないファイルを消すか、しばらく使わないディレクトリを、(tarしてファイル数を減らしてから)EOSに移動してください。

EOSのファイル権限はchmodとEOS ACLのコンビネーションです(詳しくは ここ) 。ACLは ここを参考に設定できますが、むやみに設定を変えることはお勧めしません。念のため他の人に見られたくないファイルはEOSには置かない方がよさそうです。

  • お勧めの方針:他のユーザーに見せたくないものはEOSには置かずに、AFSのホームディレクトリかワークスペースに置いておく、さらにそれらの中のprivateの下は他のユーザーがファイルをリストすることもできない。

AFSワークスペースへのファイルコピー

AFSへのファイルコピーは上記のホームの移動を参考にしてください。

EOSへのファイルコピー

screenに入る

EOSへのファイルコピーは1週間やそれ以上かかる場合もあるのでlxatutXXにログインしてから screen コマンドでセッションに入ってください。screenの使い方は例えば ここを参考にしてください。

kerberosのチケット

EOSへのアクセスにはkerberosのチケットが必要です。有効期間は1日ですが、5日程度ならばパスワード入力なしで延長できます。以下では例として/tmp/krb5cc_xxxxx というキャッシュファイル名を使いますが、xxxxxの部分は自分のユーザーIDで置き換えてください。ユーザーIDは echo $UID で分かります。

1. チケットの取得

$ kinit -c /tmp/krb5cc_xxxxx
$ klist -c /tmp/krb5cc_xxxxx

klistでいつまで有効か(Exires)と、いつまでパスワードなしで延長できるか(renew until)が分かります。

2. screenに入る

$ screen

3. screenのセッションの方で、使うキャッシュファイルを設定 (以下はbashの例)

$ export KRB5CCNAME=FILE:/tmp/krb5cc_xxxxx

4. secreenのセッションで、ファイルのコピーを開始 (コピーのコマンドは次の章で説明します)

ファイルのコピーを開始したら、screenのセッションから抜けても大丈夫です。

5. チケットの延長の設定をする。(screenのセッションとは別のターミナルでもOK)

$ export EDITOR="vim -X"     ("emacs -nw" if you prefer it)
$ crontab -e

で例えば、

0 */6 * * * /usr/sue/bin/kinit -R -c /tmp/krb5cc_xxxxx

としておくと、6時間おきに、延長されます。

6. チケットを作り直す。(screenのセッションとは別のターミナルでもOK)

renew untilになる前にまた

$ kinit -c /tmp/krb5cc_xxxxx
$ klist -c /tmp/krb5cc_xxxxx

をして、取り直してください。これはファイルのコピーが終わるまで続ける必要があります。

ファイルのコピー

eosコマンド、またはrsyncでコピーします。(xrdcpや他の方法に慣れているなら、そちらでもいいと思います) eosコマンドだとコピー元のsymbolic linkを実際のファイルに置き換えてコピー先に送られます。一方rsyncだとsymbolic linkとして送ることができます。後者をしたい場合はrsyncを、そうではない場合はeosコマンドを使うことをお勧めします。上で書いたように、コピーに長くかかることがあるのでscreenの中で行うことをお勧めします。また、あとでエラーが出てないかをチェックするために出力をログファイルにダンプしておくことをお勧めします。エラーが起きた場合でも下記の方法だと同じコマンドを再び実行することでコピーできなかったファイルだけが送られます。

eosコマンドの場合

コピー元のディスクを持っているサーバーから直接送るのが速くて、他のユーザーへの影響も少ないのでいいと思います。例えばdata3の中のファイルをコピーする場合は、lxatutXXで grep data3 /etc/auto.data とするとそれを持っているサーバーがlxatutd009で、実体は/export/data3 だということが分かります。 ただデータサーバーは古いOSの場合があるので、eosコマンドが無かったり、何か問題がある場合は適当なログインノード(lxatutXX)から送っても構いません。

$ export EOS_MGM_URL=root://eosatlas.cern.ch
$ eos cp -r -p -P --atomic -n -S -k /path/to/copy_source/ABCDE/ /eos/atlas/unpledged/group-tokyo/users/username/ 2>&1 | tee -a /path/to/logfile.txt

このコマンドで、/eos/atlas/unpledged/group-tokyo/users/username/ABCDE/ というディレクトリが作られてABCDEの中のファイルが全てコピーされます。

rsyncコマンドの場合

データサーバはEOSをファイルシステムとしてマウントしていないものが多いので、rsyncを使う場合はログインノード(lxatutXX)から行ってください。

$ rsync -auvv /path/to/copy_source/ABCDE/ /eos/atlas/unpledged/group-tokyo/users/username/ABCDE/ 2>&1 | tee -a /path/to/logfile.txt

このコマンドで、/eos/atlas/unpledged/group-tokyo/users/username/ABCDE/ というディレクトリが作られてABCDEの中のファイルが全てコピーされます。

-- RyuSawada - 2020-09-24

Edit | Attach | Watch | Print version | History: r10 < r9 < r8 < r7 < r6 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r10 - 2020-10-11 - RyuSawada
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Main All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback