- [情報技術] Apache2が起動失敗(libxmlsec1_openssl.mo原因)
 
			- ubuntuを22.04から24.04にアップグレードする際にupdate managerがコケたので、`apt dist-upgrade`でアップグレードを完了させたら、Apache2が起動失敗するようになりました。
 
			$ systemctl status apache2
 
			- でログを確認すると、
 
			/lib/x86_64-linux-gnu/libxmlsec1-openssl.so.1: undefined symbol: xmlSecKWDes3Encode
 
			- となっていました。
 
			- aptで該当のライブラリを検索したら、「libxmlsec1-openssl」は古くて「libxmlsec1t64-openssl」に変える必要がありそうでした。
 
			- そもそもこのライブラリを使っているのが、Apache2モジュール「auth_mellon」なので、このモジュールを削除してインストールし直せばOKです。
 
			$ sudo apt reinstall libxmlsec1t64-openssl
$ sudo apt autoremove
 
			- 2024-09-06 (Fri) by Canaid SK
 
		- [情報技術] GIt vs Mercurial
 
			- 分散型バージョン管理システムの「Git」と「Mercurial」、どちらのほうが使用容量が小さいのかを調べてみました。手順は次の通りです。
 
			- 
				
					- 2つのディレクトリ「git」と「hg」を作成。
 
					- gitにはGitでリポジトリを、hgにはMercurialでリポジトリを作成。
 
					- gitとhgそれぞれに空のテキストファイル「test.md」を作成。
 
					- それぞれで初コミット。(時点A)
 
					- それぞれのtest.mdに「addline」を追記。
 
					- それぞれで2回目コミット。(時点B)
 
				
			 
			- ## 結果
 
			- ### 時点A
 
			- 
				
			
 
			- ### 時点B
 
			- 
				
			
 
			- Mercurialのほうがかなり小さいことがわかりました。
 
			- 2024-09-06 (Fri) by Canaid SK
 
		- [情報技術] UbuntuにRailsインストールでエラー:"yaml.h not found"
 
			- Ubuntu上でRuby on Railsをインストールする際、下記のエラーが出ました。
 
			checking for yaml.h... no
yaml.h not found
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.
 
			- 「yaml.hが見つからない」ということなので、入れました。
 
			$ sudo apt install libyaml-dev
 
			- その後、再度インストールを試みました。
 
			$ gem install -i ./ rails
 
			- オプション:-i は、インストールディレクトリの指定です。
 
			- 結果は、正常に完了でした。
 
			- 2024-09-23 (Mon) by Canaid SK
 
		- [情報技術] Ruby on Rails を公式マニュアル通りにインストールできないときのインストール方法
 
			- Ruby on Railsを公式サイトのドキュメント
 
			- https://guides.rubyonrails.org/getting_started.html
 
			- 通りに実施するとエラーが出てインストールできない。その理由が権限問題(インストール先に書き込む権限がない)の場合は、下記手順でインストールできます。2通り書きます。
 
			
 
			- # 下準備
 
			- 
				
					- コマンドで `ruby` を使えるようにする。
 
					- コマンドで `gem` を使えるようにする。
 
					- `gem environment` でインストール先を確認。
 
					- コマンドで `bundle` を使えるようにする。(bundlerをインストール)
 
				
			 
			
 
			- #1 ユーザーディレクトリにインストール
 
			$ mkdir {任意のディレクトリ}
$ cd {任意のディレクトリ}
$ gem install --user-install rails
$ which rails # railsコマンドの有無の確認
$ rails new --skip-bundle {rails用ディレクトリ}
$ cd {rails用ディレクトリ}
$ bundle config set --local path 'vendor/bundle' # ファイル保存先指定
$ bundle install
$ bin/rails server # rails起動
 
			
 
			- #2 任意のディレクトリにすべて集約するインストール
 
			$ mkdir {任意のディレクトリ}
$ cd {任意のディレクトリ}
$ bundle init # 初期状態作成
 
			- Gemfileという設定ファイルが現れるので、テキストエディタで開いて
 
			# gem "rails"
 
			- の「#」を取り除いてファイルを上書きします。
 
			$ bundle config --local path "vendor/bundle"
$ bundle install # rails導入
$ bundle exec rails new .
 
			- 設定ファイルの上書きの可否を問われますので、「y」で上書きをします。
 
			$ bin/rails server # rails起動
 
			
 
			- `bundle config set --local path "vendor/bundle"`
 
			- と
 
			- `bundle config --local path "vendor/bundle"`
 
			- は同じものです。「set」の有無は自由です。
 
			- そして、"vendor/bundle" は別の名前でも大丈夫です。
 
			- bundleコマンドの元「bundler」自体はgemで導入できますが、rubyをインストールした際に一緒に入っているかもしれません。コマンドの有無を確認して、なければ手動で導入してください。
 
			- 2024-09-25 (Wed) by Canaid SK