カテゴリー: OS

うにのトゲは刺さると痛い(´・ω・`)-17

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


暑くて色々と捗らない…(ヽ’ω`)


Windows関連

Windowsの不具合絡みでなんかやったような記憶が(´・ω・`)
Microsoftのコミュニティのやり取りが珍しく役に立った(・∀・)
スタートボタンが反応せず、シャットダウンできない

デバイスキャストがコンテキスト上に出ちゃうのって結構邪魔じゃない(´・ω・`)?
Win 10編: コンテキストメニューの<デバイスキャスト>を取り除く


続・得点表示

見た目は余り進化していないが多少変化させた。少しだけ動的変化を追加しただけだが、それを実装するのに時間がかかった。やっぱりIMGUIでやるべきではないと思いました(・∀・)(小並感)


ハイスコア表示

どうせローカルレベルの話だし、要るかなー、要らないなー、でも一応有ったほうがゲームっぽいかなーということで申し訳程度のハイスコア表示をすることにした。
ここで結構ハマった(´・ω・`)

まず第一に、どの保存方法を取るかで悩む。PlayerPrefsは一番お手軽であり、申し訳程度のハイスコア表示ならこれでいいのだけれども、それだと俺氏の技術的進化が全くないなと思い違う方法を模索。 ←すぐに退化しちゃう人(´・ω・`)

ZeroFormatterとかが良いのかしらと思ったけれども、俺氏の今現在のC#の知識では理解不能なので、止めておいた(ノ∀`) 単純にライブラリとして使えばいいのだろうけれども、その前段階のセーブ/ロードの方法を知らないので、まあ今回はパス。

関係ないけれども、UniRxを公開していたグラニという会社のCTOの人が作成していたらしいが、この人はCTOを退任して、グラニはマイネットというところの傘下になったらしい。ソシャゲ等に興味がないので、どっちの会社もよく解らない(ノ∀`)
ZeroFormatter – C#の最速かつ無限大高速な .NET, .NET Core, Unity用シリアライザー

取り敢えず、以下のリンク等々を読み、JSONデータで保存することにした。
クラスを丸ごと保存するデータ管理方法【Unity】
JsonUtility
【Unity】Jsonデータをセーブ・ロードしたい!
Unityでゲームデータのセーブ・ロードを行う方法

で、まぁエディタ上では上手く保存出来ていたので、大して気にせずに他の部分のリファクタリングをしたりしていたのだが、Androidの実機でやったら上手く行かない(´・ω・`)

結論から言うとApplication.dataPathではなく、Application.persistentDataPathにファイルを保存する方向に。
そもそもapkに書き込みって出来るの(´・ω・`)?

参考:
UnityでAndroid,Windowsにファイルを書き込む際の注意点
Unityで作成したAndroidアプリでファイルをxml形式で読み書きする

試してはいないけれども、暗号化。
【Unity】AESでデータを暗号化


日付等

基本中の基本なんだろうけれども、忘れちゃうのでリンクしておこう。DateTimeOffsetを使ったら、何処の国でも正しい時刻を取得出来るのかな(´・ω・`)?

