■ユーザの追加、移行順序について 簡単に以下の3つの状態がある。 1.useraddでGIDやグループを指定するには予めそのグループが存在していなくてはならない。 2.useradd/passwd/usermmodでユーザの追加/変更 3.shadowを移行するには、pwunconv/pwconvで平文、ハッシュ化を行う必要がある。 ■blockdiagはnwdiagの時に一緒に導入した。 chrootのwheezy/sidにnwdiagを導入する http://d.hatena.ne.jp/labunix/20130321 ■blockdiagの「-T svg」で出力すると、 LibreOffice3.6でフォントや色を修正出来る。 また、blockdiagの「-f」オプションでもフォントの指定が出来る。 ■blockdiagで日本語を使いたい。 Lenny/SqueezeはIPAフォントがインストールされなかった。 blockdiagもパッケージが無いので、Wheezy/Sidのどちらかを使う。 blockdiagで使える文字コードはUTF-8のみ。 $ apt-cache search OpenType | grep IPA fonts-ipaexfont - 日本語 OpenType フォント - IPAex フォント (IPAex ゴシック・明朝) fonts-ipaexfont-gothic - 日本語 OpenType フォント - IPAex フォント (IPAex ゴシック) fonts-ipaexfont-mincho - 日本語 OpenType フォント - IPAex フォント (IPAex 明朝) fonts-ipafont - 日本語 OpenType フォントセット - IPA フォント fonts-ipafont-gothic - 日本語 OpenType フォントセット - IPA ゴシックフォント fonts-ipafont-mincho - 日本語 OpenType フォントセット - IPA 明朝フォント fonts-ipamj-mincho - 日本語 OpenType フォント - IPAmj 明朝フォント $ for list in ~/cifs/[slw]*;do sudo chroot "$list" apt-get install -y fonts-ipa*;done $ for list in ~/cifs/[slw]*;do \ echo "$list]" | sed s%.*/%"["%g; \ sudo chroot "$list" dpkg -l | grep ^ii | grep "fonts-ipa" | awk '{print $2}'; \ done [lenny] [sid] fonts-ipaexfont fonts-ipaexfont-gothic fonts-ipaexfont-mincho fonts-ipafont fonts-ipafont-gothic fonts-ipafont-mincho fonts-ipamj-mincho [squeeze] [wheezy] fonts-ipaexfont fonts-ipaexfont-gothic fonts-ipaexfont-mincho fonts-ipafont fonts-ipafont-gothic fonts-ipafont-mincho fonts-ipamj-mincho ■例えばttfのゴシックフォントは下記ディレクトリにある。 $ for list in ~/cifs/[slw]*;do \ echo "$list]" | sed s%.*/%"["%g; \ sudo chroot "$list" dpkg -L fonts-ipafont-gothic 2>&1 | grep ttf; \ done [lenny] [sid] /usr/share/fonts/opentype/ipafont-gothic/ipagp.ttf /usr/share/fonts/opentype/ipafont-gothic/ipag.ttf [squeeze] [wheezy] /usr/share/fonts/opentype/ipafont-gothic/ipagp.ttf /usr/share/fonts/opentype/ipafont-gothic/ipag.ttf ■結局以下では日本語は使わなかった。 $ cat pass2.diag blockdiag { orientation = portrait; A1 [label = "/etc/group"]; B1 [label = "groupadd"]; C1 [label = "/etc/passwd"]; D1 [label = "useradd"]; E1 [label = "passwd"]; F1 [label = "usermod"]; A2 [label = "/etc/shadow"]; B2 [label = "pwunconv"]; C2 [label = "/etc/passwd"]; D2 [label = "pwconv"]; A1 -> B1; A1 -> C1; C1 -> D1 , E1 , F1; A2 -> B2 -> C2 <- D2; D2 -> A2; } $ blockdiag -T png pass2.diag ■指定するなら、例えば以下のようになる。 $ blockdiag -T png pass2.diag -f /usr/share/fonts/opentype/ipafont-gothic/ipag.ttf ■グループの存在確認は順序としてだけで、ユーザ情報の操作なので、 結局下記のような、2種類のフローにした。