rokkonet

PC・Androidソフトウェア・アプリの開発・使い方に関するメモ

Arch系のManjaro Linuxのインストール

2022 Sep. 23.
2021 Nov. 23.
2021 Jun. 21.
2021 May 05.
2021 Apr. 29.

Ubuntuをバージョンアップして環境整備するのが大変なので、ローリングリリースなArch Linux派生で、安定したパッケージを提供していて使いやすいと言われるManjaro Linuxをインストールした。

ダウンロード・インストール

  インストールメディアの作成 linuxで利用できる起動可能USBメモリー作成ソフト UNetbootin - rokkonet

ハードディスクパーティションの事前準備

UEFI / GPT HDDでは、/bootマウント用に300MB以上のEFI SYSTEM PARTITIONを作成する。
BIOS / GPT HDDでは、HDD先頭から2TBまでの場所に1MBから8MB程度のboot_grubフラグなBIOS Bootパーティション(EF02)を作成する。

参考
UEFI GPT HDDへのGRUBインストール - rokkonet
BIOS GPT HDDへのGRUBインストール - rokkonet

インストール中のディスク領域設定ではスワップ領域を確保しておく

スワップはインストール時に設定される)

ユーザーIDを固定したいので、インストール時に設定するユーザーは後で削除することを前提に適当なものとする


マウスフォーカス

設定 -> ウィンドウマネージャー ->
フォーカス -> クリックで前面に出す ->
「アプリケーションウィンドウ内でクリックした場合前面に出す」のチェックを外す

ビルド関連バッケージのインストール

# pacman -S --needed base-devel
# pacman -S --needed make m4 gcc patch ed pkg-config file git


システムアップデート

メニュー -> システム -> ソフトウエアの追加と削除 -> アップデート -> 適用

システム再起動

(したければ)カーネルをLTS版に変更

メニュー -> 設定 -> Manjaro Settings Manager -> カーネル
LTS版を選択する。

システム再起動
GRUB画面で利用するカーネルを選択する

linux kernel headersをインストール

出典 Manjaro Linux kernel headers installation - Linux Tutorials - Learn Linux Configuration

(kernelのバージョンを確認する)
$ uname -r
5.4.114-1-MANJARO

(上記から linux54-headers をインストールする)
# pacman -S linux-headers
:: There are 11 providers available for linux-headers:
:: Repository core
   1) linux414-headers  2) linux419-headers  3) linux44-headers
   4) linux49-headers  5) linux510-headers  6) linux511-headers
   7) linux512-headers  8) linux54-headers  9) linux59-headers
:: Repository community
   10) linux54-rt-headers  11) linux59-rt-headers

Enter a number (default=1): 8
resolving dependencies...
looking for conflicting packages...

Packages (1) linux54-headers-5.4.114-1

Total Download Size:    9.45 MiB
Total Installed Size:  46.97 MiB

