ArchLinux+Cinnamon+GDM インストールと設定(NotePC)
ノートPCでWindowsを消し去ってArchLinuxをインストールする手順の記事
目次
- USBブートメディアの作成
- Arch LinuxをPCへインストール
- Arch Linux本体のインストール
- Arch LinuxのGUIインストールと各設定
- rootでログインし起動
- ユーザーの追加設定
- ユーザー登録とsudo等のパスワード入力の省略設定
- Yaourtの導入
- Xの導入
- ドライバのインストール
- cinnamonのインストール
- ディスプレイマネージャのインストールと自動起動の設定
- 開発ツールのインストール
- システム全体の表示を日本語に変更
- gdmキーボードレイアウトの設定
- GDM の言語を変更
- 黒い画面を終了し再起動
- cinnamonで表示するためのgdm操作
- GoogleChromeのインストール
- Noto Sans CJK JPのインストール
- Rounded-L Mgen+のインストール
- Ricty Diminishedのインストール
- SublimeText3のインストール
- fcitx-mozcのインストール
- .bashrcの設定
- vimrcの設定
- アプリケーション等のインストール
- 定期作業
- 補足
USBブートメディアの作成
Arch LinuxのインストールメディアをUSBで作成する手順
インストールメディア(.iso)のDownload
https://www.archlinux.org/download
上記URLページをスクロールし日本国旗のある場所で好きなダウンロード先をクリック
「.iso」拡張子のファイル名をクリックしインストール完了
USBブートメディアの作成
※ USBは「FAT32」形式でフォーマット必須
Arch LinuxをPCへインストール
作成したUSBブートメディアを使ってArch LinuxをPCにインストールする手順
Arch Linux本体のインストール
Arch LinuxのUSB起動
PCに先ほど作成したUSBブートメディアを挿しPCを起動
キーボードレイアウトの設定
# loadkeys jp106
gdiskでパーティションを作成
Arch Linuxではメモリ2GB以上積んでる場合、swap領域を設定するとパフォーマンスが低下するという報告が上がっているようでswapしないのが流行ってる模様。swap領域が有っても無くても(私の使い方では)そんなに変化が確認できなかったのでswap領域を使う事にする。
sda | 形式 | 割当 | memory |
---|---|---|---|
/dev/sda1 | vfat | EFI system boot | 513MB |
/dev/sda2 | swap | swap | 8.0GB |
/dev/sda3 | xfs | / | 残り全部 |
- gdisk(GPT)を立ち上げ下記コマンドを実行
//使用していたパーテーションの削除コマンド # sgdisk --zap-all /dev/sda //新しいパーテーションの作成 # gdisk /dev/sda Command (? for help): o Proceed? (Y/N): y //sda1の作成 Command (? for help): n Partition number (1-128, default 1):[Enter] First sector (34-976773134, default = 2048) or {+-}size{KMGTP}:[Enter] Last sector (2048-976773134, default = 976773134) or {+-}size{KMGTP}: +513M Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300): EF00 Changed type of partition to 'EFI System' //sda2の作成 Command (? for help): n Partition number (2-128, default 2):[Enter] First sector (34-976773134, default = 1052672) or {+-}size{KMGTP}:[Enter] Last sector (1052672-976773134, default = 976773134) or {+-}size{KMGTP}:+8200M Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300):8200 Changed type of partition to 'Linux swap' //sda3の作成 Command (? for help): n Partition number (3-128, default 3):[Enter] First sector (34-976773134, default = 16412672) or {+-}size{KMGTP}:[Enter] Last sector (16412672-976773134, default = 976773134) or {+-}size{KMGTP}:[Enter] Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300):[Enter] Changed type of partition to 'Linux filesystem' //パーテーションの確認 Command (? for help): p //書き込み Command (? for help): w ・・・(中略)・・・ Do you want to proceed? (Y/N): Y
パーテーションのフォーマット
# mkfs.vfat -F32 /dev/sda1 # mkswap /dev/sda2 # swapon /dev/sda2 //name=後の○○○好きにHDD名を入力 //○○○gのgはGBの意味。TBならtを付加(sda3の容量) # mkfs.xfs -m crc=1 -L name=○○○g /dev/sda3 //※エラーなら-fを追記 # mkfs.xfs -f -m crc=1 -L name=○○○g /dev/sda3
マウント
# mount /dev/sda3 /mnt # mkdir /mnt/boot # mount /dev/sda1 /mnt/boot
mirrorlistの調整
# nano -w /etc/pacman.d/mirrorlist
- Japanミラー(Taiwanミラーも)を先頭に移動し保存
Linux本体のインストール
# pacstrap /mnt base base-devel
fstabを生成
# genfstab -U -p /mnt >> /mnt/etc/fstab
新規インストールしたシステムにchrootして作業
# arch-chroot /mnt /bin/bash //localeと言語設定 ...# nano -w /etc/locale.gen //切り替わったら以下行の#を取って保存 #en_US.UTF-8 UTF-8 #ja_JP.UTF-8 UTF-8 ...# locale-gen //LANG設定 ...# echo LANG=en_US.UTF-8 > /etc/locale.conf ...# export LANG=en_US.UTF-8 //キーボードの設定がJISキーボードになるように編集 ...# nano -w /etc/vconsole.conf //下記コードを入力保存 KEYMAP=jp106 //タイムゾーンとハードウェアクロック設定 ...# ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime ...# hwclock --systohc --utc //ホスト名の設定 ...# echo ホスト名 > /etc/hostname //好きなホスト名を設定します。 //rootのパスワード設定 ...# passwd //2度パスワードを入力 //DHCP接続の自動接続設定 ...# systemctl enable dhcpcd.service //Intelのマイクロコードのアップデートを有効にするintel-ucodeをインストール ...# pacman -S intel-ucode //ブートローダ(GRUB)と仲間たちをインストール ...# pacman -S grub efibootmgr dosfstools ...# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=arch_grub --recheck //ブータブルスタブの作成 ...# mkdir /boot/EFI/boot ...# cp /boot/EFI/arch_grub/grubx64.efi /boot/EFI/boot/bootx64.efi //grub.cfgの作成 ...# grub-mkconfig -o /boot/grub/grub.cfg //アンマウント ...# exit # umount -R /mnt
シャットダウン
# shutdown -h now
- シャットダウンしたら、USBを抜く
Arch LinuxのGUIインストールと各設定
GUIのインストールや各設定などを済ませていく。
rootでログインし起動
Arch Linux 4.0.1-1-ARCH (tty1) <ホスト名> login: ・・・・・・・・・・・・・・・・・・・・・・・・・・ ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ _
- rootでログイン
<ホスト名> login: root Password: <passwdで設定したパスワードを入力>
ユーザーの追加設定
# useradd -m -g wheel <ユーザー名> # passwd <ユーザー名>
ユーザー登録とsudo等のパスワード入力の省略設定
# visudo //root ALL=(ALL) ALL以降に追加 <ユーザー名> ALL=(ALL) ALL //sudoでpassword入力を不要にする場合は追記 %wheel ALL=(ALL) NOPASSWD: ALL
Yaourtの導入
# nano -w /etc/pacman.conf //Repositoryを末尾に追記 [archlinuxfr] SigLevel = Never Server = http://repo.archlinux.fr/$arch [herecura] Server = https://repo.herecura.be/$repo/$arch
- yaourtの初期化など
# pacman --sync --refresh yaourt # pacman -Syy
Xの導入
# pacman -S xorg-server xorg-server-utils xorg-xinit xorg-xclock xterm //ノートPCなのでmesa-libglを選択 Enter a number (default=1):[Enter]
ドライバのインストール
//グラボを調べる # lspci | grep VGA //必要なドライバのインストール # pacman -S xf86-video-intel
cinnamonのインストール
# pacman -S cinnamon cinnamon-control-center cinnamon-screensaver muffin nemo nemo-fileroller gnome-terminal
ディスプレイマネージャのインストールと自動起動の設定
# pacman -S gdm ・・・・・テストするならこの手順を・・・・・・・・・・・・・・・・・・・・・・ # systemctl start gdm ログイン画面になったら、一般ユーザーとしてユーザー名とパスワードを入力 Cinnamonデスクトップになるかどうか確認 reboot後コンソールにrootでログインし直す # reboot ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ //起動時にgdmが動くように下記コマンドで設定 # systemctl enable gdm
開発ツールのインストール
# pacman -S abs base-devel
システム全体の表示を日本語に変更
# nano -w /etc/locale.conf //書き換え保存 LANG=ja_JP.UTF-8 LC_NUMERIC=ja_JP.UTF-8 LC_TIME=ja_JP.UTF-8 LC_MONETARY=ja_JP.UTF-8 LC_PAPER=ja_JP.UTF-8 LC_MEASUREMENT=ja_JP.UTF-8
gdmキーボードレイアウトの設定
# nano -w /etc/X11/xorg.conf.d/10-evdev.conf //新規入力し保存 Section "InputClass" Identifier "evdev keyboard catchall" MatchIsKeyboard "on" MatchDevicePath "/dev/input/event*" Driver "evdev" Option "XkbLayout" "jp" Option "XkbModel" "pc104" EndSection
GDM の言語を変更
# nano -w /var/lib/AccountsService/users/gdm //以下を入力 [User] Language=ja_JP.UTF-8 XSession= SystemAccount=true
- 再起動後「/var/lib/AccountsService/users/gdm」ファイルを開くと「Language」の行は消えますが有効になっている
黒い画面を終了し再起動
# reboot
cinnamonで表示するためのgdm操作
この操作は一度行えばOK
再起動後gdmでユーザー名が表示されるのでクリック
パスワード入力画面のサインインボタン左に有る歯車アイコンをクリック
「cinnamon」を選択
ログインパスワードを入力し「サインイン」をクリック
以降はWebブラウザとテキスト編集ソフトを先にダウンロードして、コピペで進めたほうが楽♪
GoogleChromeのインストール
$ yaourt -S google-chrome
Noto Sans CJK JPのインストール
システム用フォントとして使用。
https://www.google.com/get/noto/#sans-jpan
上記サイトからダウンロードし解凍
「~/.local/share/fonts」ディレクトリを作成しフォントファイルを全て移動
「メニュー」→「設定」→「フォント」を開き「フォントの選択」で「Noto Sans CJK JP DemiLight」を指定(等幅フォントは除く)
Rounded-L Mgen+のインストール
Webブラウザの表示用フォントとして使用。
- 先に7zipを解凍できるように下記コマンドで準備します。(それ以外はついでw)
$ sudo pacman -S p7zip wget git tree vim gksu llvm clang gcc-fortran
Rounded-L Mgen+のダウンロードと解凍を行う
「~/.local/share/fonts」ディレクトリにフォントファイルを全て移動
Webブラウザの設定を「Rounded-L Mgen+ 2p」に変更
Ricty Diminishedのインストール
プログラミングフォント表示用として使用。
https://github.com/yascentur/RictyDiminished
Ricty Diminishedのダウンロードと解凍を行う
「~/.local/share/fonts」ディレクトリにフォントファイルを全て移動
プログラミングフォントの設定を各所で「Ricty Diminished」に変更
SublimeText3のインストール
$ yaourt -S sublime-text-dev-imfix2
設定は後回しで大丈夫!
fcitx-mozcのインストール
$ sudo pacman -S fcitx-im fcitx-mozc fcitx-configtool
fcitx-mozcの設定
「メニュー」→「設定」→「Fcitx 設定」をクリック
「入力メソッド」に「Mozc」のみ表示させてその他は[- (マイナスボタン)]で非表示
「~/.xprofile」ファイル(無ければ新規作成)に下記コードを追記
export GTK_IM_MODULE=fcitx export QT_IM_MODULE=fcitx export XMODIFIERS="@im=fcitx" fcitx-autostart &
Mozc 拡張辞書のインストール
お試しで拡張辞書をインストール。
.bashrcの設定
とりあえず下記設定にしておく。
# # ~/.bashrc # #------------------------------------------------------------ # If not running interactively, don't do anything #------------------------------------------------------------ [[ $- != *i* ]] && return PS1='[\u@\h \W]\n\$ ' #------------------------------------------------------------ # ls options #------------------------------------------------------------ alias ls='ls -a --color=auto --show-control-chars' alias ll='ls -l' alias l='ls -CF' #------------------------------------------------------------ # vim #------------------------------------------------------------ export VISUAL='vim'
vimrcの設定
Minimalのvim設定をとりあえず行っておく。
$HOME/.vim/
ディレクトリの新規作成$HOME/.vim/files/
ディレクトリの新規作成$HOME/.vim/files/backup/
ディレクトリの新規作成$HOME/.vim/files/swap/
ディレクトリの新規作成$HOME/.vim/files/undo/
ディレクトリの新規作成$HOME/.vim/files/info/
ディレクトリの新規作成$HOME/.vim/files/info/viminfo
ファイルの新規作成$HOME/.vim/vimrc
ファイルの新規作成し下記コードを入力保存
" " A (not so) minimal vimrc. " " You want Vim, not vi. When Vim finds a vimrc, 'nocomptaible' is set anyway. " We set it explicitely to make our position clear! set nocompatible filetype plugin indent on " Load plugins according to detected filetype. syntax on " Enable syntax highlighting. set autoindent " Indent according to previous line. set expandtab " Use spaces instead of tabs. set softtabstop =4 " Tab key indents by 4 spaces. set shiftwidth =4 " >> indents by 4 spaces. set shiftround " >> indents to next multiple of 'shiftwidth'. set backspace =indent,eol,start " Make backspace work as you would expect. set hidden " Switch between buffers without having to save first. set laststatus =2 " Always show statusline. set display =lastline " Show as much as possible of the last line. set showmode " Show current mode in command-line. set showcmd " Show already typed keys when more are expected. set incsearch " Highlight while searching with / or ?. set hlsearch " Keep matches highlighted. set ttyfast " Faster redrawing. set lazyredraw " Only redraw when necessary. set splitbelow " Open new windows below the current window. set splitright " Open new windows right of the current window. set cursorline " Find the current line quickly. set wrapscan " Searches wrap around end-of-file. set report =0 " Always report changed lines. set synmaxcol =200 " Only highlight the first 200 columns. set list " Show non-printable characters. if has('multi_byte') && &encoding ==# 'utf-8' let &listchars = 'tab:▸ ,extends:❯,precedes:❮,nbsp:±' else let &listchars = 'tab:> ,extends:>,precedes:<,nbsp:.' endif " The fish shell is not very compatible to other shells and unexpectedly " breaks things that use 'shell'. if &shell =~# 'fish$' set shell=/bin/bash endif " Put all temporary files under the same directory. " https://github.com/mhinz/vim-galore#handling-backup-swap-undo-and-viminfo-files set backup set backupdir =$HOME/.vim/files/backup/ set backupext =-vimbackup set backupskip = set directory =$HOME/.vim/files/swap// set updatecount =100 set undofile set undodir =$HOME/.vim/files/undo/ set viminfo ='100,n$HOME/.vim/files/info/viminfo
アプリケーション等のインストール
導入もここまで来たので基本的に使用するアプリケーションなどをインストールする。
redshiftのインストール
redshiftは目にやさしいアプリケーション。
$ sudo pacman -S python-gobject python-xdg librsvg $ sudo pacman -S redshift
- 「~/.config/」フォルダ内に下記コードを記述し「redshift.conf」という名前で保存
[redshift] temp-day=3500 temp-night=3500 transition=1 gamma=1.0:1.0:1.0 location-provider=manual adjustment-method=randr [manual] lat=35.4 lon=139.4
- 「メニュー」→「アクセサリ」→「Redshift」をクリックし起動
- 以後システムトレイにできたアイコンでOn/Off切り替えOK
- 「メニュー」→「設定」→「Startup Applications」→「追加する」ボタンをクリック
「コマンド(M)」に「redshift-gtk」と入力(名前・説明は適当に決める)
「Save」し完了
Gufwのインストール
GufwはufwのGUI操作用ファイアウォールアプリケーション。
$ sudo pacman -S gufw
PCを再起動
「メニュー」→「設定」→「ファイアーウォール設定ツール」をクリック
パスワードを入力後「Status:」をオン
Dropbox等の除外アプリ設定
PC起動時に自動立ち上げるため下記コマンドを実行
$ sudo systemctl enable ufw
dorpboxのインストール
$ sudo pacman -S dropbox ufw-extras perl-file-mimeinfo
- 「メニュー」→「インターネット」→「Dropbox」を開き設定し完了
Thunderbirdのインストール
$ sudo pacman -S thunderbird thunderbird-i18n-ja
- 再起動後メニューに表示される
gThumbのインストール
画像ビューワーのアプリケーション。
$ sudo pacman -S gthumb
- 「メニュー」→「グラフィックス」→「gThumb」で起動
Shutterのインストール
スクリーンショットと編集ができるアプリケーション。
$ sudo pacman -S shutter
- 「メニュー」→「アクセサリー」→「Shutter」で起動
Slack desktopのインストール
Slack(チャット)アプリ。
$ yaourt -S scudcloud
- 「メニュー」→「インターネット」→「ScudCloud」で起動
定期作業
インストールしてあるものをアップデートする作業も簡単。
思い立ったら下記コマンドを実行します。
$ sudo pacman -Syy $ sudo pacman -Syu $ yaourt -Syua
上記コマンドで、もしエラー表示が出た場合はインストール作業はせずに後日行うのがコツ。
また、pacmanでインストールされたものがyaourt(packer)でインストール候補として表示される場合がある。この場合も後日pacmanからインストールできるようになるので、yaourtでのアップデートはしない。
補足
ArchLinuxは、インストール作業にとても手間がかかるが、実運用では他より手間がかからない。pacman/yaourt/packerがとても優れているしパッケージングする方々も細かなところまでいき届いてる印象で、何か新たにやりたい時でもササッと完了する。
最近では、「antergos」や「manjaro」や「ArchBang」といったArchLinuxベースのものが出ている。インストールが簡単だからといって上記のような作業を分かった上でなければインストール後に苦労する事になる。とても充実してる「Wiki-ArchLinux」を見ながら一つづつ理解していく方が近道だったり・・・と思っている。
楽しいArchLinuxライフ!