2017年10月21日土曜日

E200HA買った。ubuntuで音が出ない場合の解決方法

E200HAのサウンドチップはchtcx2072x
これを鳴らすカスタムカーネルがある。

ありがたいことにgithubでスクリプトを公開してくださる神がいたので簡単にインストールできた。

git clone して

e200ha_with_sound.sh

を実行すればインストールから再起動まで勝手に進む。
音も出るしキーボードも問題ないし他のカーネルと比較しても一番安定している。
ありがてぇ、ありがてぇ。

おわり


一緒に買ったもの

グレア液晶なので反射防止フィルムは必須。




持ち歩き用のかばんはこれ
ノートPCはサイズがギリギリで少々入れづらい。
もともとの用途はカメラバッグなのでクッション材が入っており、分厚い参考書やらペットボトルやらノートPC以外の荷物もたくさん入るので全体で見ればかなり気に入っている。
安いし。

2016年5月21日土曜日

Bitnami Redmineの更新でエラー

BitnamiRedmine3.1から3.2へのアップグレードがすんなりいかなかったのでメモ。
3.1→3.2固有の問題とかじゃなく初歩的な話。

現象:
3.1でダンプしたsqlファイルを3.2でリストアした所、Redmineのログイン画面は表示されるがログインするとinternal error500を吐く。おえー
(普通の人はブラウザでエラー500見る前に解決するだろうから現象とは言いづらい)

結果:
migrate時にエラー表示されたデータベーステーブルを3つほど削除してしたら直った。

具体的内容:
過去2回のアップデートをしており自前の手順メモと同じ手順で行ったらだめだった。
とりあえずBitnamiRedmineの公式wikiを覗いたらデータベースを一旦削除して再度作成してリストアするように記されていた。自前のメモに書いてないし、昔はこんな記述なかったような気がする。
多分これだろうとおとなしく記載通りにやってみるが変わらず。なんでやねん。

仕方なく面倒で読み飛ばしていたターミナルのメッセージを一つづつ読んでみると

ruby bin/rake db:migrate RAILS_ENV=production
する際におもいっきりエラーが出ていた。

「Mysql2::Error: Table 'roles_managed_roles' ほげほげじゅげむじゅげむ.....」

とエラーのテーブル名が出ているので、別タブでmysqlに入りテーブルの中身を確認する。

mysql > use bitnami_redmine

でbitnami_redmineに入り、

mysql> select * from roles_managed_roles; 

で確認するとテーブルは空だったので

mysql > drop table roles_managed_roles;

で、テーブルを削除する



元のタブでmigrateを再度行うと、今度は別のテーブルでエラーが出た。
同じようにテーブルの中身を確認して削除する作業をエラーが出なくなるまで繰り返す。
最終的に削除したテーブルが再度作成され、完了となる。

あとはいつも通りプラグイン向けに
bundle install --without development test postgresql sqlite --no-deployment
bundle install --without development test postgresql sqlite --deployment
ruby bin/rake redmine:plugins RAILS_ENV=production
を叩いて、(プラグイン用のテーブルでも同様のエラーが出たのでこちらのテーブルも再構築した)
ruby bin/rake tmp:cache:clear
ruby bin/rake tmp:sessions:clear
して終了

正常にアクセスできた。めでたしめでたし。

2016年2月12日金曜日

cronでmp3ファイルが鳴らない(mpg321)

ちょっとしたアラームが欲しかったのでcronでmpg321を叩いたけど鳴らなかった。
ターミナルで直接コマンドを打つと鳴るのにcronでは鳴らない。

結論:オーディオデバイスを明示的に指定する


00-59 * * * * /usr/bin/mpg321  /home/hogehoge/hoge.mp3


00-59 * * * * /usr/bin/mpg321 -a hw:0,3 /home/hogehoge/hoge.mp3

これで鳴った

オーディオデバイスの調べ方

~$ aplay -l

で表示される

**** ハードウェアデバイス PLAYBACK のリスト ****
カード 0: HDMI [HDA Intel HDMI], デバイス 3: HDMI 0 [HDMI 0]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0
カード 0: HDMI [HDA Intel HDMI], デバイス 7: HDMI 1 [HDMI 1]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0
カード 0: HDMI [HDA Intel HDMI], デバイス 8: HDMI 2 [HDMI 2]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0
カード 1: PCH [HDA Intel PCH], デバイス 0: ALC283 Analog [ALC283 Analog]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0

から鳴らしたいものを選択する
今回のように「カード0:デバイス3」なら「hw:0,3」の様に記述する

2015年12月21日月曜日

RedmineにGmailを設定して534-5.7.14が出る場合の対処法

結論からいうと
対象Googleアカウントの2段階認証を有効にして、アプリパスワードで認証させる。

理由

2014年夏ごろ、GmailはOAuth 2.0非対応のメーラーからの認証を「最新のセキュリティ標準を満たしていないアプリ」として拒否する仕様に変わったらしい。

534-5.7.14は、

SMTP応答コード
534 認証メカニズムが弱すぎる
(引用:SMTP応答コード)

との事らしい。知らんけど。

解決策

  • OAuth2.0対応のメーラーを使う
  • 2段階認証を有効にしてアプリパスワードを使う
  • 安全性の低いアプリのアクセスを許可する(非推奨)

実質的にRedmineでGmailを使う場合は2段階認証必須となっている。
これが、この記事を書いた直接の理由。


設定方法

まず、Gmailアカウントの2段階認証を有効にしてアプリパスワードを作る。
手順は下記リンク
Googleアカウントヘルプ:アプリパスワードでログイン

アプリパスワードを取得したらredmineのconfiguration.ymlに次のように記述する。

default:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      enable_starttls_auto: true
      address: "smtp.gmail.com"
      port: 587
      domain: "smtp.gmail.com"
      authentication: :plain
      user_name: "アドレス@gmail.com"
      password: "作成したアプリパスワード"

ここで、Bitnamiユーザーかつ、「正直、見様見真似でやっている。ぶっちゃけ右も左もよく解らない」というユーザーが注意すべきこと。
configuration.ymlにはじめから設定例が記述されているので、それに書き足しがちだが、設定例が多数コメントインしているので、上記設定だけを記述すること。
(ちなみに、本家Redmineではconfiguration.ymlが初期状態で存在せず、管理者が必要に応じて作成する。)

以上。
あとはapacheを再起動すればメールが正常に遅れているはず。少なくとも私の環境(Bitnami Redmine3.1)ではこれでOKだった。
参考までに、アプリパスワードが間違ってるとエラー応答コードが534-5.7.9になる(うろ覚え)