:: Proceed with installation? [Y/n] 
:: Retrieving packages...
 linux54-headers-...     9.4 MiB  1014 KiB/s 00:10 [######################] 100%
(1/1) checking keys in keyring                     [######################] 100%
(1/1) checking package integrity                   [######################] 100%
(1/1) loading package files                        [######################] 100%
(1/1) checking for file conflicts                  [######################] 100%
(1/1) checking available disk space                [######################] 100%
:: Processing package changes...
(1/1) installing linux54-headers                   [######################] 100%
:: Running post-transaction hooks...
(1/2) Arming ConditionNeedsUpdate...
(2/2) Updating module dependencies...

(インストールされたlinux kernel headerの確認)
$ pacman -Q | grep headers | grep -v linux-api-headers
linux54-headers 5.4.114-1

(linux-api-headersはlinux kernel headerに関係無い)

(PCを再起動)
# reboot


「ソフトウエアの追加と削除」アプリでyayをインストール


エディタのインストールとデフォルトエディタの設定

 Manjaro Linux / Arch Linuxにデフォルト・エディタを設定する - rokkonet

  ~/.vimrcの設定 vim設定ファイル ~/.vimrc の内容 - rokkonet

通常のグラフィカルログインでは~/.profileが読み込まれ、ssh経由等のテキストログインでは~/.bash_profileが読み込まれる。~/.bashrcは必ず読み込まれる。これを踏まえて環境変数を設定する。

https://rasumus.hatenablog.com/entry/2021/04/29/155403

ユーザー登録

# useradd -d HOMEDIR -m -s /bin/bash -u NNNN -U USER
  HOMEDIR: ユーザーのホームディレクトリ
  NNNN: ユーザーのID
  USER: ユーザー名

# passwd USER


ユーザーを各グループに所属させる

インストール時に登録したユーザーが所属していた次のグループに所属させた。
wheel lp sys network power video
wheelは管理者権限となるので登録するユーザー毎に判断する。
videoはインストール時に登録したユーザーは所属していないが、録画を踏まえ、含めた。

PCを再起動して登録反映する。
インストール時に登録したユーザーを削除する。

# userdel -r TMPUSER
  TMPUSER: インストール時に登録したユーザー名


ユーザーのumask

( ${HOME}/.bashrc )

umask 0022

"umask 0077"が安全だが、ユーザーでビルドしたプログラムをシステムにインストールすると、システム上のディレクトリ・ファイルをrootユーザー以外が読み込めない恐れがあるので、"umask 0022"がよい。

スワップ領域の導入(通常、システムインストール時に自動設定される)

スワップの確認

$ swapon
$  free -h -t

スワップパーティションのフォーマット

# mkswap /dev/HDD-PARTITION

システムのスワップ利用設定

# swapon /dev/HDD-PARTITION

/etc/fstabにスワップパーティション設定を記述する

UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx  none  swap  defaults  0 0

システムを再起動してスワップを適用する


システムのログ

journalctlコマンドを使って各種ログを表示する。
 起動時からのメッセージ表示 "journalctl -b"

出典
arch linux - Where are my sshd logs? - Unix & Linux Stack Exchange
systemd/ジャーナル - ArchWiki

固定IPアドレス設定

XfceのNetworkManagerアプレットで可能

画面解像度変更

Arch系Manjaro Linux + AMD Radeon R7 Graphics での画面解像度 - rokkonet
各ユーザーのX window起動時に画面変更されるように設定する。

画面解像度を 1440x900 に変更

ビデオカード [AMD/ATI] Kaveri [Radeon R7 Graphics]
モニター アイ・オーデータ LCD-AD221XB 22型WSXGA+(1680×1050)のワイド液晶パネル

$ xrandr
Screen 0: minimum 320 x 200, current 1152 x 864, maximum 16384 x 16384
DVI-0 disconnected (normal left inverted right x axis y axis)
VGA-0 connected 1152x864+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x768      60.00  
   800x600       60.32    56.25  
   848x480       60.00  
   640x480       59.94  
   1152x864_60.00  59.96* 
HDMI-0 disconnected (normal left inverted right x axis y axis)

$ cvt 1440 900
# 1440x900 59.89 Hz (CVT 1.30MA) hsync: 55.93 kHz; pclk: 106.50 MHz
Modeline "1440x900_60.00"  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync

$ xrandr --newmode "1440x900_60.00"  106.50  1440 1528 1672 1904  900 903 909 934 -hsync +vsync

$ xrandr --addmode VGA-0 1440x900_60.00

$ xrandr --output VGA-0 --mode 1440x900_60.00


上記の手法での設定はシステムからログアウトすると解除されるので、ログイン時自動設定を設定する。

日本語入力インストール

日本語入力インストール Manjaro Linux(Arch Linux) Xfceデスクトップ - rokkonet
各ユーザーに設定ファイルを置く。

/etc/hostsファイルを編集

LAN上のデバイス名とIPアドレスを対応付ける。

TCP Wrappersのインストール・設定

TCP Wrappersパッケージをインストールする

/etc/hosts.denyを編集する
ALL: ALL

/etc/hosts.allowを編集する

sshd: ALL

wake-on-lan設定

Wake On Lan 設定 - rokkonet

sambaインストール・設定

sambaインストール - rokkonet

bitbucket利用対応

$ mkdir ~/bitbucket    ## ディレクトリ名及びホームディレクトリ内の場所は任意
  • ssh認証設定

BitbucketへのSSH認証導入 - rokkonet

TV受信サーバーmirakurunのインストール

https://rasumus.hatenablog.com/entry/2020/12/27/142809

anti-virusソフトインストール

https://rasumus.hatenablog.com/entry/2020/09/20/204944

ブラザー プリンター&スキャナー複合機DCP-J562Nインストール

https://rasumus.hatenablog.com/entry/2021/05/03/004656