自分用Macのキーボードメモ

Macのキーボードついてこないんだもん!

全角半角切り替え Win+Space
アンダーバー Shift+-
あっと Shift+2
たす Shift+^

広告

SSHを有効にしながらSCPを無効化することは

できないみたいですね。

参考:
http://serverfault.com/questions/28858/is-it-possible-to-prevent-scp-while-still-allowing-ssh-access

sftpについてはSubsystemの行をコメントアウトすればいいのですが、WinSCPはsftpができないとscpでリトライをしてくれてしまうので、見た目わからないという。

いろいろ代替案は上がってましたが、どうやるのがスマートだろう。

ownCloud5.0から6.0へのアップグレード

管理画面からのアップグレードを試しました。
こんなページより↓のほうを参考にしてください。

http://www.begood-tech.com/small-material-or-thoughts/owncloud/owncloud-5-%E7%AE%A1%E7%90%86%E8%80%85%E3%83%91%E3%83%8D%E3%83%AB%E3%81%8B%E3%82%89%E3%81%AE%E3%82%A2%E3%83%83%E3%83%97%E3%83%87%E3%83%BC%E3%83%88.html

ほぼ参考にしたサイトのままですが、5.0.0から6.0.0aにアップグレードした場合、最後にconfig.phpを編集する必要はありませんでした。
処理完了後にページをリロードすれば新しいUIでお出迎え。

バックアップされる古いowncloudのzipファイルの中身は、どうも差分のようなので、丸ごとバックアップするのがいいと思います。

参考
http://obel.hatenablog.jp/entry/20131202/1385922844

 

# mysqldump -u root ownclouddatabase  > owncloud-dump-`date +”%Y%m%d”`.sql

DBのダンプをとって

# cd /var/www/html
# rsync -a owncloud/ /usr/local/src/owncloud-backup-`date +”%Y%m%d”`/

なんか適当なところに丸ごとrsync。これで壊れてもなんとか元に戻せるはず。

ドラッグオンドラグーン3面白い

全然時間が取れなくてまだ第三章に入りたてですけれど、面白い。

ニーアほにゃららからのシリーズしかプレイ経験がないですけど、こんなにメタなギャグやる感じだったかなあ。
やっぱり日本でやる上では、ぐちゃぐちゃどろどろは、ギャグなしに描けないんだろうか。

ダメなんだろうかなぁ……。

と少し考えてしまいます。

CentOS6.5とRedmine2.4.2とSubversion

Redmineはずっと愛用しているのですが、最新版を使ってみたくなったので入れてみました。前よりちょっと優しかったよ。

参考にしたのは↓
http://blog.redmine.jp/articles/2_4/installation_centos/
http://www.yukun.info/blog/2011/12/linux-redmine-subversion-install.html

 

いつものとおりminimalインストールしてyum updateしたところから。

# vi /etc/sysconfig/selinux
SELINUX=disabled

やっぱりSELINUXはdisableです。

# rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

# yum install readline-devel zlib-devel curl-devel libyaml-devel make wget gcc gcc-c++
# yum install mysql mysql-devel mysql-server httpd httpd-devel mod_ssl
# yum install ImageMagick ImageMagick-devel ipa-pgothic-fonts

epelを導入したのち、yumで必要なものを入れていきます。

# cd /usr/local/src/
# wget http://cache.ruby-lang.org/pub/ruby/2.1/ruby-2.1.0.tar.gz
# tar zxvf ruby-2.1.0.tar.gz
# cd ruby-2.1.0
# ./configure –disable-install-doc
# make
# make install

Rubyをインストール。以前はなんでかソースからrpmbuildした記憶があるんですけど。

# gem install bundler –no-rdoc –no-ri

とりあえずbundlerを入れて次へ。

# cp /usr/share/mysql/my-large.cnf /etc/my.cnf
# vi /etc/my.cnf
[client]
default-character-set = utf8

[mysqld]
character-set-server =utf8

[mysqldump]
default-character-set = utf8

[mysql]
default-character-set = utf8

# chkconfig mysqld on
# service mysqld start

Mysqlはとりあえずlargeのconfをコピーして、しつこくutf8。

# mysql
> use mysql;
> update user set password=password(‘mysqlrootpassword’) where user = ‘root’;
> delete from user where user = ”;
> flush privileges;

> create database redminedatabase;
> grant all on redminedatabase.* to redmineuser@localhost identified by ‘redminepassword’;
> flush privileges;

DBの受け皿を作る。Redmineの解説はちゃんとrootパス変えるように言っていて親切。

# cd /var/lib/redmine/config/
# vi database.yml
production:
adapter: mysql2
database: redminedatabase
host: localhost
username: redmineuser
password: redminepassword
encoding: utf8

