pandazx's blog

データ分析など雑多な技術ブログ

Ubuntu14.04でメニューが表示されなくなった

再起動してログインしたら、急にメニューバーやランチャーが表示されず、 デスクトップ上のフォルダやファイルのアイコンだけ表示される状態になり、 ターミナルも起動できなくて困った。(Ctrl + Alt + Tでも起動できず。。。)

ググると、色々とやりようはあるようだが、私は次の方法で復旧。

sudo dpkg-reconfigure gdm

で起動して、gdmが選択されていたので、lightdmに変更。マシン再起動で表示されるようになった。

参考にしたサイト

以下のサイトの手順では、私の環境でgnomeやgconftoolを使っていなかったので、復旧できなかった。

Bluetooth対応ケーブルありイヤホンTT-BH16

通勤時に使うBluetooth対応イヤホンを検討していたが、AirPodsなどのケーブルなしは見送り、 安価なケーブルありイヤホンを購入した。 知人の口コミ情報を元に、タオトロニクスのTT-BH16(約3000円)に決定。

iPhone付属のイヤホンを使っていたので、私は音質を重視しない人だが、 実際に使ってみた感想は以下の通り。

  • 家の中でスマホを置いて別の部屋に行っても、音質に変化なく聴ける
  • 混雑する通勤電車で使っても音切れはない
  • ケーブルが絡まなくなるのがイイ!
  • 充電が必要になるが、スマホの充電と同じで慣れれば苦ではない

以上、Bluetoothイヤホンに期待していたことは満たされたが、若干、気になる点もある。

  • スポーツイヤホンなので仕方がないが、イヤホンからツノみたいに生えている部分を、耳にフィットさせるのが手間
  • カナル型で今まで気になったことはなかったが、歩いていると、自分の足音がドンドンと聞こえる

2017.3.9 追記

耳がイヤホンにフィットするようになったのか、1ヶ月ほど使用したところ、気になる足音は聞こえなくなった。

今は快適そのものです。

Rubyの2次元ハッシュの定義

本当にタダのメモ

hash = Hash.new{|h,k| h[k] = {} }

# 以下のように値を代入できる
hash["a"]["b"] = 1

# 上記とは別に、以下のように、存在しなければ、都度、ハッシュを定義してもよい
# if文でチェックする必要がないので、シンプルに書ける
hash["a"] ||= {}

参考記事

エンジニアとして世界の最前線で働く選択肢、を読んで

シリコンバレーで働く日本人エンジニアの就活事情に興味があったので。

タメになった話

  • 就労ビザについて
  • 米国で外国人として生きるということ
    • デメリット面にもフォーカスした実直な内容だと思う
  • エンジニアとして雇用の流動性はあるが、シリコンバレーでも50才を超えると、転職は難しくなる
  • エンジニアのキャリアのトップはフェローで、マネジメントはバイス・プレジデントだが、フェローの方が狭き門であり、一般的にはシリコンバレーでもエンジニアからマネジメントに移行する人が多い
    • 年齢と共に技術習得が難しくなるから
  • 面接に対する心構えやコーディング対策
    • 面接を受ける立場、面接官としての立場からのアドバイ
    • 1問だけ例題がある
  • 会社事情による解雇(レイオフ)は悲観的になることはない
    • 著者の経験による具体的な話が参考になる

psycopg2.OperationalError: asynchronous connection attempt underway

pythonで並列処理 - pandazx's blog というブログを以前、書いたが、 並列処理の中でPostgreSQLにSELECTを投げる処理をした時に以下のエラーが発生した。

psycopg2.OperationalError: asynchronous connection attempt underway

このエラーは並列処理前にDBに対してコネクションを作成しておき、 並列処理の中でそれを使いまわした際に発生する。

解決策としては、並列処理の各処理の中でコネクションを作成すればよい。

接続処理を1回にしようとしたのだが、ダメらしい。

Ubuntu14.04にVNCリモートログインで動画再生できない

まず、Ubuntuは標準では、著作権の問題でコーデックがないため、mp4などの動画が再生できない。 そのため、コーデックをインストールする。

sudo apt-get install ubuntu-restricted-extras

これでローカルからログインすれば再生できる。 しかし、まだ、VNCでリモートログインした状態からは再生できなかった。

これは標準の動画再生プレイヤーの問題のようで、VLC media playerを使えば再生できる。

sudo apt-get update
sudo apt-get install vlc browser-plugin-vlc

参考:UbuntuにVLC media playerをインストールする方法 【3種類】 – 某氏の猫空

CentOS7にPostgresql9とPostGISをインストール

今更な内容だが、作業ログとして残す。

前提

OS: Centos 7

インストール

sudo yum install epel-release
sudo yum install -y proj proj-devel proj-epsg
sudo yum --enablerepo=epel install gdal
sudo yum install postgis

# 順番が前後するが、以下でPostgresql Serverをインストール
sudo yum install postgresql-server

# DB初期化
sudo postgresql-setup initdb

# サーバ起動時の自動起動
systemctl enable postgresql

CentOS 7 なので、起動停止にはsystemctl を使う

sudo systemctl start postgresql
sudo systemctl status postgresql
sudo systemctl stop postgresql

参考にしたサイト:CentOS 7にPostgreSQL最新版をインストール - 働きたくないゆとりの備忘録

ログイン

次に、ログインできなかったので、以下を参考に対応。

peer認証の関係でpsqlログインできない時の対処法 - Qiita

まず、postgresユーザのパスワード設定

sudo su postgres -c 'psql --username=postgres'
ALTER USER postgres with encrypted password 'your_password';

次に、アクセス権の設定を変更

/var/lib/pgsql/data/pg_hba.conf の

host all all ::1/128 ident

host all all ::1/128 md5

に変更して、Postgresql を再起動

psql -U postgres -h localhost -W でログイン

他サーバからのログイン

デフォルトでは、localhost からしかログインできない。

/var/lib/pgsql/data/postgresql.conf の

listen_addresses = '*' ←に変更
port 5432 ←コメント解除

Postgresql を再起動

psql -U postgres -h xxx.xxx.xxx.xxx -W でログイン

PostGISの動作確認

create database test;
\connect test
create extension postgis;
select PostGIS_full_version();

これでバージョンが表示されればOK

参考:CentOSにPostGISをyumでインストール(CentOS7.2, PostgreSQL9.5, PostGIS2.2) - Qiita