参考:
誰もが一度は陥る日付処理。各種プログラミング言語におけるDateTime型/TimeStamp型の変換方法のまとめにC#が無いので追加
String.Split メソッド (Char[])
String.Substring メソッド (Int32)
DateTimeの代わりにDateTimeOffsetを使用する
DateTimeとDateTimeOffsetの違いとは?[C#、VB]

まだ途中なのでアレだが、まあこんな感じだよね、ハイスコア表示って(´・ω・`)


まだまだやることがいっぱいあるな(ヽ’ω`)

あけてた(´・ω・`)

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


だらだらとVirtualBox上にOracle環境を構築。
だがしかし、仕事先でやっていた作業は細切れであった為に色々とハマる(ヽ’ω`)
考えてみたら、あそこではServerViewをconfigファイルを使ってインストールしたり、細かな設定は仕事先の方の作ったシェルスクリプトを使用していたので、その辺の知識が抜けているからハマるのは当然のことであった(ノ∀`)


細かい内容はともかくも、やったことを適当に記録。いずれエントリにしよう。と思うがそのまま忘れる可能性が高い(`・ω・´)

  1. インストール
  2. ifcfg-e0s3(/etc/sysconfig/network-scripts/のネットワーク定義)のONBOOTをyesに。
  3. reboot(ネットワークサービスの再起動だけでいいのか?)
  4. yum update
  5. GuestAdditionのインストール
  6. 共有フォルダの設定
  7. httpサーバーでインストールしてしまったので、GNOME Desktopをインストールして、graphical.targetに変更。(この時になんかライセンスアグリーメントを要求された?)
  8. バックアップというかVirtualBoxのクローンを作成

ここではONBOOTをyesにしておかなくて、yumを使った時に”base/7/x86_64″がないとかどうとかのエラーが出た(ノ∀`)
このエラーはDNSやらGATEWAYやらプロキシ絡みでも出るらしい。つーかネットワークがつながってない時に出るのかな? ローカルにあったら、エラーは出ないのだろうか? これは既にブリッジアダプターを追加済みの仮想マシンに再インストールした際に起きたので、通常だとは起きない? 今度改めてCentOSを入れて、後から追加したブリッジアダプターが初めからONBOOT=yesになっているか確認してみるか(´・ω・`)

今回はhttpdサーバのパターンでインストールして後からGNOME Desktopを入れたからか、えらくダウンロードに時間がかかった。最初にGNOME Desktopで入れて後からhttpdを入れれば良かったのか(´・ω・`)? 或いはメディアイメージをローカルリポジトリにしたりして入れられるのかな。


Oracleに関してはほぼこちらのサイトの言う通りにやったら出来た(・∀・)
Oracle Database 12c Release 2 : インストール環境の設定

Linuxのことをよく判ってないから、カーネルパラメータの編集の、聞いたこともないような設定値の羅列から”cat >> /etc/sysctl.conf << EOF”を見て「どういうこと(´;ω;`)?」と悩んだw "<<"は追加だなぁとすぐにわかったが">>”の意味が分からずぐぐる。
ヒアドキュメントかΣ(゚∀゚;)
前にも調べたことがあったのに完全に忘れてたわ(ノ∀`)
標準入力の内容を追記出来るのか(・∀・)

ユーザーとグループの追加のところも含めて、標準入力ってこんな使い方出来るんだなぁ、凄いなぁと思いました(・∀・)(小並感)

それ以外のところは概ね仕事先でやった作業とあんまり変わらなかったかな?
pam_limits.soとumask 022は触らなかったか。シェルスクリプトでやっていたか、設定済みファイルをコピーしてたからかな。
pam_limits.soは/etc/security/limits.confの内容を使って制限とかするみたい。
umaskは

ファイルまたはディレクトリを作成したときに設定されるデフォルトのファイルアクセス権は、ユーザーマスクによって制御されます。ユーザーマスクは、初期設定ファイルで umask コマンドによって設定されます。
(中略)
設定する umask の値は、与えたいアクセス権の値を 666 (ファイルの場合) または 777 (ディレクトリの場合) から引きます。引いた残りが umask に使用する値です。たとえば、ファイルのデフォルトモードを 644 (rw-r–r–) に変更したいとします。このとき 666 と 644 の差 022 が umask コマンドの引数として使用する値です。
デフォルトのファイルアクセス権 (umask)

ということらしい。へぇ(・∀・)

そう言えば、仕事でやった時はorainstRoot.shとroot.shだけしか実行しなかったが、今回は設定の足らないところがあるらしく、それらの前に修正用のシェルスクリプトをやれヽ(`Д´)ノってインストーラーに怒られた(ノ∀`)

netcaは普通にやって、dbcaでは参考にしたサイトとは違うTypical Configurationでインストールした。sysdbaでの接続を確認(`・ω・´)


引き続きEnterpriseManagerの設定を行うもハマる(ヽ’ω`)

  • httpdを自動起動にしてなかった。
  • HttpsPortを5500で開けてなかった。
  • Firefox用のflashプラグインを入れてなかった。
  • SELINUXを無効にしてなかった。
  • sysのパスワードが分からなかった。

そう言えば

[root@localhost oracle]# chkconfig –list httpd

注記: この出力に含まれるのは SysV サービスのみです。ネイティブな
systemd サービスは含まれません。SysV の設定データはネイティブな
systemd 設定で上書きされる場合があります。
systemd サービスを一覧表示する場合は ‘systemctl list-unit-files’ を使用します。
特定のターゲットで有効になっているサービスを確認する場合は
‘systemctl list-dependencies [target]’を使用します。

みたいな感じで怒られた(´・ω・`)
systemctl list-unit-files -t service
とか
systemctl list-unit-files httpd
ってしないと駄目らしい。

sysのパスワードのデフォルトはCHANGE_ON_INSTALLとあったから、これなのかなぁと思ったら違った(´・ω・`)
インストールユーザーのログインパスワードが正解?

何はともあれ、emにログインして表領域の作成までは試した(`・ω・´)

ついでにと思い、ホストOSからTeraTermでsshログインしようとするも出来ぬ(ヽ’ω`)
VirtualBoxでNATのネットワークアダプターでポートフォワーディング設定をしておかないと駄目なのね。
まあこれでつながったので良しとする(`・ω・´)


Oracleとは別にRedmineもちょっとだけ触ろうと思ってRedmine 3.4をCentOS 7.3にインストールする手順を試す。

試すが…_| ̄|○

“bundle install –without development test –path vendor/bundle”でエラーが出て、色々とやってるうちになんだかグチャグチャになってしまってきたので、Oracleを入れた段階のイメージまで戻した…_| ̄|○ emカラヤリナオシ

ようやくemまで入れ直してクローン作成 ←イマココ

gem install rmagick -v ‘2.16.0’で出た、

Detected ImageMagick version:
Can’t install RMagick 2.16.0. You must have ImageMagick 6.4.9 or later.

のところが上手く解決出来なかったので、ここからかな(ヽ’ω`)


Ruby絡みは全くわからんちんちんの俺氏の2018年の始まりはこんな感じ(´・ω・`)

rngd error

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


RHELでrngd errorなるものが出た。

rngdとはRandom Number Generator Daemonの略らしい。
乱数ジェネレーターと呼ばれるものらしい。

3.4. 乱数ジェネレーターの使用

簡単に解読されない安全な暗号鍵を生成するには、乱数のソースが必要になります。一般的に、番号がよりランダムであればあるほど、一意の鍵を得られる可能性が高まります。乱数生成のエントロピー は通常、コンピューティング環境の「ノイズ」または 乱数ジェネレーター のハードウェアを使用することで獲得されます。
rng-tools パッケージの一部である rngd デーモンは、エントロピーを引き出すために環境ノイズと乱数ジェネレーターの両方が使えます。このデーモンは、乱数度のソースが提供したデータがランダムかどうかをチェックし、その後にカーネルの乱数エントロピープールに保存します。これが生成した乱数は、/dev/random および /dev/urandom の各キャラクターデバイスから利用できます。
/dev/random と /dev/urandom の違いは、前者はブロックデバイスであり、適切な乱数出力の生成にエントロピーが不十分だと判断すると、乱数の提供が停止される一方で、/dev/urandom は非ブロックソースであり、カーネルのエントロピープールを再利用して無制限の仮の乱数を提供できる、という点です。ただし、この場合のエントロピーは低くなります。このため、長期の暗号鍵の作成には、/dev/urandom は使用しないでください。

つまるところ、カーネルが暗号化を使う為に乱数のシード的なものは、ソフトウェア的に”コンピューティング環境の「ノイズ」”から作られるものと専用のハードウェア(TPM Trusted Platform Module)やIntel IvyBridgeやHaswellプロセッサのRDRANDから作られるものがあるらしい。

でまぁ、

if you’ve got an external, physical device, you forgot to load the associated module. As most of the servers don’t have this kind of module, you can safely ignore this message.
RHEL7: How to get started with random number generator.

ということなので、乱数生成用の物理デバイスがない場合は無視して良い(´・ω・`)?

遷blo宮

android用の神経衰弱ゲームを公開しました(・∀・)
The Match-up(Memory) game for android was released!

Google Play:
Mole's Match-up.

Introduction page:
Mole’s Match-upをリリースした∩( ・ω・)∩


おめでとう、俺氏!
7/1にブログを開いてこのエントリが無事に表示されていたら、
あなたはブログの移行に成功しているよ(`・ω・´)


まあ、現段階でドメインをnslookupすると新しいIPアドレスが表示されるので問題ないだろう。
何故か、WordPress内で検索とかすると画面真っ白になるけど(´;ω;`)
それはおいおい直して行くということで。

今回の移転はさくらVPSの2GBプランから1GBプランへというものだったので、
「そんなに苦労しないよね(・∀・)」と余裕をかましてギリギリで始めたので
色々と大変なことになった(ヽ’ω`)

なぜならばプラン変更だけではなくubuntu serverのバージョンを12.04から16.04へ変更したからである。
14.04段階で色々と違っていたであろうに、それすらもすっ飛ばして16.04へ変更したのだからそら大変である。

もちろん、俺氏もただのちょいデブのハゲではない(`・ω・´) ハゲテナイヨ,ウスイダケダヨ
大幅なバージョンのアップデートの危険性はよくわかっていたので、先にローカルの仮想環境での
アップデートのシミューレションはやっており、少なからずWordPressの移転作業は完璧に手順を
確立していた(`・ω・´) デブトハチガウノダヨ デブトハ チョイデブダケド

だがしかし、シミューレションで使ったISOイメージの内容とさくらVPSのカスタムOSインストールの
それとは別物だったの…_| ̄|○ バンナソカナ…

まずこの辺で混乱して、加えてPHPのバージョン違いで更に混乱して、やり直しを繰り返して
時間を徒に費やす(ヽ’ω`) ただ、この頃はまだ日にちに余裕があったので、まったりと御城プロジェクトや
銀河英雄伝説タクティクスをやりながら、作業を続けた。

更にISOファイルをアップロードしてインストールを試したが、ネットワーク設定の永続化かなんかを
ミスしたか上書きしたかで、シリアル接続しか出来なくなって、面倒くさくなってまたやり直したり…(ヽ’ω`)


なんやかんやでWordPressの移転は済んだようだが、投稿一覧からの検索等で画面真っ白…

opencms9へのアップデートも上手くいかず、結局、8.5.2のままでしばらく行くことに。
opencms10.01へのアップデータが出ているのでそっちを試してみようかな?

molehillの方、つまりはopencmsの方のページは表示されるものの、RewriteCondとかを
きちんと設定していないので、昔のリンクでは404とかになる。
デモサイトの部分も消してないしw

いずれ直そう、どうせ大したこと書いてないしw


ブログ来訪者数に比べてスペックが高すぎ(つまりはお金の無駄)だったのと、
サーバー関連技術とその知識の喪失を防ぐ為に遷blo宮を試みたが、非常に大変であった。
つーか…

技術と知識はすでに喪われていた…_| ̄|○

これからまた色々と調べて復旧せねば…(ヽ’ω`)