# vi configuration.yml
production:
email_delivery:
delivery_method: :smtp
smtp_settings:
address: “localhost”
port: 25
domain: ‘example.com’

rmagick_font_path: /usr/share/fonts/ipa-pgothic/ipagp.ttf

configに設定を突っ込みます。configurationのところの設定は、Railsのバージョンによってはエラーが出るので、TLSとかを使わない設定が必要だったりする、はず。

# cd /var/lib/redmine/redmine
# bundle install –without development test

# bundle exec rake generate_secret_token
# RAILS_ENV=production bundle exec rake db:migrate

# gem install passenger –no-rdoc –no-ri
# passenger-install-apache2-module

とにかくDBを作って、passengerをインストール(時間かかる)して。

# vi /etc/httpd/conf.d/passenger.conf
RackBaseURI /redmine

LoadModule passenger_module /usr/local/lib/ruby/gems/2.1.0/gems/passenger-4.0.33/buildout/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/2.1.0/gems/passenger-4.0.33
PassengerDefaultRuby /usr/local/bin/ruby
#
Header always unset “X-Powered-By”
Header always unset “X-Rack-Cache”
Header always unset “X-Content-Digest”
Header always unset “X-Runtime”
#
PassengerMaxPoolSize 20
PassengerMaxInstancesPerApp 4
PassengerPoolIdleTime 3600
PassengerHighPerformance on
PassengerStatThrottleRate 10
PassengerSpawnMethod smart
RailsAppSpawnerIdleTime 86400
PassengerMaxPreloaderIdleTime 0

passengerのconfを作って(最終行だけ参考元と違います。httpdのconfigtestで文句言われるので)

# chown -R apache:apache /var/lib/redmine/redmine
# ln -s /var/lib/redmine/public /var/www/html/redmine
# chkconfig httpd on
# service httpd start

シンボリックリンクを張ってスタート。これでアクセスできるようになります(ポート開けていれば)。

続いて、Subversionを入れます。

# yum install subversion mod_dav_svn
# mkdir /var/lib/svn
# svnadmin create /var/lib/svn/repo1
# chown -R apache:apache /var/lib/svn/repo1

インストールしてリポジトリのディレクトリを適当に作って。

# vi /etc/httpd/conf.d/subversion.conf
<Location /svn>
DAV svn
SVNParentPath /var/lib/svn

###格納ディレクトリを表示できるようにするなら
### SVNListParentPath on

SSLRequireSSL

AuthType Basic
AuthName “Subversion repository”
AuthUserFile /etc/httpd/conf.d/svn_auth_file
Require valid-user
Satisfy All
order deny,allow
allow from x.x.x.x
deny from all
</Location>

# touch /etc/httpd/conf/svn_auth_file
# htpasswd /etc/httpd/conf/svn_auth_file ユーザ名

Basic認証したうえにIP制限もかけて。

# svn info file:///var/lib/svn/repo1

これで情報が出てくればOK。

Redmine本体の設定に移る前に、日付をちゃんと表示するプラグインを入れます(好みで)

# cd /var/lib/redmine/plugins/
# yum install git
# git clone git://github.com/suer/redmine_absolute_dates.git
# chown -R apache:apache redmine_absolute_dates

# cd redmine_absolute_dates
# vi lib/absolute_date_helper_patch.rb
text = format_time(time)
# service httpd restart

format_dateのところをformat_timeです。

あとはRedmineにアクセスしたら、adminでログインして

管理>日本語でデフォルト設定をロード

設定>既定の言語:Japanese

プロジェクトから新しいプロジェクトを作って、設定>リポジトリ>新しいリポジトリで

file:///var/lib/svn/repo1

このディレクトリを指定して、ログイン情報は空で適用。

悩みとしては、confだといちいちIP制限の変更のたびにhttpdをrestartしないといけないので、どうにか.htaccessにしたいんですけど、どうしたらよいのでしょう。

CentOS6.5とownCloud6.0

CentOS6.5が公開され、ownCloudもいつのまにか6.0が公開されていたので、インストールしてみました。

yumで入るようになっていて、そのままやってもそのまま動くのですが、mysqlを使うためにはyumだけでは足りないので、mysqlを使って起動するところまで。

参考にしたのは

http://baalzephon.no-ip.org/tech/index.php?ownCloud

CentOS6.5はminimalでインストールしました。yum update後からスタート。

# vi /etc/selinux/config
SELINUX=disabled

まずはSELINUXをDisableに。owncloud5ではDisableじゃないと動かなかったので、きっと6でもそうだろう、と。このあたりで再起動してから次へ。

# yum install wget
# cd /usr/local/src/
# wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm

# cd /etc/yum.repos.d/
# wget http://download.opensuse.org/repositories/isv:ownCloud:community/CentOS_CentOS-6/isv:ownCloud:community.repo
# yum install owncloud

