狠狠撸
Submit Search
あひるに焼かれた话と今后のおーぷん万叶について
?
1 like
?
2,619 views
Masahiko Hashimoto
Follow
东海道らぐサーバー更新と、かな汉字変换「骋别苍箩颈」の今后についてです。(2016?9?3)
Read less
Read more
1 of 27
Download now
Download to read offline
More Related Content
あひるに焼かれた话と今后のおーぷん万叶について
1.
あひるに焼かれた話と 今後のおーぷん万葉について 2016/9/3 東海道らぐオフ@横浜 はしもとまさひこ
2.
今日は初の方もいらっしゃるので自己紹介 ● 東海道らぐ関東の案内人(元名古屋案内人) – 東海道らぐ5周年!!! – サーバー管理人…からは脱却する予定 ←今日のお題 ● ちびぎーこ保護者会(別名:日本openSUSEユーザ会)の人 –
こちらも最近は???^^;;; ● 最近は日本語入力についていろいろ勉強中。 – 今日のお題その2
3.
近況報告(1) ● 引っ越しました!!! – 引っ越し前: ● 2LDK
約45平米 ● 2階で目の前は家! ● 最寄り駅 徒歩25分 ● 家賃 75,000円 – 引越し後: ● 3DK 約50平米 ● 4階で見晴らし良好!(但しエレベータ無し) ● 最寄り駅 徒歩8分 ● 家賃 80,000円 もちろんめちゃくちゃ楽!! 引越しコストが高かったけどorz
4.
近況報告(2) ● 東海道らぐサーバ(Web &
ML)も引っ越しました!! – 引越し前: ● Ubuntu 12.04 LTS(←インストール時に間違えたんじゃいw) ● Apache 2.2 ● Mailman – 引越し後: ● Ubuntu 16.04 LTS (←これで5年は使える!!w) ● Apache 2.4 ● Mailman
5.
そもそも自分の引っ越しで手一杯なのに サーバーまで引っ越しとか きついっちゅーねん!!!
6.
全ての元凶 ↓
7.
あ、あひる焼き。 名前: あひる(焼き) 職業: (たぶん)大学生 生息地:
名古屋の某大学 わからない方は 「あひる焼き」でググッていただけたら。。。
8.
事の発端は… だがしかし、そもそもOSはそろそろEOLを迎える → どうせならOSごと再インストールだな → あひる「Let’s Encryptまだ??」と催促 → 「ちょっと待て!」と応戦(すること約半年w) → …あれこれやるうちに8月にやることにした → が、その8月に自分自身の引っ越しとなったw → 大炎上!(^^)! 東海道らぐサーバーに Let’s Encryptを導入しましょう!!!
9.
今回の引越し作業でハマったこと ● mailmanがDebian/Ubuntu系でUTF-8対応 → 文字化けのせいでメールが送信できない!?? ● Apache2.4系になった → 「Require
all granted」を使いましょう!! → mailman付属のapache.confの置き場所が変更? ● その他 – あひると最後の攻防(謎)
10.
1. mailman文字化け対応(1) mailman(MLサーバー)からメールを送信しようとすると 下記のログを残して落ちてしまう… Aug 21
16:10:07 2016 (13405) Uncaught runner exception: 'utf8' codec can't decode byte 0xc5 in position 0: invalid continuation byte Aug 21 16:10:07 2016 (13405) Traceback (most recent call last): File "/var/lib/mailman/Mailman/Queue/Runner.py", line 119, in _oneloop self._onefile(msg, msgdata) File "/var/lib/mailman/Mailman/Queue/Runner.py", line 190, in _onefile keepqueued = self._dispose(mlist, msg, msgdata) File "/var/lib/mailman/Mailman/Queue/IncomingRunner.py", line 130, in _dispose more = self._dopipeline(mlist, msg, msgdata, pipeline) File "/var/lib/mailman/Mailman/Queue/IncomingRunner.py", line 153, in _dopipeline sys.modules[modname].process(mlist, msg, msgdata) File "/var/lib/mailman/Mailman/Handlers/CookHeaders.py", line 226, in process i18ndesc = uheader(mlist, mlist.description, 'Reply-To') File "/var/lib/mailman/Mailman/Handlers/CookHeaders.py", line 68, in uheader return Header(s, charset, maxlinelen, header_name, continuation_ws) File "/usr/lib/python2.7/email/header.py", line 183, in __init__ self.append(s, charset, errors) File "/usr/lib/python2.7/email/header.py", line 267, in append ustr = unicode(s, incodec, errors) UnicodeDecodeError: 'utf8' codec can't decode byte 0xc5 in position 0: invalid continuation byte Aug 21 16:10:07 2016 (13405) SHUNTING: 1471763406.166946+da420da292e58a12f0210c1f63f729395700e571 落ちた???
11.
1. mailman文字化け対応(2) 肝はこれですね↓ UnicodeDecodeError: 'utf8'
codec can't decode →どうやらmailmanのWeb設定画面で 文字化けが発生していることが原因らしい。。 (え、Web画面の文字化けが原因でメール送信できないの??) – LILOの西山さんのブログを参考に Web設定画面の文字化けを修正しました。 http://blog.n-z.jp/blog/2016-04-30-mailman-error.html (ありがとうございました?!!!)
12.
2. Apache2.2→2.4対応 (1) Apacheのアクセス制限の書式が変わった 知ってる方も多いと思うのでここは簡単に。 (詳しくはググってください^^) –
Apache2.2: Order allow,deny Allow from all ↓ – Apache2.4: Require all granted LPICでも出題される基本的な箇所 …が、仕様変更したのね。。。
13.
2. Apache2.2→2.4対応 (2) mailman管理画面にアクセスしようとすると 「404
Not found」が返ってくる (そこはせめて「500」だろ…orz) ※このせいでmailmanのWeb設定画面が表示できなかった →どうやらアクセスしようとするとApacheが落ちてる… mailmanの付属ファイル = apache.confの 置き場所が変わった!!! Ubuntu 12.04 : /etc/apache2/site-available → Ubuntu 16.04 : /etc/apache2/conf-available 以前はsite-availableに置いて普通に動いてたけど そこに置くとApacheが落ちるようになったとか …豪快ですねw(てか気づかないよ?!!) 原因
14.
というわけで東海道らぐ鯖の今後。 ● Let’s Encryptに対応 →SSLがオレオレ証明書ではなくなりました! →東海道らぐWebページが常時SSLに! あひるさんが一昨日対応済み ● 今後はおいらと、しまださんと、あひるさんで サーバーメンテを行います。。。(たぶん)
15.
めでたしめでたし。
16.
…というわけで、本日の本题です。(ぉ
17.
おーぷん万葉の今後 (をざっくりと。) 2016/9/3 東海道らぐオフ@横浜 はしもとまさひこ
18.
7月末のOSC京都にて… かな漢字変換「Genji」のrc phase1をリリース! …が、今回は「まず動くこと」が第一だったので 本当に動くくらいの機能しかなかったw そもそも変換のための辞書ファイルを 行きの新幹線で作成してる始末だったので まともな変換ができるわけなかったorz
19.
「Genji rc phase1」の実力 ● できたこと –
当然「わたしのなまえはなかのです」は変換可能 – 「あひるやき」も変換できた ● できなかったこと – 「きょうと」が変換できない ←致命的!!! – 「おおさか」が「大坂」になってしまう
20.
ところでどんな変換アルゴリズムだったのか? 純粋に「文節区切りの単語n-gram」です と話しただけでひよわさんは理解できたっぽい(さすがだ 例: 「私の名前は中野です」 → これを単語区切りにするとこうなります 「私」「の」「名前」「は」「中野」「です」 → で、単語n-gramなのでこうなります 「私の」「の名前」「名前は」「は中野」「中野です」 → ただし、文節でデータを区切るので 「私の」「名前は」「中野です」 この単位で辞書データに登録されていました 「私」が来た場合に、「の」はどれくらいの確率で来るのか? というのが辞書データに載っています
21.
Genji rc phase1の全体像 ●
辞書作成ツールを作る → 「Kasuga」 / 「Fujitsubo」 – 形態素解析器: mecab + naist-jdic ● 変換ライブラリ作成 – ローマ字→ひらがな変換 : 「aoi」 – ひらがな→漢字変換 : 「murasaki」 ● 辞書検索ライブラリ – オープンソースライブラリの「ux」を使用
22.
1. 辞書作成 「Kasuga」 – Mecab
& naist-jdic を利用して形態素解析を行い 文節単位に区切って、データをSQLiteで保存 – この際に単語n-gramの確率も保存します 「Fujitsubo」 – SQLiteで保存されたデータをGenjiで使えるように変換 – OSSライブラリuxを利用して辞書を作成します
23.
2. 変換処理 「aoi」 – ローマ字→ひらがな変換のライブラリ –
独自のTrie実装!(前に東海道と小江戸オフそれぞれで話したかも) 「murasaki」 – ひらがな→かな漢字変換のライブラリ – uxで保存されたデータを取り出して変換する(わりとえぐい実装orz
24.
OSC京都にいなかった人のために ささっと実演。 (おそらく時間ないでしょうし)
25.
Genjiの今後 OSC東京秋&KOFで「rc phase2」をリリース(予定) 「rc phase2」で入るもの: –
同音異義語対応 ※「大坂」変換問題… – 係り受け対応 ←これがメイン!!!
26.
というわけで! OSC東京秋 & KOF
を お楽しみに? (てか間に合うのか?)
27.
ご清聴、ありがとうございましたm(_ _)m
Download