Subversion で HTTP から過去リビジョンのファイルを確認するとき

※ このエントリは、はてなグループ終了に伴う、サブブログからの引越エントリ(2014/11)です。
※ 情報が古い可能性もありますので、ご留意ください。



久しぶりに Subversion とか触ると、結構ど忘れしているのでメモ。

HTTP (Dav) で Subversion にアクセスすると、デフォルトで今の HEAD が見れるけど、過去のリビジョンにアクセスするときのURLは何だっけな、と調べたメモ。

結論から書くと以下のような感じ。

http://[リポジトリのURL]/!svn/bc/[リビジョン番号]/[ファイルのパス]


例えば、アクセスしたいファイルが、

とかだったりして、確認したいリビジョン番号が 1500 だとすると、

みたいなURLとなる。

Linux (シェルスクリプト) でファイルサイズを取得する

※ このエントリは、はてなグループ終了に伴う、サブブログからの引越エントリ(2015/11)です。
※ 情報が古い可能性もありますので、ご留意ください。


$ wc -c (ファイルのパス) | awk '{print $1}'

Amazon Product Advertising API から返される商品画像を HTTPS (SSL) で表示させる

※ このエントリは、はてなグループ終了に伴う、サブブログからの引越エントリ(2016/09)です。
※ 情報が古い可能性もありますので、ご留意ください。



タイトルの件、Amazon Product Advertising API からのレスポンスに含まれる商品画像が HTTP になっているものを HTTPS (SSL) にしたい場合。

例えば、基本、画像の取得は "ecx.images-amazon.com" ドメインが指定されるようだが、試しに HTTPS を指定しても、違うドメインのSSL証明書となっている。

で、例えば、以下の画像の場合、

http://ecx.images-amazon.com/images/I/514bjG3dt9L._SL160_.jpg

FQDN の部分を "images-na.ssl-images-amazon.com" に変更してスキームを HTTPS にすれば良さそう。

https://images-na.ssl-images-amazon.com/images/I/514bjG3dt9L._SL160_.jpg

過去、サイト等で参照している部分があれば、↑に置換しておけば大丈夫そうかな。

追記 (2020/04)

最近は、"m.media-amazon.com" で返されるようになっているみたいです。

https://m.media-amazon.com/images/I/514bjG3dt9L._SL160_.jpg

参考リンク

HP Microserver N54L セットアップ日記 その4 - Linux でルートパーティションの拡張

Hard disk drive


久しぶりに家の NAS をリプレースしていますシリーズその1, 2, 3の続きです。




OSのインストール時に、うっかり swap 用のパーティションをきってしまったのですが、swap に割り当てる領域を柔軟にコントロールしたくなってきました。

現状は、ブート用の USB メモリは以下のパーティションで構成されています。

  • "/" ルートパーティション
  • swap 用パーティション

この swap パーティションをつぶして、ルートパーティションの領域を拡大してみます。
(あらかじめ swap 領域は swapoff して外しておきましょう。)

ディスクパーティションの拡張

# parted /dev/sdf
GNU Parted 3.2
/dev/sdf を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) p
モデル: JetFlash Transcend 16GB (scsi)
ディスク /dev/sdf: 15.8GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: msdos
ディスクフラグ:

番号  開始    終了    サイズ  タイプ   ファイルシステム  フラグ
 1    1049kB  15.2GB  15.2GB  primary  xfs               boot
 2    15.2GB  15.8GB  544MB   primary  linux-swap(v1)

parted コマンドを使います。まずは "p" (print) コマンドでパーティションテーブルを確認。

