最近ThunderbirdでPDFを開くと、Thunderbird内のビューワーで表示されるようになった。動きとしてはPDFをFirefox内で表示するのと同じ。自分は別のビューワーで見たいので設定変更した。
続きを読む ThunderbirdのPDFの開き方タグ: ubuntu
ubuntu 18.04でEmoji(絵文字)Font
Raspberry pi2 B OSインストール(ubuntu)
折角Raspberry pi2 買ったのでOSインストール方法など。。。
Raspberry pi2 だけじゃなくてpi Bとかでも同じだけど、ubuntuだけじゃなくて他のLinuxでも同じだけど
Linuxを母艦にして、Raspberry pi にOSをインストールする方法。
作業はubuntu 14.04でやってます。SDカードスロットもしくはSDカードリーダーが必要です。
chromecastを買ってみた
なんだか日本で発売になってから結構時間が経ってたようで、既に話題性もさほどなさそうだけど、chromecastを買ってみた。
まー。安いし。失敗してもそんな痛くない。
こいつでなにが出来るかって言うと、テレビのHDMI端子に接続して、動画や音楽の再生が出来るってすぐれもの。
基本的には、クラウド系の動画サービス(Google Play ムービー& TV とか dビデオ とか)を、テレビで再生させるためのもの。
ただ、自分はそういったサービスはまず使わず、ローカルに保存している動画を再生したいので、購入前に調べたところ、DLNAの動画も再生出来るとのこと。それなら自分でも結構使い道ありそうなので買ってみた。
動画の形式はかなり制限があり、ほぼH.264だけと思っておいた方がよさそう。
最近はH.264のみだからいいのだが、古い動画とかだと別の形式だったりするのでそうなると再生出来ない。
まー。そこは今までどおりノートPCを直接テレビにつなげばいいのでそんなに気にしないことにする。
基本的には、HDMIに接続して、Android端末からセットアップを行う。セットアップは非常に簡単だが、自分の環境では、WI-FIが,802.11aを使っていたため、802.11gに切り換えないとうまくいかなかった。802.11aなんて世界的に見ればマイナーでしょうから仕方がない。
セットアップが終われば、android端末から、動画をchromecastに転送するだけ。ただ、androidアプリ側で対応している必要があるので、転送出来るアプリはかなり限られる。まず動かしてみたいだけなら、youtubeが一番簡単だと思う。
で、自分のやりたい、家の中にあるDLNAサーバの動画再生だが、DLNAをchromecastに転送出来るアプリとしては、使ってみた感じ以下がおすすめ。
UIは日本語化されてないけど、日本語のファイルも普通に読めるし、やりたいことは出来る。
で、次にお勧めなのが
こちらもUIは英語だが普通に使える。しかも上のアプリでは出来ないファイル共有からの再生も出来るすぐれもの。NASとかに入っている動画も再生出来るので、DLNAサーバいらず。
ただ、自分の場合は以下の点でBubbleUPnPの方を使うことにした。
- NAS(CIFS/SMB)に置いてあるファイルは、形式が古いのでそもそも再生できない。(完全に個人的な理由)
- LocalCastだとファイル名が省略されてしまい、長いファイル名だと動画を識別出来ない。(設定があるのかもしれないが見つからなかった)
- LocalCastはAndroidの通知領域に常駐しない。(アプリを起動し直せばいいだけだが、ちょっと面倒)
こんな感じ。
当分はBubbleUPnP一択で行くと思う。
ちょっと不満な点を上げると、早送り、巻き戻しが微妙。デジタルデータだとある程度仕方がないのかもしれないが、シークバーで操作するのがどうも自分の思うところに行かない。早送りボタンを長押しすると30秒(変更可)進めたり出来るのだが、ちょっとストレスがあって使いにくい。アプリかchromecastかはたまたDLNAサーバなのか分からないが、この点だけはちょっと不満。
まーでも全体的には使えるし、何より安いので大変満足している。
fileもしくはDISKを完全消去する(shred)
こんなコマンドあったんですね。
しかも標準コマンドで。ubuntuだとcoreutilsに入っている。
まー。dd使うから別にこのコマンド無くてもいいっちゃいいが、
知っといて損はないまず。たぶん忘れるけど。
ファイルを消す場合。
1 2 3 4 5 |
$ shred --remove foobar.txt or $ shred -u foobar.txt |
オプションを付けないと、ファイルは残るが中身が破壊される。
普通の削除と何が違うかというと、削除前にランダムなデータを書き込んでいること。
「HDD ヒステリシス」 とかで検索すると理由が分かると思う。
HDDを消す場合
1 |
$ sudo shred -n 3 -v /dev/sdd |
上のオプションは、3回書き込んで、進捗を表示する。
まーこのコマンド知らなくても、ddで同じようなことは出来る。
ランダム書き込み
1 |
$ sudo dd if=/dev/urandom of=/dev/sdd |
ゼロフィル
1 |
$ sudo dd if=/dev/zero of=/dev/sdd |
ubuntu 14.04 を無線LANアクセスポイントにする
表題のままなのだが、ubuntu 14.04 を無線LANアクセスポイントにしてみた。
無線LANルータが格安で販売されている今日このごろに、なんでこんなことやってるんだろというツッコミは後にして、前提条件など。
- OSはubuntu 14.04 でデスクトップ版です。
- 無線LANは、過去にamazonで買った格安のこいつ(WLI-UC-GNM)
激安だけど、802.11nまで対応していたはず。期待はしないけど。
- モードはブリッジモード。LANと別セグメントにしたくないから。
- ノートPC1台つながれば良いので、MACアドレス制限とか、ステルスSSIDとかでやってみる。
設定などなど
NetworkManagerを止める
後の方に気付いたけど、最初に止めた方が無難。
Desktop PCで、固定IP運用なので、そもそもこいつは必要ない。なので、NetworkManagerを止めて、手動での設定に移行する。
まず動いているか確認
1 2 |
$ ps ax | grep Net NetworkManagerってプロセスがいるか確認 |
いたら止める。
1 |
$ sudo stop network-manager |
自動起動を止める。
1 |
$ echo "manual" | sudo tee /etc/init/network-manager.override |
今は、こんな方法なんですね。
必要パッケージをインストールする
1 |
$ sudo apt-get install bridge-utils hostapd |
ブリッジのやつと、アクセスポイントのやつ
Network設定を手動に移行する
自分の場合は、既に手動になってた(NetworkManagerは起動してたけど)が念の為確認。
こんな感じの設定、ブリッジ設定もやってます。ミスるとネットワーク繋がらなくなるので要注意。設定終わったら再起動しといた方が無難。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
$ sudo cat /etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet manual auto br0 iface br0 inet static address 192.168.xxx.20 network 192.168.xxx.0 netmask 255.255.255.0 broadcast 192.168.xxx.255 gateway 192.168.xxx.1 dns-domain example.com dns-nameservers 192.168.xxx.1 bridge_ports eth0 bridge_stp off bridge_fd 0 bridge_maxwait 0 |
無線LAN(wlan0とか)のブリッジは、hostapdがよろしくやってくれるのでここでは設定しない。
無線LAN(WLI-UC-GNM)を挿す
別にいつでもいいけど。iwconfigでwlan0(無線LANが1つの場合)が見えてればたぶんOK。
ドライバーとかもよろしくやってくれるはず。
1 2 3 4 5 |
$ iwconfig wlan0 IEEE 802.11bgn Mode:Master Tx-Power=20 dBm Retry long limit:7 RTS thr:off Fragment thr:off Power Management:on |
ドライバっぽいやつら
1 2 3 4 5 6 7 8 |
$ lsmod |grep rt2 rt2800usb 27034 0 rt2x00usb 20742 1 rt2800usb rt2800lib 89076 1 rt2800usb rt2x00lib 55307 3 rt2x00usb,rt2800lib,rt2800usb mac80211 630653 3 rt2x00lib,rt2x00usb,rt2800lib cfg80211 484040 2 mac80211,rt2x00lib crc_ccitt 12707 1 rt2800lib |
hostapdの設定
やっと本番。
自分はこんな感じの設定にした。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
$ sudo cat /etc/hostapd/hostapd.conf # APインターフェイスのデバイス名 interface=wlan0 # ブリッジする場合のインターフェイス。 bridge=br0 # ドライバーインターフェイス名 # とりあえずこいつでよい模様。 # lsmodでロードされているモジュールかと思ったら違った。 driver=nl80211 # 動作モード (a = IEEE 802.11a、b = IEEE 802.11b、g = IEEE 802.11g) hw_mode=g # ieee80211n: IEEE 802.11n (HT) を有効にする。 # 使えるのか分からないがとりあえず設定 ieee80211n=1 # SSIDssid=YOUR_SSID # <- ここはSSID # 事前共有鍵 wpa_passphrase=YOUR_PASSPHRASE # <- ここはパスワード # SSIDをステルスにする ignore_broadcast_ssid=1 # MACアドレスによる子機のアクセス制限 # 0 = 拒否リストにないものは許可 # 1 = 許可リストにないものは拒否 macaddr_acl=1 # 許可するMACアドレスリスト accept_mac_file=/etc/hostapd/hostapd.accept # ようわからん wpa=2 channel=11 wpa_key_mgmt=WPA-PSK wpa_pairwise=CCMP |
MACアドレス許可リストファイルを作っておく。
1 |
$ echo "xx:xx:xx:xx:xx:xx" |sudo tee /etc/hostapd/hostapd.accept # "xx:xx:xx:xx:xx:xx" は自分のMACアドレスに置き換え。 |
パーミッションもきつめにする。
1 |
$ sudo chmod 600 /etc/hostapd/hostapd.conf $ sudo chmod 600 /etc/hostapd/hostapd.accept |
自動起動の設定 /etc/default/hostapdのファイルに、DAEMON_CONFを定義
1 |
$ cat /etc/default/hostapd |grep "^DAEMON" DAEMON_CONF="/etc/hostapd/hostapd.conf" |
デーモン起動
1 |
$ sudo service hostapd start * Starting advanced IEEE 802.11 management hostapd [ OK ] |
正しく起動すれば、きっと使えるはず。
ubuntu 14.04で自動アップデート(unattended-upgrades)
なんか自動アップデートの設定も毎回確認しているような気がするが
unattended-upgradesをインストールして、前回の記事のように設定しようとしたが
/etc/apt/apt.conf.d/10periodicってファイルが見つからない。
どうしたもんかと調べたところ、dpkg-reconfigureすればいいんじゃね。
1 |
$ sudo dpkg-reconfigure unattended-upgrades |
自動更新しますかって聞かれるので、はい。を選択。
こんなファイルが作られている。
1 2 3 |
$ cat /etc/apt/apt.conf.d/20auto-upgrades APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Unattended-Upgrade "1"; |
ただ、同じ14.04でも、/etc/apt/apt.conf.d/10periodicが存在して普通に自動アップデート出来ている環境もあるので、
debootstrapでインストールした最小構成だけかもしれない。
redmine 2.5.x を ubuntu 14.04 へインストール
とっても便利な、チケットドリブン開発WEB UIのredmineを自分専用にインストール。
今回インストールするのは、redmine 2.5.1になります。
基本的には、ubuntuだとパッケージでのインストールが良いのだが、WEB系のアプリで開発が頻繁なものは、本家からダウンロードしてインストールするほうが、後々いいので今回は手動でインストールする。
以前、Wordpressをubuntu標準パッケージから入れたら、後々不便(バージョンアップとか)だったので、その教訓を活かす。
OS環境
最小インストール。というかlxc環境に入れるので、debootstrapにてインストールされるので、かなり最小構成。
一応パッケージは最新にしておく。
1 |
$ sudo apt-get update && sudo apt-get upgrade |
rubyインストール
こちらもOSのパッケージではなく、rvmを使って、ruby 2.0.0系をインストールします。
1 2 3 |
$ sudo apt-get install curl $ curl -sSL https://get.rvm.io | bash -s stable --ruby=2.0.0 $ source /home/$USER/.rvm/scripts/rvm |
rubyのバージョン確認
1 2 |
$ ruby -v ruby 2.0.0p481 (2014-05-08 revision 45883) [x86_64-linux] |
依存パッケージのインストール
1 2 |
$ sudo apt-get install git git-core subversion $ sudo apt-get install imagemagick libmagickwand-dev |
subversionは、redmineの最新版を取得用。gitは自分で使うバージョン管理。
imagemagicは、redmineで使う。
redmineのダウンロード・設定
今回は/optにインストールします。
1 2 3 4 5 6 |
$ cd /opt/ $ sudo mkdir redmine $ sudo chown $USER:$USER redmine $ cd redmine/ $ svn co http://svn.redmine.org/redmine/branches/2.5-stable current $ cd current/ |
パーミッション設定
1 2 |
$ mkdir public/plugin_assets $ sudo chown -R www-data:www-data files log tmp public/plugin_assets |
自分用レポジトリ作成
一応ここで作成しておくが、あとでも良いし別の場所でも可
1 |
$ mkdir -p /opt/redmine/repos/git |
mysqlデータベースの作成
mysqlインストール
1 |
$ sudo apt-get install mysql-server libmysqlclient-dev |
データベース作成
1 2 3 4 5 6 |
$ mysql -uroot -p mysql> CREATE DATABASE redmine CHARACTER SET utf8; mysql> CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password'; mysql> GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost'; mysql> FLUSH PRIVILEGES; mysql> EXIT; |
redmine設定(コンフィグコピー、DB設定)
1 2 3 4 5 6 7 8 9 10 11 12 |
$ cp config/configuration.yml.example config/configuration.yml $ cp config/database.yml.example config/database.yml $ cat config/database.yml ~~~~~~snip~~~~~~~ production: adapter: mysql2 database: redmine host: localhost username: redmine password: "my_password" encoding: utf8 ~~~~~~snip~~~~~~~ |
bundlerインストール
1 2 |
$ gem install bundler $ bundle install --without development test |
token作成
1 |
$ bundle exec rake generate_secret_token |
db migrate
1 |
$ RAILS_ENV=production bundle exec rake db:migrate |
default data load
1 |
$ RAILS_ENV=production bundle exec rake redmine:load_default_data |
途中言語環境を聞かれたら、 ja にする。
次からWEBサーバ
WEBサーバ設定(apache)
各種インストール
1 |
$ sudo apt-get install apache2 apache2-dev libcurl4-gnutls-dev apache2 libapache2-svn libapache-dbi-perl libapache2-mod-perl2 libdbd-mysql-perl libauthen-simple-ldap-perl openssl |
ssl有効、セキュリティ設定
1 2 3 |
$ sudo a2enmod ssl $ sudo a2ensite default-ssl $ sudo vi /etc/apache2/conf-available/security.conf |
passengerインストール
1 2 3 4 5 6 7 8 9 |
$ gem install passenger $ passenger-install-apache2-module ~~~~~~snip~~~~~~ LoadModule passenger_module /home/foo/.rvm/gems/ruby-2.0.0-p481/gems/passenger-4.0.45/buildout/apache2/mod_passenger.so <IfModule mod_passenger.c> PassengerRoot /home/foo/.rvm/gems/ruby-2.0.0-p481/gems/passenger-4.0.45 PassengerDefaultRuby /home/foo/.rvm/gems/ruby-2.0.0-p481/wrappers/ruby </IfModule> #環境によって異なるので、必ず自分の結果をメモする。 |
apacheにpassengerの設定
1 2 3 4 5 6 7 8 9 10 |
$ cat /etc/apache2/conf-available/passenger.conf LoadModule passenger_module /home/foo/.rvm/gems/ruby-2.0.0-p481/gems/passenger-4.0.45/buildout/apache2/mod_passenger.so <IfModule mod_passenger.c> PassengerRoot /home/foo/.rvm/gems/ruby-2.0.0-p481/gems/passenger-4.0.45 PassengerDefaultRuby /home/foo/.rvm/gems/ruby-2.0.0-p481/wrappers/ruby </IfModule> PassengerUserSwitching off PassengerDefaultUser www-data |
passenger設定を有効化
1 |
$ sudo a2enconf passenger |
sslサイトにredmineを追加
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
$ head -15 /etc/apache2/sites-available/default-ssl.conf <IfModule mod_ssl.c> <VirtualHost _default_:443> ServerAdmin webmaster@localhost #DocumentRoot /var/www/html DocumentRoot /opt/redmine/current/public <Directory /opt/redmine/current/public> Require all granted </Directory> # Available loglevels: trace8, ..., trace1, debug, info, notice, warn, # error, crit, alert, emerg. # It is also possible to configure the loglevel for particular |
DocumentRoot変更と/opt/redmine/current/publicへの許可設定
apache再起動
1 |
$ sudo service apache2 restart |
これでhttps://<your_server_ip>にアクセスアクセスすればredmineが使えるはず。
あとは、自分でチケット作って、自分でやってという悲しい作業で、効率が上がる。
WEBページをコマンドでPDFとかイメージで保存
WEBページをコマンドで、PDFとかイメージデータとして保存出来たらいいな。と、ふと思い調べたところ、
過去に書いてるやん!
うわー。記憶って消えていくものだな。
wkhtmltopdf
ってパッケージをインストールすれば良い。
ただ、ちょっとその時と違っているのは、ubuntu 14.04ならイメージも出来まっせ!ってこと。
当時(恐らく12.04だと思う)は、PDFだけだった模様。
※残念ながら、14.04もPDFだけでした。この記事は意味ありませんが、もったいないので
まー。インストールは相変わらず超簡単
1 |
$ sudo apt-get install wkhtmltopdf |
使いかたも超簡単
1 |
$ wkhtmltopdf http://www.yahoo.co.jp yahoo.pdf |
イメージ
1 |
$ wkhtmltoimage-amd64 http://www.yahoo.co.jp yahoo.png |
日本語フォントとか無理かなって思ってたのだが、日本語も凄く綺麗に表示されている。
これで自前のaguseサイトとか作れる。作る能力無いけど。
wkhtmltoimageですが、過去にサイトからダウンロードして個別に入れていたようです。これまたすっかり忘れていた。 公式サイトにubuntu用のパッケージもあるので、そちらからインストールすれば、たぶんwkhtmltoimageも使えるかと(未確認)
(続)ubuntu server 12.04 LTSを14.04 LTSにアップグレード
前にちょっと記事にしたが、その続編ぽいもの。
前回のサーバは、DNSくらいしか動いてなくて、特に問題なかったのだが、
今回はLAMP環境を移行した。はまりまくり。
メモってないので、記憶をたどると、ハマりどころとしては。
debian系のsites-enabledの設定ファイルが変わった。
debian系では、/etc/apache2/sites-enabled/以下に各サイトの設定を書いて
そのサイトを有効にするには、a2ensiteコマンドを実行すると、/etc/apache2/sites-available/以下に
シンボリックリンクが作られて有効になるといった感じの動作。
まー。この動作自体は、よく考えられていて良いとは思っている。
この設定ファイルだが、前は、どんなファイル名でも良かったのだが、
14.04からは、*.confと拡張子が付いてないと、読み込まれなくなった。
なので軒並み修正。
apache 2.4からアクセス制御の書き方が変わった。
ubuntuというか、apacheの変更だが、古くからのapacheのアクセス制御は、
以下のような感じ
1 2 3 4 5 |
<Location /admin> Order deny,allow Deny from all Allow from 127.0.0.1 </Location> |
が、2.4からはこんな感じになる。
1 2 3 |
<Location /admin> Require ip 127.0.0.1 </Location> |
と、こんな感じになった。まー。シンプルで良い気もするが、軽い気持ちでバージョンアップすると痛い目にあう。
過去の表記を有効にするモジュールもあるようなのだが、
少なくとも自分で追加したサイト側には有効になっておらず
全部手動で、2.4系の書き方に変更する必要があった。
2.4系の細かいアクセス制御設定は、他のサイト等を参考にしていただければと思います。
(自分もよく分かってない。)
全部許可なら
1 |
Require all granted |
とからしい。