気まぐれサンポポ

みなさま、はじめまして 当ブログ管理人のサンポポ(sanpopo)と申します。

マインクラフトのメモリ割り当てを増やす【マインクラフト】

①「Minecraft Launcher」を開く。

f:id:sanpopo:20211025215301p:plain

 

②「起動構成」を選ぶ。

f:id:sanpopo:20211025215519p:plain

 

③現在利用中のリリースを選択して、「...」から「編集」を押す。

f:id:sanpopo:20211025215714p:plain

 

④「その他のオプション」を選択する。

f:id:sanpopo:20211025215921p:plain

 

⑤「JVMの引数」の"-Xmx2G"を"-Xmx8G"に変更し保存する。

デフォルトでは2GBが割り当てられるので、余裕をもって8GBに変更。

f:id:sanpopo:20211025220302p:plain

 

⑥メモリが8GBになっている。

f:id:sanpopo:20211025220957p:plain

 

公開鍵暗号方式(RSA)による接続_設定方法【OpenSSH】【フリーソフト】

  • 環境

OS:Ubuntu

バージョン:5.8.0-1013-raspi

カーネル:16-Ubuntu SMP PREEMPT

 

  • 構築

流れは以下の通り

 ①RSAの鍵を作成

 ②公開鍵を登録

 ③秘密鍵を使って接続

 

RSAの鍵を作成

ubuntu@ubuntu:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/ubuntu/.ssh/id_rsa): ←エンターを押す
Enter passphrase (empty for no passphrase): 秘密鍵のパスワード
Enter same passphrase again: 秘密鍵のパスワード
Your identification has been saved in /home/ubuntu/.ssh/id_rsa
Your public key has been saved in /home/ubuntu/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:YgKwEtosJ+vcZogvaPyFpOdpgkt5irfzQKTq4CEpf3w ubuntu@ubuntu
The key's randomart image is:
+---[RSA 3072]----+
|o |
|.* |
|* * |
|.B . |
|o ... o S |
|=o* .o . |
|@O.O . |
|%*@o= E |
|+BBO.. |
+----[SHA256]-----+

 

ubuntu@ubuntu:~$ ls -la .ssh
total 16
drwx------ 2 ubuntu ubuntu 4096 Jan 30 19:35 .
drwxr-xr-x 5 ubuntu ubuntu 4096 Jan 27 12:41 ..
-rw------- 1 ubuntu ubuntu 0 Sep 24 19:27 authorized_keys
-rw------- 1 ubuntu ubuntu 2655 Jan 30 19:35 id_rsa 秘密鍵
-rw-r--r-- 1 ubuntu ubuntu 567 Jan 30 19:35 id_rsa.pub ←公開鍵

 

②公開鍵を登録

ubuntu@ubuntu:~$ cd .ssh
ubuntu@ubuntu:~/.ssh$ cat id_rsa.pub >> authorized_keys
ubuntu@ubuntu:~/.ssh$ rm id_rsa.pub
ubuntu@ubuntu:~/.ssh$ ls -ln -la
total 16
drwx------ 2 1000 1000 4096 Jan 30 19:58 .
drwxr-xr-x 5 1000 1000 4096 Jan 27 12:41 ..
-rw------- 1 1000 1000 567 Jan 30 19:48 authorized_keys
-rw------- 1 1000 1000 2655 Jan 30 19:35 id_rsa

 

秘密鍵を使って接続

SSH SCRを使って、秘密鍵(id_rsa)をクライアント側にコピーする。

後は、teraterm秘密鍵と事前に登録したパスワードを入力して接続する。

f:id:sanpopo:20210202212415p:plain

f:id:sanpopo:20210202212429p:plain

 

無事成功しました。

 

Linuxのバージョン確認【コマンド】

Ubuntuのバージョン確認の方法