(parted) help
  align-check TYPE N            パーティション N のアライメント(TYPE: min|opt)をチェックする
  help [コマンド]               ヘルプ表示。コマンド指定でそのヘルプを表示
  mklabel,mktable ラベルの種類  新しいラベル(パーティションテーブル)を作る
  mkpart パーティションの種類 [ファイルシステムの種類] 開始 終了
                    パーティションを作る
  name NUMBER 名前              パーティションに名前をつける
  print [devices|free|list,all|NUMBER]
                     パーティションテーブルや、利用可能なデバイス、空き領域、
                     見つかった全てのパーティション、あるいは特定のパーティションについて表示する
  quit                          プログラムを終了する
  rescue 開始 終了              開始、終了で指定した範囲付近にあるパーティションを復活させる
  resizepart NUMBER END         パーティション NUMBER を END にリサイズする
  rm NUMBER                     パーティションを削除する
  select デバイス               操作するデバイスを選択
  disk_set FLAG STATE           選択したデバイスの FLAG を変更
  disk_toggle [FLAG]            選択したデバイスの FLAG の状態をトグル
  set NUMBER フラグ 状態        ファイルシステムのフラグと状態を設定する
  toggle [NUMBER [FLAG]]        パーティションのフラグの状態を反転する
  unit UNIT                     デフォルトの単位を UNIT にする
  version                       GNU Parted のバージョンと著作権情報を表示

"help" でサブコマンドの確認・・・。

(parted) rm 2
(parted) p
モデル: JetFlash Transcend 16GB (scsi)
ディスク /dev/sdf: 15.8GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: msdos
ディスクフラグ:

番号  開始    終了    サイズ  タイプ   ファイルシステム  フラグ
 1    1049kB  15.2GB  15.2GB  primary  xfs               boot

"rm" コマンドでパーティションを削除します。(引数はパーティションナンバー)

(parted) resizepart 1 100%
警告: パーティション /dev/sdf1 は使用中です。それでも実行しますか?
はい(Y)/Yes/いいえ(N)/No? Y
終了?  [15.2GB]? 100%
(parted) p
モデル: JetFlash Transcend 16GB (scsi)
ディスク /dev/sdf: 15.8GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: msdos
ディスクフラグ:

番号  開始    終了    サイズ  タイプ   ファイルシステム  フラグ
 1    1049kB  15.8GB  15.8GB  primary  xfs               boot

"resizepart" コマンドでパーティションのリサイズを行います。
今回は、2番目のパーティションを削除し、1パーティションのみなので、 END に "100%" を入力し、終了場所として領域の最後を指定する (全ての領域を利用する) ようにします。

(parted) q                                                                
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。

"q" (quit) コマンドで parted を終了します。
これでパーティションの拡張作業はおしまいです。

ファイルシステム (XFS) の拡張

OSが見ているのはファイルシステムなので、ボリューム (パーティション) の拡張をするだけでは、拡張分をOSから利用することができません。
よって、ファイルシステムにそのことを教えてあげる必要があります。

# xfs_growfs /
meta-data=/dev/sda1              isize=512    agcount=4, agsize=930560 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1
data     =                       bsize=4096   blocks=3722240, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 3722240 to 3855104

XFS ファイルシステムの拡張 (リサイズ) は、上記のような感じで、"xfs_growfs" コマンドを実行すればOKです。

もし、上記コマンドが見つからない場合は、xfsprogs パッケージに含まれていると思いますので、dnf / yum あたりでインストールしましょう。

実行後、df コマンドなどで、サイズが拡大したことを確認できるはずです。

※ ちなみに、ext2 / ext3 / ext4 ファイルシステムでは、"resize2fs" コマンドでファイルシステムのリサイズができるはず。

おまけ

ここまでで、タイトルに書いたルートパーティションの拡張はできたわけですが、swap のパーティションがなくなって、swap 領域はどうなったのか、、、という話ですが、ルートパーティションの任意の場所に swap 用のファイルを作って、swapon しておけばOKです。

細かいやり方は、以下のエントリに書いてあります。


