2020年5月16日土曜日

Linux で IPv4 アドレスを /proc で確認する方法

/proc/net/fib_trie で確認できる。

$ cat /proc/net/fib_trie
Main:
  +-- 0.0.0.0/0 3 0 5
     |-- 0.0.0.0
        /0 universe UNICAST
     +-- 127.0.0.0/8 2 0 2
        +-- 127.0.0.0/31 1 0 0
           |-- 127.0.0.0
              /32 link BROADCAST
              /8 host LOCAL
           |-- 127.0.0.1
              /32 host LOCAL
        |-- 127.255.255.255
           /32 link BROADCAST
     +-- 192.168.10.0/24 2 0 1
        |-- 192.168.10.0
           /32 link BROADCAST
           /24 link UNICAST
        |-- 192.168.10.100
           /32 host LOCAL
        |-- 192.168.10.255
           /32 link BROADCAST
Local:
  +-- 0.0.0.0/0 3 0 5
     |-- 0.0.0.0
        /0 universe UNICAST
     +-- 127.0.0.0/8 2 0 2
        +-- 127.0.0.0/31 1 0 0
           |-- 127.0.0.0
              /32 link BROADCAST
              /8 host LOCAL
           |-- 127.0.0.1
              /32 host LOCAL
        |-- 127.255.255.255
           /32 link BROADCAST
     +-- 192.168.10.0/24 2 0 1
        |-- 192.168.10.0
           /32 link BROADCAST
           /24 link UNICAST
        |-- 192.168.10.100
           /32 host LOCAL
        |-- 192.168.10.255
           /32 link BROADCAST

シェルのコマンドだけで抽出するならこうかな。
上からネットワーク、IP アドレス、ブロードキャストアドレス。

$ cat /proc/net/fib_trie  | grep \|-- | grep -v -e 0.0.0.0 -e 127.* | sort | uniq | cut -d"-" -f 3
 192.168.10.0
 192.168.10.100
 192.168.10.255

● proc, IPv4, check, 確認, IP address, IP アドレス

2020年5月10日日曜日

HDD (SSD) 上の Ubuntu 20.04 iso インストーラを grub2 で起動する

Ubuntu 20.04 LTS 日本語 Remix がリリースされたので、前にやってうまくいかなかった HDD (SSD) 上の iso イメージを
grub2 で起動してみる。に再チャレンジ。

以下、パーティションは、下記のようになっている PC での例です。

# sfdisk -l /dev/nvme0n1
Disk /dev/nvme0n1: 238.49 GiB, 256060514304 bytes, 500118192 sectors
Disk model: PM981 NVMe Samsung 256GB                
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 72AF23F1-3135-4466-B984-8C7183D69CCF

Device             Start       End   Sectors   Size Type
/dev/nvme0n1p1      2048    499711    497664   243M EFI System
/dev/nvme0n1p2    499712  50499583  49999872  23.9G Linux filesystem
/dev/nvme0n1p3  50499584 100499455  49999872  23.9G Linux filesystem
/dev/nvme0n1p4 100499456 108498943   7999488   3.8G Linux swap
/dev/nvme0n1p5 108498944 500117503 391618560 186.8G Linux filesystem     <-- ここが Home Directory

今、起動している Ubuntu 19.10 上で grub の設定ファイルを編集。
set isofile の部分は、適宜変更。
5 番目のパーティションに /home をマウントしているので、/home/USER の場合は /USER になる。

# vi /etc/grub.d/40_custom

(下記のように編集)
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "Ubuntu 20.04 ISO" {
    set isofile="/USER/Downloads/ubuntu-ja-20.04-desktop-amd64.iso"
    rmmod tpm
    loopback loop (hd0,gpt5)$isofile
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject toram --
    initrd (loop)/casper/initrd
}

grub の設定を反映。

# update-grub

再起動して、Grub のメニューで "Ubuntu 20.04 ISO" を選択。

Ubuntu 20.04 ISO イメージ起動後、インストーラを起動する前に、/isodevice をアンマウントする必要があります。

$ sudo umount -l -r -f /isodevice

■ 参考
https://help.ubuntu.com/community/Grub2/ISOBoot

● grub2, grub, iso, HDD, SSD, 直接, 起動, boot, ブート, インストーラ, installer, install, hdd, ssd, Ubuntu

Ubuntu で ISO イメージファイルをマウントする

Ubuntu 20.04 インストーラを /mnt ディレクトリにマウントするときの例。

# mount -t iso9660 -o loop,ro ~/Downloads/ubuntu-ja-20.04-desktop-amd64.iso /mnt

● mount, iso, イメージ, iso image, マウント

2020年5月9日土曜日

マルチコネクションダウンロードコマンド aria2 (HTTP/HTTPS, FTP, SFTP)

大容量データのダウンロードを高速化できるコマンド aria2。
急ぎで大きいファイルをダウンロードしたいときに便利。
Ubuntu なら apt コマンドでサクッとインストール。

# apt install aria2

使い方。5 セッションでダウンロードする場合。

$ aria2c -x5 URL

イカしてる。

● マルチ, コネクション, multi, connection, HTTP, HTTPS, FTP, SFTP, aria2, 高速, 複数, 並列, curl, wget, 短縮

2020年5月8日金曜日

Raspberry Pi + Ubuntu server 環境で、起動時に ntpdate で時刻同期する

Raspberry Pi で NTPd を設定していても、起動後に時刻が同期するまでに時間がかかる。
一旦、ntpdate で同期するように設定。

ntpdate をインストール

# apt -y install ntpdate

自動起動するように設定。

# vi /etc/systemd/system/ntpdate.service
(下記のように記述)
[Unit]
Description=Set time with ntpdate
After=network.target

[Service]
# use -u to avoid conflict with ntpd
ExecStart=/usr/sbin/ntpdate -u ntp.nict.jp

# we may not have network yet, so retry until success
Restart=on-failure
RestartSec=60s

[Install]
WantedBy=multi-user.target

ntpdate.service を有効にする。 再起動して、時刻が同期されることを確認。

# systemctl enable ntpdate.service

● Raspberry Pi, Ubuntu, server, ntpdate, 時刻同期, ntp, 起動時