epelリポジトリを入れているのは、そのままだとphpの何かがエラーで止まるからです。さくっとowncloudをインストール。

owncloudは /var/www/html/owncloud に展開されます。あとはこのままポートを開けてhttpdをスタートすればとりあえず動きますが、ちゃんとやります。

# yum install mod_ssl mysql-server

足りない物を追加。SSLで通信するのがとにかく安心ですよね。

# cp /usr/share/mysql/my-large.cnf /etc/my.cnf
# vi /etc/my.cnf
[client]
default-character-set = utf8

[mysqld]
character-set-server =utf8

[mysqldump]
default-character-set = utf8

[mysql]
default-character-set=utf8

# vi /etc/php.ini
date.timezone = Asia/Tokyo

Mysqlはとりあえずlargeのconfigをコピー。そして文字コードはUTF8。とにかくUTF8。

phpで扱うタイムゾーンも変更しておく。

# vi /etc/httpd/conf.d/owncloud.conf

<Directory “/var/www/html/owncloud/data”>
Options IncludesNOEXEC FollowSymLinks
AllowOverride None
Order allow,deny
Allow from 127.0.0.1
</Directory>

<Directory “/var/www/html/owncloud/config”>
AllowOverride None
Order allow,deny
Allow from 127.0.0.1
</Directory>

元からあるconfに追記します。dataフォルダに直接アクセスできるようにしてあると5では警告が出たんだけど、6では見なかった。なんでだろう。でもとりあえず。

# chkconfig mysqld on
# service mysqld start

# mysql
> CREATE DATABASE ownclouddatabase;
> CREATE USER ‘ownclouduser’@’localhost’ IDENTIFIED BY ‘owncloudpassword’;
> GRANT ALL ON ownclouddatabase.* TO ownclouduser;
> EXIT

mysqlを起動してデータベースを作る。defaultcharactersetは割愛。cnfで指定してるから大丈夫。

# chkconfig httpd on
# service httpd start

あとはポートを開けて接続する。管理者アカウントの作成と、MysqlのDBの指定をすればOK・・・

Your web server is not yet properly setup to allow files synchronization because the WebDAV interface seems to be broken. Please double check the installation guides.

のはずがこういうエラーが出てくる。再度アクセスすればとりあえずWebインターフェース上で使えているのだけど。

(ついでに管理メニュー上ではphpが古いと言われる。最新にしようとすると大変だ)

あと結局Zipダウンロードの際の文字化けはそのままなので、下記でなおしてください。

https://maltblade.wordpress.com/2013/12/24/owncloud%E3%81%A7%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%82%92%E5%9C%A7%E7%B8%AE%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89%E3%81%99%E3%82%8B%E9%9A%9B%E3%81%AE%E6%96%87%E5%AD%97%E5%8C%96/

 

とりあえず今回はここまで。エラーの解消法をご存知の方がいたら教えてください。

ActionScriptとphpを使ってFlashに画像を取り込む

Flashの解析やディレクトリから直接画像を引っ張り出されない工夫をしてみる。

ちなみにAdobeは高くて買えないので、いつもFlashを作るのにはparafla!を使用しています。

parafla!のページ
http://parafla.coaworks.jp/

手順や構成はこんな感じです(わかりづらいね)

1. 「呼び出し側.swf」を作成して、「Flash呼び出し.php」をURLで取得する。
2. 「Flash呼び出し.php」では、「Flash.swf(本体)」を読み込んで表示する。
3. 「表示側.php」を作成して、「呼び出し側.swf」を読み込んで表示する。
4. 「Flash.swf」では、「画像呼び出し.php」を要所要所スクリプトで呼び出してムービークリップに表示する。
5. 「画像呼び出し.php」は、「画像.png」を読み込んで表示する。

ユーザがアクセスするのは[index.php](includeとかで表示側.phpを読み込む)。

[index.php]→[表示側.php]→[呼び出し側.swf]→[Flash呼び出し.php]→[Flash.swf]→(画像が必要な時に)[画像呼び出し.php]→[画像.png]

htaccessで直接アクセスされないように制限
・phpから呼び出すモノのディレクトリはローカルからのみのアクセス制限(PHPはサーバサイドで動くから)
・swfから呼び出すモノのディレクトリはリファラでアクセス制限(SWFはユーザのローカルマシンで動くから)

[index.php]→[表示側.php][呼び出し側.swf][Flash呼び出し.php][Flash.swf]→(画像が必要な時に)[画像呼び出し.php][画像.png]

緑=ローカルからのみ 水色=リファラ制限

とこうすることで肝心のFlash本体や画像は直接アクセスできないディレクトリに置けると思うのですが、どうでしょう。
もっといい方法があったら教えてください(paraflaで動く範囲で)。