今日はこの辺で。
それでは! =͟͟͞͞(๑•̀=͟͟͞͞(๑•̀д•́=͟͟͞͞(๑•̀д•́๑)=͟͟͞͞(๑•̀д•́


pg_basebackup コマンドによる pg_tblspc ディレクトリ内のシンボリックリンクの扱い

※ このエントリは、はてなグループ終了に伴う、サブブログからの引越エントリ(2016/05)です。
※ 情報が古い可能性もありますので、ご留意ください。



結論から言うと、問題なくサポートされていてバックアップできた。


pg_basebackup のドキュメントの最後の注意書きには、以下の記載がある。

注意

このバックアップには、設定ファイルとサードパーティによりディレクトリに格納された追加ファイルを含む、データディレクトリとテーブル空間内のすべてのファイルが含まれます。 データディレクトリ内には通常のファイルとディレクトリのみが許され、シンボリックリンクや特殊デバイスファイルは許されません。

PostgreSQLがテーブル空間を管理する方式のため、すべての追加テーブル空間のパスはバックアップをリストアした時に常に同一でなければなりません。 しかし主データディレクトリは他の場所に設置することができます。

https://www.postgresql.jp/document/9.3/html/app-pgbasebackup.html

テーブルスペースの指定がある pg_tblspc ディレクトリ内にはシンボリックリンクがあるものだけど、上記からはサポートされないような雰囲気が漂っていて、実際にやってみたら問題なくバックアップ対象となっていた。

Dropbox で直接表示できる画像の URL リンクを生成する

※ このエントリは、はてなグループ終了に伴う、サブブログからの引越エントリ(2019/01)です。
※ 情報が古い可能性もありますので、ご留意ください。



Dropbox の Public フォルダに配置してある画像ファイルですが、いつの間にか Dropbox のサイト内で表示されるようになってしまっていたので、直接画像ファイルを表示(ダウンロード)できるリンクを作るためにはどうしたらいいのかという話。

まず、対象のファイルのリンクを取得する。


すると、以下のようなリンクが取得できる。

https://www.dropbox.com/s/xxxxxxxx/sample.png?dl=0

このリンクを2箇所以下のように書き換える。

  • "www.dropbox.com" を "dl.dropboxusercontent.com" に書き換え
  • "?dl=0" を削除

↑の例を書き換えると以下のように感じとなる。

https://dl.dropboxusercontent.com/s/xxxxxxxx/sample.png

これで直接表示されるはず。です。

HP Microserver N54L セットアップ日記 その3 - CentOS 8 のインストールと設定

久しぶりに家の NAS をリプレースしていますシリーズその1, 2の続きです。



その2、で無事に BIOS のアレコレをした結果、ディスクが認識できたので、OS をインストールしていきます。

家のサーバは、基本的に CentOS を使うようにしているのですが、新しいバージョンをということで、CentOS 8 を入れてみることに。

CentOS 8 のインストール

まずは ISO イメージをダウンロードします。

今回は、上記のミラーサイトあたりから、今時点の最新版である "CentOS-8.1.1911-x86_64-boot.iso" をダウンロードして使用しました。

HP Microserver は光学ドライブがないので、USBメモリ等に、USB ブートできるイメージとして ISO を焼き付けます。


インストール開始。言語・キーボードを選択します。


いくつかエラーが出ています・・・。1つずつ必要な部分を修正&設定していきます。


今回、NICを増設しているので、LANケーブルを接続したアダプタを利用すべく、選択します。


地域の設定を行います。TOKYO.


インストール先のデバイスを指定します。
今回は、USB メモリを OS のブートディスクにするので、そちらにルートパーティションの設定を行いました。


あとは、"ソフトウェアの選択" で最低限のインストールを指定。
他、Kdump を無効としたくらいでしょうか。(家庭利用なので...)

こんな感じで、設定を行った後、インストールを開始し、完了するのを待ちます。

OS インストール完了後

USBメモリを抜いて、OSが起動してくることを確認し、さらにネットワークに接続されている(インターネット接続可能である)ことを確認します。

ここから、このサーバを NAS にするためのセットアップ+αをしていきたいと思います。

まずはアップデート

パッケージ管理システムが yum => dnf になっているのですね。
詳細はこちらが参考になりました。


# dnf update
メタデータの期限切れの最終確認: 0:00:27 時間前の 2020年02月24日 23時51分35秒 に実施しました。
依存関係が解決しました。
行うべきことはありません。
完了しました!

すでに最新化されておりました・・・ネットワークインストールしたから当たり前かw

SELinux の設定

家庭内 NAS なので無効で・・・。
"/etc/sysconfig/selinux" ファイルの以下行をこんな感じに修正。

SELINUX=disabled

ファイヤーウォールサービスの停止

家庭内 NAS なので、こちらも無効に・・・。

# systemctl stop firewalld.service
# systemctl disable firewalld.service


この辺で、一度 OS を再起動します。

# shutdown -r now

RAID ボリュームの作成

NAS の本丸です。今回は、ハードディスク5本を RAID6 で組みます。

まず parted コマンドで /dev/sd[b,c,d,e,f] まで以下の要領でパーティションを切ります。

# parted /dev/sdb
GNU Parted 3.2
/dev/sdb を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted)
>||

コマンドでデバイス名を指定。

>||
(parted) p
エラー: /dev/sdb: ディスクラベルが認識できません。
モデル: ATA Hitachi HUA72303 (scsi)
ディスク /dev/sdb: 3001GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: unknown
ディスクフラグ:

まず print で中身を確認。

(parted) mkpart
エラー: /dev/sdb: ディスクラベルが認識できません。

いきなり mkpart できなかったので、、、

(parted) mklabel gpt
(parted) p
モデル: ATA Hitachi HUA72303 (scsi)
ディスク /dev/sdb: 3001GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: gpt
ディスクフラグ:

番号  開始  終了  サイズ  ファイルシステム  名前  フラグ

mklabel でラベルを付与します。GPT を指定。
で、print で確認。

(parted) mkpart
パーティションの名前?  []?
ファイルシステムの種類?  [ext2]? xfs
開始? 0%
終了? 100%
(parted) p
モデル: ATA Hitachi HUA72303 (scsi)
ディスク /dev/sdb: 3001GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: gpt
ディスクフラグ:

番号  開始    終了    サイズ  ファイルシステム  名前  フラグ
 1    1049kB  3001GB  3001GB  xfs

mkpart できました。1パーティションに容量をフルで割り当て。

(parted) quit
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。

終わったら、 quit です。これをディスク5つ分実行します。

# fdisk -l

終わったら fdisk コマンドのリストでも、全体でパーティションが構成できているか確認してみるのも良いですね。

# mdadm --create /dev/md0 --level=6 --raid-devices=5 /dev/sd[b,c,d,e,f]1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

次は mdadm で RAID ボリュームを作ります。
↑こんな感じで、今回は基本デフォルトの設定で作りました。

create する際のオプション等は、man を参照するか、以下リンク先に色々書いてありました。


# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid6 sdf1[4] sde1[3] sdd1[2] sdc1[1] sdb1[0]
      8790398976 blocks super 1.2 level 6, 512k chunk, algorithm 2 [5/5] [UUUUU]
      [>....................]  resync =  0.1% (3901136/2930132992) finish=403.3min speed=120902K/sec
      bitmap: 22/22 pages [88KB], 65536KB chunk

unused devices: <none>

終わったら、MD デバイスのステータスを確認してみます。
きちんと Level 6 で sync が走っていますね。

# mdadm --detail --scan > /etc/mdadm.conf

MD デバイスの設定を、ファイルに出力しておきます。(お約束)

ファイルシステムの作成とマウント

# mkfs.xfs -f -b size=4096 -i size=512 -l size=64m /dev/md0
meta-data=/dev/md0               isize=512    agcount=32, agsize=68675072 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1
data     =                       bsize=4096   blocks=2197599744, imaxpct=5
         =                       sunit=128    swidth=384 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=16384, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

次、XFS のファイルシステムを↑のような感じで、作成します。
(今回は XFS を選択しましたが、ファイルシステムはお好みで。)

# blkid /dev/md0
/dev/md0: UUID="eb3af70b-e1bf-4a94-9749-3e474afbd02c" TYPE="xfs"

デバイスの UUID を調べて、、、

UUID=eb3af70b-e1bf-4a94-9749-3e474afbd02c /data                   xfs     noatime,logbufs=8  1 2

"/etc/fstab" に上記の行を記載します。
これで、OS のブート時に自動でマウントされるようになります。

# mount -a
# df -h
ファイルシス   サイズ  使用  残り 使用% マウント位置
devtmpfs         3.9G     0  3.9G    0% /dev
tmpfs            3.9G     0  3.9G    0% /dev/shm
tmpfs            3.9G  8.6M  3.9G    1% /run
tmpfs            3.9G     0  3.9G    0% /sys/fs/cgroup
/dev/sda1         15G  1.8G   13G   13% /
tmpfs            785M     0  785M    0% /run/user/0
/dev/md0         8.2T   59G  8.2T    1% /data

"mount -a" で、fstab 記載した分のマウントを手動で行った後、df コマンドで作成したパーティションが (今回の例だと) "/data" ディレクトリとしてマウントされたことが確認できました。

ネットワーク関連の設定

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

IPv6 を無効にするべく、"/etc/sysctl.conf" に上記を追記します。
(推奨としては "/etc/sysctl.d" 配下にファイルを作成して、そこに追記するのがよいかとは思います。)

# sysctl -p
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

上記のパラメータを反映させます。

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
#::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

上記のような感じで、"/etc/hosts" の IPv6 のループバックアドレスをコメントアウトします。

# nmcli --help
使い方: nmcli [OPTIONS] OBJECT { COMMAND | help }

OPTIONS
  -a, --ask                                ask for missing parameters
  -c, --colors auto|yes|no                 whether to use colors in output
  -e, --escape yes|no                      escape columns separators in values
  -f, --fields <field,...>|all|common      specify fields to output
  -g, --get-values <field,...>|all|common  shortcut for -m tabular -t -f
  -h, --help                               print this help
  -m, --mode tabular|multiline             output mode
  -o, --overview                           overview mode
  -p, --pretty                             pretty output
  -s, --show-secrets                       allow displaying passwords
  -t, --terse                              terse output
  -v, --version                            show program version
  -w, --wait <seconds>                     set timeout waiting for finishing operations

OBJECT
  g[eneral]       NetworkManager's general status and operations
  n[etworking]    overall networking control
  r[adio]         NetworkManager radio switches
  c[onnection]    NetworkManager's connections
  d[evice]        devices managed by NetworkManager
  a[gent]         NetworkManager secret agent or polkit agent
  m[onitor]       monitor NetworkManager changes

CentOS 8 は NetworkManager が採用されているので、CUIツールである nmcli コマンドを利用します。
まず help サブコマンドで使い方を確認...

# nmcli d
DEVICE    TYPE      STATE     CONNECTION
enp3s0    ethernet  接続済み  enp3s0
enp2s0f0  ethernet  切断済み  --
enp2s0f1  ethernet  切断済み  --
lo        loopback  管理無し  --

現在のデバイスのステータスを確認します。

# nmcli c add type bond ifname bond0 con-name bond0 bond.options "mode=balance-alb,miimon=100"
接続 'bond0' (ec83d793-0ac4-43d1-8e80-0f52dba8e33a) が正常に追加されました。

追加したデュアルポートの Intel NIC で bonding (冗長構成) を組みます。
上記コマンドで "bond0" というネットワークインターフェースを作成しました。
mode は、balance-alb (mode=6) です。

# nmcli c mod bond0 autoconnect yes

OS 起動時等で、自動的にインターフェースが有効となるように設定。

# nmcli c delete enp2s0f0
接続 'enp2s0f0' (4544935e-6284-4f25-babe-1a904d8c2f64) が正常に削除されました。

# nmcli c add type ethernet ifname enp2s0f0 con-name enp2s0f0 master bond0
接続 'enp2s0f0' (7176a79c-309d-4ac5-9467-423dd42acb82) が正常に追加されました。

# nmcli c delete enp2s0f1
接続 'enp2s0f1' (d68f21d1-72d5-4a6f-84c2-bce593caf37e) が正常に削除されました。

# nmcli c add type ethernet ifname enp2s0f1 con-name enp2s0f1 master bond0
接続 'enp2s0f1' (65da659b-434a-4f51-b26f-c86683babeca) が正常に追加されました。

"enp2s0f0" と "enp2s0f1" の2つのデバイスを、"bond0" デバイスに紐付けます。

# nmcli d
DEVICE    TYPE      STATE     CONNECTION
enp3s0    ethernet  接続済み  enp3s0
bond0     bond      接続済み  bond0
enp2s0f0  ethernet  接続済み  enp2s0f0
enp2s0f1  ethernet  接続済み  enp2s0f1
lo        loopback  管理無し  --

各デバイスのステータスを再確認。

# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: adaptive load balancing
Primary Slave: None
Currently Active Slave: enp2s0f0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: enp2s0f0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 90:e2:xx:xx:xx:xx
Slave queue ID: 0

Slave Interface: enp2s0f1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 90:e2:xx:xx:xx:xx
Slave queue ID: 0

bonding のステータスも確認し、問題なさそうです。

# nmcli c mod bond0 ipv4.addresses 192.168.0.xx/24
# nmcli c mod bond0 ipv4.gateway 192.168.0.1
# nmcli c mod bond0 ipv4.dns 192.168.0.1
# nmcli c mod bond0 ipv4.method manual
# nmcli c mod bond0 ipv6.method ignore

IPアドレス/マスク、ゲートウェイのアドレス、DNSサーバの指定等を行います。

# nmcli c down bond0 && nmcli c up bond0
接続 'bond0' が正常に非アクティブ化されました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/2)
接続が正常にアクティベートされました (master waiting for slaves) (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/7)

ここまで来たら、一度 bond0 を無効/有効にします。

# nmcli con mod enp3s0 autoconnect no
# nmcli con mod enp3s0 ipv4.method manual
# nmcli c down enp3s0 && nmcli c down bond0 && nmcli c up bond0

上記は、HP Microserver のオンボード NIC なのですが、OS 起動後は利用しないので、無効とします。この辺はお好みで。
(厳密には、このポートは Wake On Lan で利用するので、LANケーブルは挿したままですが。)

# nmcli d
DEVICE    TYPE      STATE     CONNECTION
bond0     bond      接続済み  bond0
enp2s0f0  ethernet  接続済み  enp2s0f0
enp2s0f1  ethernet  接続済み  enp2s0f1
enp3s0    ethernet  切断済み  --
lo        loopback  管理無し  --

各デバイスのステータスを再確認し、想定通りです。

Sambaのインストールと設定

# dnf install samba
メタデータの期限切れの最終確認: 0:48:44 時間前の 2020年02月26日 00時48分59秒 に実施しました。
依存関係が解決しました。
====================================================================================================
 パッケージ                   アーキテクチャー バージョン                    リポジトリー     サイズ
====================================================================================================
インストール:
 samba                        x86_64           4.10.4-101.el8_1              BaseOS           739 k
依存関係のインストール:
 samba-common-tools           x86_64           4.10.4-101.el8_1              BaseOS           469 k
 samba-libs                   x86_64           4.10.4-101.el8_1              BaseOS           185 k

トランザクションの概要
====================================================================================================
インストール  3 パッケージ

ダウンロードサイズの合計: 1.4 M
インストール済みのサイズ: 4.1 M
これでよろしいですか? [y/N]: y

まず Samba を DNF でインストールします。

# cp /etc/samba/smb.conf{,.bak}

念のため、Samba の初期設定ファイルをコピーしてバックアップ。
Samba の設定ファイルを良い感じに設定します。(この辺は好みですし、インターネット上にたくさん情報があるので割愛します。)

# systemctl start smb nmb
# systemctl enable smb nmb
Created symlink /etc/systemd/system/multi-user.target.wants/smb.service → /usr/lib/systemd/system/smb.service.
Created symlink /etc/systemd/system/multi-user.target.wants/nmb.service → /usr/lib/systemd/system/nmb.service.

Samba 関連のサービスを起動&自動起動の有効化。

# smbpasswd -a nami

Samba 用のユーザ作成&パスワード設定を実施。


とまぁ、こんなところでしょうか。(ちょっと途中で力尽きてきた部分もありますが、さらに細かい部分については、また別エントリで記載します。)

他、何か書き漏れている気がしなくもないですが、大筋の流れはこういう感じなので、自分のためにも備忘録的にココに残しておきます。

今日はこの辺まで。
それでは! =͟͟͞͞(๑•̀=͟͟͞͞(๑•̀д•́=͟͟͞͞(๑•̀д•́๑)=͟͟͞͞(๑•̀д•́

あわせて読みたい

その4を書きました。


CentOS8 実践ガイド [システム管理編] (impress top gear)

CentOS8 実践ガイド [システム管理編] (impress top gear)

  • 作者:古賀政純
  • 発売日: 2020/03/13
  • メディア: 単行本(ソフトカバー)

PR-400KI から Yahoo! メールの SMTP 経由でメール送信が失敗していたのを直したログ

我が家は NTT のフレッツ光を使っていて、NTT さんよりひかり電話ルータ (PR-400KI) をお借りしている (そろそろ変えたい...) のですが、この PR-400KI には、割り当てられているグローバル IP アドレスが変わった際に、メールで通知してくれる機能があります。

最近、その通知メールが来ないなぁ、と思っていたのですが、この前、外から VPN 接続しようと思ったらできなくて、グローバル IP アドレスが変更になったが、そのお知らせが来ていないことに気付きました。

ルーターからは、Yahoo!メールの SMTP サーバを使わせていただいているのですが、特に何も設定を変更していないので、何があったのかなぁと調べてみたログです。

ログを調べる

定石ですが、まず状況の確認です。

[詳細設定] → [VPNサーバ設定] から一番下部にある「IPアドレス通知設定」をクリック。
IPアドレス通知設定画面の下部に「メール通知ログ」がありますので、そちらをクリック。

すると、メール通知ログが表示されるので、そちらを確認します。

昨年冬 (!) くらいから、「認証失敗」のログが出力されていました・・・。
メールが送れないと、その失敗自体の通知もできなくなるので、まぁまぁ辛いですね。(というほど大したことはしていないので別によいのですが。)

ルーター側の設定 (自宅の外接側含めて) は特に何も変更していないので、Yahoo!メール側かな、と。

Yahoo!メールの設定を確認する

ここがズバリなのですが、Yahoo!メールの設定画面から「IMAP/POP/SMTPアクセスとメール転送」の項目で、どこかのタイミングで、元々からの仕様変更というか振る舞いが変わったのか、「Yahoo! JAPAN公式サービスを利用したアクセスのみ有効にする (推奨)」の設定にされていたので、これを「Yahoo! JAPAN公式サービス以外からのアクセスも有効にする」に変更します。
あわせて SMTP が「有効」になっていれば OK かと。

設定変更後は、忘れずに右上の「保存」をクリックしましょう。

通知メールが送信されるか確認

PR-400KI の管理画面に戻り、接続の OFF/ON を行って、グローバルIPアドレスが再付与されるのを確認し、それで通知メールが送信されるかを確認します。

無事、手元に IP アドレス変更の通知メールが送信され、メール通知ログも上記のように送信されたことが記録されていました。

めでたしめでたし。

参考: PR-400KI の IPアドレス通知の設定

これから設定したい人向け?に、こんな感じで設定しているよ、というのを載せておきます。

それでは! =͟͟͞͞(๑•̀=͟͟͞͞(๑•̀д•́=͟͟͞͞(๑•̀д•́๑)=͟͟͞͞(๑•̀д•́


"fatal error: stdio.h: No such file or directory"

※ このエントリは、はてなグループ終了に伴う、サブブログからの引越エントリ(2015/09)です。
※ 情報が古い可能性もありますので、ご留意ください。


Mac OS だと

# xcode-select --install

Ubuntu だと

# apt-get install libc6-dev

こうか。

# apt-get install build-essential

でも OK かと。

Ubuntu 14.04 で mdadm で設定した Array が再起動したら md127 になってしまう件

※ このエントリは、はてなグループ終了に伴う、サブブログからの引越エントリ(2016/03)です。
※ 情報が古い可能性もありますので、ご留意ください。



2回目の遭遇なので、メモる。
まず "/etc/mdadm/mdadm.conf" のフォーマットは以下のような感じなので、あわせるべし。

ARRAY /dev/md/0 metadata=1.2 UUID=xxxxxxxx:66416fca:5fd99961:xxxxxxxx name=servername:0
ARRAY /dev/md/1 metadata=1.2 UUID=xxxxxxxx:d5f91069:7c91522f:xxxxxxxx name=servername:1
ARRAY /dev/md/2 metadata=1.2 UUID=xxxxxxxx:8cdfe34e:6146d5c3:xxxxxxxx name=servername:2
ARRAY /dev/md/3 metadata=1.2 UUID=xxxxxxxx:f9827b60:d0cd6cf7:xxxxxxxx name=servername:3


で、その後

# update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.2.0-34-generic

を実行して再起動すると、MDが指定通りにマッピングされている、はず。
いや、もっとエレガントなやり方があるとは思うんだけど、、、一旦これで回避的なメモでした。