ubuntu@ubuntu:~$ cat /etc/*release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.10
DISTRIB_CODENAME=groovy
DISTRIB_DESCRIPTION="Ubuntu 20.10"
NAME="Ubuntu"
VERSION="20.10 (Groovy Gorilla)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.10"
VERSION_ID="20.10"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=groovy
UBUNTU_CODENAME=groovy

 

おまけに、カーネルバージョンを知りたい場合は以下のコマンドを実行

ubuntu@ubuntu:~$ uname -v
#16-Ubuntu SMP PREEMPT Thu Jan 14 10:16:10 UTC 2021
ubuntu@ubuntu:~$ uname -r
5.8.0-1013-raspi

ツイート検索①【Ruby】【Twitter】

・環境

 OS:Windows 10

 Ruby v:ruby 2.7.2p137 (2020-10-01 revision 5445e04352) [x64-mingw32]

 

・手順

 以下の流れで実施します。

①RubyInstallerのインストール

Twitterライブラリのインストール

APIキーの取得

APIキーの組み込み

 

①RubyInstallerのインストール

 ここから最新版をダウンロードしインストールします。詳細は割愛させて頂きます。

f:id:sanpopo:20201130233433p:plain

 

Twitterライブラリのインストール

 gem install twitter

 

APIキーの取得

 TwitterデベロップサイトにアクセスしてAPIキーを取得します。*1

 

利用用途を選びます。基本何でもいいようです。

f:id:sanpopo:20201201090150p:plain

国名と名前を入力します。

f:id:sanpopo:20201201090746p:plain

f:id:sanpopo:20201201090835p:plain

TwitterAPIやデータを利用する目的や理由を入力します。

f:id:sanpopo:20201201093929p:plain

f:id:sanpopo:20201201094005p:plain

確認画面が出てくるので間違いないか確認します。

f:id:sanpopo:20201201094216p:plain

 問題なければ同意します。

f:id:sanpopo:20201201095006p:plain

Twitterに登録しているメールアドレスに登録確認メールが来るので、「Confirm your email」を押します。

f:id:sanpopo:20201201100008p:plain

APIキー等が表示されるので、問題なければ「Skip to dashboard」を押します。

f:id:sanpopo:20201201103636p:plain

ダッシュボードからでもAPIキー等を確認出来ます。

f:id:sanpopo:20201202034515p:plain

f:id:sanpopo:20201202034708p:plain

f:id:sanpopo:20201202040513p:plain

APIキーの組み込み

 Twitter::REST::Clientクラスを利用して、指定されたキーワードで検索し該当するツイートを表示するスクリプトを例として示します。

 

twitter.rb

require 'twitter'

@client = Twitter::REST::Client.new do |config|
  config.consumer_key = "先ほど取得したAPI Key"
  config.consumer_secret = "先ほど取得したAPI Key Secret"
end

@client.search("コロナ", result_type: "recent").take(1).each do |tweet|
  pp tweet.text
end

 

 

>ruby twitter.rb
"コロナなんて、吹き飛ばせ‼️今日も、ファイトです☺️ https://t.co/T9yh7mUsjl"

 

成功しました。今回は「Twitter API v1.1」でしたが、次回は「Twitter API v2」を使ってみたいと思います。

*1:Twitterアカウントを持っていることが前提です。

Webサーバ構築_SSL導入編【Apache】【フリーソフト】

  • 環境

OS:Ubuntu

バージョン:Server amd64 20.04.1 LTS

カーネル:5.4.0-52-generic

 

  • 概要

 SSLのv2,3とTLSのv1のプロトコルを実装する事ができるフリーソフト。多数のシステムに組み込まれている。

 

  • 構築

ここから最新版(openssl-1.1.1h.tar.gz)をダウンロードし導入します

ubuntu@ubuntu:~$ wget https://www.openssl.org/source/openssl-1.1.1h.tar.gz
ubuntu@ubuntu:~$ tar zxvf openssl-1.1.1h.tar.gz
ubuntu@ubuntu:~$ cd openssl-1.1.1h/
ubuntu@ubuntu:~/openssl-1.1.1h$ ./config
ubuntu@ubuntu:~/openssl-1.1.1h$ make
ubuntu@ubuntu:~/openssl-1.1.1h$ make test
ubuntu@ubuntu:~/openssl-1.1.1h$ sudo make install

 

自己認証局(CA)を作成

まずは、秘密鍵と証明書を作成するスクリプトをコピーします

ubuntu@ubuntu:~$ cp /usr/local/ssl/misc/CA.pl ./
ubuntu@ubuntu:~$ ./CA.pl -newca
CA certificate filename (or enter to create) →Enterを押す

Making CA certificate ...
続きを読む

Webサーバ構築【Apache】【フリーソフト】

  • 環境

OS:Ubuntu

バージョン:Server amd64 20.04.1 LTS

カーネル:5.4.0-52-generic

 

  • 概要

フリーソフトで未だに存在感があり、多くの場所で利用されているWEBサーバの王道。様々なプラットフォームで利用できるようにMPMを採用しており、マルチスレッド対応のため少ないメモリ資源で多数の接続を受け入れる事が可能になっている。

  • 構築

ソースコードのダウンロードおよびコンフィギュレーション

ここからwgetコマンドを利用して、最新版(httpd-2.4.46.tar.gz)をダウンロードします。

ubuntu@ubuntu:~$ wget https://ftp.yz.yamagata-u.ac.jp/pub/network/apache//httpd/httpd-2.4.46.tar.gz
ubuntu@ubuntu:~$ tar xvzf httpd-2.4.46.tar.gz
ubuntu@ubuntu:~$ cd httpd-2.4.46/
ubuntu@ubuntu:~/httpd-2.4.46$ ./configure --with-mpm=worker --prefix=/opt/www
checking for chosen layout... Apache
checking for working mkdir -p... yes

      //

checking for APR... no
configure: error: APR not found. Please read the documentation. 

 

APRがないと怒られたのでここから最新版(apr-1.6.5.tar.gz)を入れます。

ubuntu@ubuntu:~$ wget https://ftp.riken.jp/net/apache//apr/apr-1.6.5.tar.gz
ubuntu@ubuntu:~$ tar xvfz apr-1.6.5.tar.gz
ubuntu@ubuntu:~$ cd apr-1.6.5/
ubuntu@ubuntu:~/apr-1.6.5$ ./configure
checking build system type... armv7l-unknown-linux-gnueabihf
checking host system type... armv7l-unknown-linux-gnueabihf
       //
checking for gcc... no
checking for cc... no
checking for cl.exe... no

 

コンパイラがないとのことなので、gccコンパイラをインストールします。

 

ubuntu@ubuntu:~/apr-1.6.5$ sudo apt install gcc
ubuntu@ubuntu:~/apr-1.6.5$ ./configure
ubuntu@ubuntu:~/apr-1.6.5$ make
Command 'make' not found, but can be installed with:
sudo apt install make # version 4.2.1-1.2, or
sudo apt install make-guile # version 4.2.1-1.2 

 

今度は、makeコマンドがないとのことなのでmakeをインストールします。 

ubuntu@ubuntu:~/apr-1.6.5$ sudo apt install make

 

気を取り直して

ubuntu@ubuntu:~/apr-1.6.5$ make
ubuntu@ubuntu:~/apr-1.6.5$ sudo make install

 

APRのインストールが成功したので、再度コンフィギュレーションを実施。

ubuntu@ubuntu:~/httpd-2.4.46$ ./configure --with-mpm=worker --prefix=/opt/www
checking for chosen layout... Apache
checking for working mkdir -p... yes
      //
checking for APR-util... no
configure: error: APR-util not found. Please read the documentation.

 

APR-utilが足りなかったのでここから最新版(apr-util-1.6.1.tar.gz)を入れます。

ubuntu@ubuntu:~$ wget https://ftp.tsukuba.wide.ad.jp/software/apache//apr/apr-util-1.6.1.tar.gz
ubuntu@ubuntu:~$ tar xvzf apr-util-1.6.1.tar.gz
ubuntu@ubuntu:~$ cd apr-util-1.6.1/
ubuntu@ubuntu:~/apr-util-1.6.1$ ./configure
checking build system type... armv7l-unknown-linux-gnueabihf
checking host system type... armv7l-unknown-linux-gnueabihf
     //
checking for APR... no
configure: error: APR could not be located. Please use the --with-apr option.

 

APRディレクトリを指定しないといけないので、先ほどのAPRディレクトリを指定して再度実行。 

ubuntu@ubuntu:~/apr-util-1.6.1$ ./configure --with-apr=/home/ubuntu/apr-1.6.5
ubuntu@ubuntu:~/apr-util-1.6.1$ make
xml/apr_xml.c:35:10: fatal error: expat.h: No such file or directory
35 | #include <expat.h>
| ^~~~~~~~~
compilation terminated.
make: *** [/home/ubuntu/apr-util-1.6.1/build/rules.mk:206: xml/apr_xml.lo] Error 1

 

expatがないとのことなので、以下でインストールし再度実行

ubuntu@ubuntu:~/apr-util-1.6.1$ sudo apt install libexpat1-dev
ubuntu@ubuntu:~/apr-util-1.6.1$ make
ubuntu@ubuntu:~/apr-util-1.6.1$ sudo make install

 

ここで、警告が出てきましたが無視をします。

libtool: warning: relinking 'libaprutil-1.la'

 

再度実行すると、今度はPCREが入っていないとのこと。

ubuntu@ubuntu:~/httpd-2.4.46$ ./configure --with-mpm=worker --prefix=/opt/www
checking for chosen layout... Apache
checking for working mkdir -p... yes
                       //
checking for pcre-config... false
configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/

 

ここからpcre-8.44.tar.gzをダウンロード・インストールします。

 *1

 

 ubuntu@ubuntu:~$ wget ftp://ftp.pcre.org/pub/pcre/pcre-8.44.tar.gz
ubuntu@ubuntu:~$ tar xvfz pcre-8.44.tar.gz
ubuntu@ubuntu:~$ cd pcre-8.44/
ubuntu@ubuntu:~/pcre-8.44$ ./configure
                   //
configure: error: Invalid C++ compiler or C++ compiler flags

 

C++が入っていないとのことなのでインストールします。

ubuntu@ubuntu:~/pcre-8.44$ sudo apt install g++

 

やり直し

ubuntu@ubuntu:~/pcre-8.44$ ./configure
ubuntu@ubuntu:~/pcre-8.44$ make
ubuntu@ubuntu:~/pcre-8.44$ sudo make install

 

今度こそ
ubuntu@ubuntu:~/httpd-2.4.46$ ./configure --with-mpm=worker --prefix=/opt/www
ubuntu@ubuntu:~/httpd-2.4.46$ make
     //
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:48: htpasswd] Error 1
make[2]: Leaving directory '/home/ubuntu/httpd-2.4.46/support'
make[1]: *** [/home/ubuntu/httpd-2.4.46/build/rules.mk:75: all-recursive] Error 1
make[1]: Leaving directory '/home/ubuntu/httpd-2.4.46/support'
make: *** [/home/ubuntu/httpd-2.4.46/build/rules.mk:75: all-recursive] Error 1

 

aprapr-utilがバンドル出来ていないので、以下の通りする

 

ubuntu@ubuntu:~/httpd-2.4.46$ cp -a ../apr-1.6.5 srclib/apr
ubuntu@ubuntu:~/httpd-2.4.46$ cp -a ../apr-util-1.6.1 srclib/apr-util
ubuntu@ubuntu:~/httpd-2.4.46$ ./configure --with-mpm=worker --prefix=/opt/www --with-included-apr --with-included-apr-util
ubuntu@ubuntu:~/httpd-2.4.46$ make
ubuntu@ubuntu:~/httpd-2.4.46$ sudo make install

 

libpcre.so.1のリンクが張られていないので

ubuntu@ubuntu:~/pcre-8.44$ ldd /opt/www/bin/httpd
linux-vdso.so.1 (0x00007ffc613f2000)
libpcre.so.1 => not found
libaprutil-1.so.0 => /opt/www/lib/libaprutil-1.so.0 (0x00007f6976e81000)
libapr-1.so.0 => /opt/www/lib/libapr-1.so.0 (0x00007f6976e46000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f6976e23000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f6976c31000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f6976c03000)
libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007f6976bc6000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f6976bc0000)
/lib64/ld-linux-x86-64.so.2 (0x00007f6976f65000)

 

少し前にインストールしたpcreから拝借

ubuntu@ubuntu:~$ sudo ln -s /home/ubuntu/pcre-8.44/.libs/libpcre.so.1 /opt/www/lib/libpcre.so.1

 

ubuntu@ubuntu:~$ ldd /opt/www/bin/httpd
linux-vdso.so.1 (0x00007ffcedf31000)
libpcre.so.1 => /opt/www/lib/libpcre.so.1 (0x00007f81b6557000)
libaprutil-1.so.0 => /opt/www/lib/libaprutil-1.so.0 (0x00007f81b6529000)
libapr-1.so.0 => /opt/www/lib/libapr-1.so.0 (0x00007f81b64ee000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f81b64c4000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f81b62d2000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f81b62a4000)
libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007f81b6267000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f81b6261000)
/lib64/ld-linux-x86-64.so.2 (0x00007f81b6626000)

 

いよいよ最後だが、httpd.confにServerNameが指定されていないのでエラーが発生するので追記

ubuntu@ubuntu:~$ sudo /opt/www/bin/apachectl
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
(13)Permission denied: AH00072: make_sock: could not bind to address [::]:80
(13)Permission denied: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs

 

/opt/www/conf/httpd.confにServerName 127.0.0.1:80を追記し再度起動

 

無事に起動

f:id:sanpopo:20201104025054p:plain

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

*1:Ver10は入れれません。

ハードディスクの監視【smartctl】【コマンド】

  • 概要

ハードディスクを監視するツール

ハードディスクにはS.M.A.R.Tと呼ばれる故障検知システムが備わっており、その情報を取得することができる

  •  利用方法

f:id:sanpopo:20201029184327p:plain

 「sudo」はスーパーユーザになるためのコマンドで、ハードディスクの情報を取得するために必要

 「smartctl -a」で、「/dev/ハードディスク名」で指定されるハードディスクからすべて情報を取得する