- 投稿日:2020-09-24T15:49:46+09:00
[RHEL/CentOS 8] ネットワーク設定 memo
nmcli の使い方
ネットワーク設定のテキストユーザーインターフェース
nmtui
は直感的に分かりますので、ここではコマンドラインインターフェースのnmcli
についてメモしておきます。コネクション一覧
認識しているネットワークインターフェースの一覧を表示します。
nmcli c例# nmcli c[onnection] NAME UUID TYPE DEVICE ens160 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ethernet ens160
確認
概要
現在の状態を確認します。
nmcli例# nmcli
詳細
指定したネットワーク(コネクションID)の詳細な設定を確認します。
nmcli c s [コネクションID]例# nmcli c[onnection] s[how] ens160
設定
指定したネットワーク(コネクションID)の設定を変更します。
nmcli c[onnection] m[odifty] [コネクションID] [+|-]<setting>.<property> <value>例固定IP (DHCP のときは manual のとこを auto にする) # nmcli c m ens160 ipv4.method manual DNS # nmcli c m ens160 ipv4.dns 8.8.8.8,8.8.4.4 IP アドレス # nmcli c m ens160 ipv4.addresses 192.168.45.10/24 デフォルトゲートウェイ # nmcli c m ens160 ipv4.gateway 192.168.45.254 IPv6無効 # nmcli c m ens160 ipv6.method ignore 自動接続 # nmcli c m ens160 connection.autoconnect yes スタティックルート # nmcli c m ens160 ipv4.routes "192.168.100.0/24 192.168.45.253" コネクション系の設定反映 (downは不要) # nmcli c up ens160 ホスト名 # nmcli g[eneral] hostname centkun8.fukuchan-senpai.localTips
IPアドレスやDNS、スタティックルートなど複数設定できるもののやり方。
また削除方法など。例カンマで区切って複数設定する # nmcli c m ens160 ipv4.dns "8.8.8.8,8.8.4.4" 「+」を頭に付けて既存設定に追加する # nmcli c m ens160 +ipv4.dns "1.1.1.1" 「-」を頭に付けてマッチする該当パラメーターのみを消去する # nmcli c m ens160 -ipv4.dns "8.8.4.4" 「""」でパラメーターを消去する # nmcli c m ens160 ipv4.dns ""
- 投稿日:2020-09-24T02:50:50+09:00
Raspberry PiのUbuntuにスワップ領域を設定する
使用環境
- Raspberry Pi 3 Model B+
- Ubuntu 18.04.5 LTS Server
スワップが設定されているかどうか確認する
$ sudo swapon --show設定されてないので何も出ない
設定されていればこんな感じで表示される$ sudo swapon --show NAME TYPE SIZE USED PRIO /swapfile file 1024M 0B -2手順
スワップファイル作成
とりあえず1GB作ってみる。まぁ、そんなに必要に迫られてもないし、物理メモリも1GBなので同じくらいで。
$ sudo fallocate -l 1G /swapfilerootユーザーしか読み書きできないようにパーミッションを変更する
$ sudo chmod 600 /swapfile
mkswap
を使ってファイルにスワップ領域を作成する$ sudo mkswap /swapfile Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes) no label, UUID=44dd3594-5812-473e-839d-d9c7a1af3d6aスワップを有効にする
$ sudo swapon /swapfile確認してみる
$ sudo swapon --show NAME TYPE SIZE USED PRIO /swapfile file 1024M 0B -2htopでも見てみる
起動時に自動マウントされるように
fstab
に追加する$ echo '/swapfile swap swap defaults 0 0' | sudo tee -a /etc/fstab /swapfile swap swap defaults 0 0再起動して確認してみる
$ sudo reboot$ sudo swapon --show NAME TYPE SIZE USED PRIO /swapfile file 1024M 0B -2参考にしたサイト
https://linuxize.com/post/how-to-add-swap-space-on-ubuntu-18-04/
https://kazmax.zpp.jp/linux_beginner/mkswap.html
- 投稿日:2020-09-24T00:11:34+09:00
条件式のグループ化
こんにちは。キータに初めて投稿します。よろしくお願いします。
新しいlinuxの教科書(SBクリエイティブ) の学習のメモ書きです。
行き詰まったところや、問題解決のために調べた内容を共有します。P295 「条件式のグループ化」 を学習しました。
[ミス]
条件式を記述し、変数を参照しようとする際、ダラーサインを抜いてしまうミスをしました。
変数を参照する際はダラーサインを抜いてしまいがちなので
気をつけたいと思います。これは誤り -d "datadir" の箇所が。
if [ -d "datadir" -a \( "$datadir" = "/home/pc/myapp/295_data_group" -o "$datadir" = "/home/pc/295_data_group" \) ]; then正しくはこれ -d "$datadir"
if [ -d "$datadir" -a \( "$datadir" = "/home/pc/myapp/295_data_group" -o "$datadir" = "/home/pc/295_data_group" \) ]; then[英語]
条件式は、英語で 「conditional expression」です。
本ページで学んだ条件式のグループ化をシェルスクリプトで実行してみたのですが
ファイル名は、 「295_conditional_expression_group.sh」にしました。
ファイル名にページ数の「295」を入れておくと復習しやすいです。技術キーワードを英語で調べると、英語のリーディング能力向上につながり良いなと思いました。
本書では、ファイルを作成して実行してみる場面が多いので、テーマとなっている技術キーワードを英語で調べ、ファイル名や変数名、パス名で積極的に使用すると
英語力向上も図れます。[条件式のグループ化]
条件式のグループ化とはそもそも何か。
簡単なもので例えるとこうです。条件式と、真であった時の処理はこれとします。
if お財布に10000円以上ある。かつ お腹がすいた。
これが真ならば
echo おにぎりを買おう。を実行。なので
お財布に900円しかないとき。 おにぎりは買いません。
お腹がすいていないとき。 おにぎりは買いません。ここで条件式のグループ化とは
if お財布に1000円以上ある。 かつ ( お腹がすいた。または 冷蔵庫に何もない。)
echo おにぎりを買おう。を実行。これです。
グループ化するのに丸括弧を使います。
お財布に800円しかないとき。おにぎりは買いません。
お財布に1100円あり、お腹がすいている時 おにぎりを買います。
お財布に1100円あり、冷蔵庫に何もない時 おにぎりを買います。
お財布に1100円あり、冷蔵庫に何かある時 おにぎりは買いません。[コード]
私が作ったシェルスクリプトはこれです。内容は以下です。
ディレクトリを変数に紐つけます。
ディレクトリがあり、かつそのディレクトリが指定した2つのパスのどちらかと一致すれば
ディレクトリがあるよという文字列を出し、なければないよと出します。295_conditional_expression_group.sh#!/bin/bash datadir=/home/pc/myapp/295_data_group if [ -d "$datadir" -a \( "$datadir" = "/home/pc/myapp/295_data_group" -o "$datadir" = "/home/pc/295_data_group" \) ]; then echo "$datadir directory exist" else echo "$datadir directory does not exist" fi