2016年8月11日木曜日

★ UEFI なパソコンへの arch の インストール Vater

太平洋戦争と アジアの国例えばインドネシアの独立
http://warof.jp/daitoua-k.html のとおりですが
(太平洋戦争で) 日本が東アジアから欧米諸国を追い払う以前は、
それらの地域には政府が認められておらず、当然独自の軍備も持っていませんでしたが、日本はそれらの国々を占領すると同時に
現地の政府と軍隊、ならびに様々なインフラ整備を行いました。
そして、それらの(欧米諸国の)国々は、日本が全面降伏した後
再びそれら(東アジア)の国々を植民地化するために
のこのこ戻って来た欧米諸国と独立戦争を行うことができ、
また、一度日本が欧米の国々を追い払う手本を見せていたために、以前のように簡単に屈服することはなく、現在のような独立を勝ち取ることができたのです。
https://ja.wikipedia.org/wiki/%E3%82%A4%E3%83%B3%E3%83%89%E3%83%8D%E3%82%B7%E3%82%A2%E7%8B%AC%E7%AB%8B%E6%88%A6%E4%BA%89
より
インドネシア独立戦争
日本が第二次世界大戦で連合国へ降伏した後の旧オランダ領東インドで、独立を宣言したインドネシア共和国と、これを認めず再植民地化に乗り出したオランダとの間で発生した戦争(独立戦争)。
http://magazine.campus-web.jp/archives/315550
(ベトナムの再植民地化にのりだした)フランスは次第に追いつめられ最終的に北部のディエンビエンフーの戦いに破れて終結し、1954年7月21日、ジュネーヴ協定の調印で中北部のフランス統治が終結しました。
--------------
ここは UEFI arch だよ。
話横道で UEFI + BTRFS にするには以下です。
http://hatahata50.blogspot.jp/2016/12/uefi-btrfs-usb.html

話を元に戻します、普段使いのPCにするには
    日本語入力 :ちょっとだけ難しい fcitx-mozc
    印刷    :手強い cups
    ワープロ  :簡単 librewriter
が必要ですが、このページで賄えます

menuentry 'Windows 7 (loader) (on /dev/sdb2)'  {insmod part_msdos
insmod ntfs
set root='hd1,msdos2'
chainloader +1
}
nat.bat
ifconfig enp2s0 192.168.11.1  echo 1 > /proc/sys/net/ipv4/ip_forward
     internal_net='192.168.11.0/24'
     my_internal_ip='192.168.11.1'
    /sbin/iptables -F
    /sbin/iptables -t nat -F
    /sbin/iptables -X
    /sbin/iptables -P INPUT DROP
    /sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    /sbin/iptables -P OUTPUT ACCEPT
    /sbin/iptables -P FORWARD DROP
    /sbin/iptables -A FORWARD -i enp2s0 -o wlp3s0  -s $internal_net -j ACCEPT
    /sbin/iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
    /sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -t nat -A POSTROUTING -o wlp3s0 -s $internal_net -j MASQUERADE
    /sbin/iptables -A OUTPUT -o wlp3s0 -d 10.0.0.0/8 -j DROP
    /sbin/iptables -A OUTPUT -o wlp3s0 -d 172.16.0.0/12 -j DROP
    /sbin/iptables -A OUTPUT -o wlp3s0 -d 192.168.0.0/16 -j DROP
    /sbin/iptables -A OUTPUT -o wlp3s0 -d 127.0.0.0/8 -j DROP
    /sbin/iptables -N LOGGING
    /sbin/iptables -A LOGGING -j LOG --log-level warning --log-prefix "DROP:" -m limit
    /sbin/iptables -A LOGGING -j DROP
    /sbin/iptables -A INPUT -j LOGGING
    /sbin/iptables -A FORWARD -j LOGGING

route.bat 
ifconfig eth1 192.168.11.100
route add default gw  192.168.11.1
rm  /etc/resolv.conf  
echo 'nameserver 8.8.8.8 ' >> /etc/resolv.conf 
ping -c 3 www.google.com


 
lenovo を UEFIでも BIOSでもブートできるようにするために
 な形でBIOS設定しておけば 
archの入ったusb harddisk が

UEFIではいってても BIOSではいってても
両方ともこのPCでブートできます。

 

 

さてhttp://www.dosv.jp/feature/1103/17.htm より

Unified Extensible Firmware Interfaceとは、
当初Intelが
BIOS(Basic Input/Output System)を「EFI」に置き換える目的で考案したファームウェアの仕様だとさ。
そして

BIOSでは2.2TB以上のディスクパーティションからのOS起動に対応していない。んでUEFIなのか。





ここから インストールについて書いてます。
有線LANから dhcpで導入後、wifi は後から設定が常道です。
従って上のrepeater があれば便利です。
windowsから電波マークをクリックして接続してから
リピーターのアドレス192.168.10.1をプラウザにいれてやると
認証画面がでてきて repeater 機能を選んで
ちょちょいのちょい でOK!

 
 
ISOのダウンロードは
lftp http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/iso
                

CDに焼いてブートです。

黄色の背景の大文字のところだけ
で インストールできます。 (小文字は解説にすぎません)



systemctl  start  sshd 
passwd
ifconfig              アドレス確認
します。

そして 192.168.100.102なら

この後は 他のパソコンから
ssh
-l root 192.168.100.102

で入ってインストールします。
つまりこのページの 
コピー&ペースト
だから楽です。





まず インストールするところを決めます。

root@archiso ~ # gdisk /dev/sda (私はUSB HDDにしました)

にて

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         1050623   512.0 MiB    EF00  EFI System
   2         1050624         5244927   2.0 GiB      8200  Linux swap
   3         5244928       156250046   72.0 GiB    8300  Linux filesystem

なふうにします。



それから
 mkfs.fat -F32 /dev/sda1 
  mkswap /dev/sda2
  swapon /dev/sda2
 mkfs.ext4 /dev/sda3

以下の通りマウントします。
mount   /dev/sda3 /mnt
mkdir   /mnt/boot
mount   /dev/sda1 /mnt/boot




# nano /etc/pacman.d/mirrorlist
Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
をミラーリストの一番上に書き加えます・



# pacstrap /mnt base  base-devel
 
これが終わってから
  • 以下のコマンドを実行して fstab を生成してください
 
# genfstab  -p /mnt >> /mnt/etc/fstab
     
  • 新しくインストールしたシステムに chroot:
# arch-chroot /mnt      
 
  • あなたのホストネームを nano /etc/hostname に書き込んでください。  例えば arch-pc
 
rm  /etc/localtime

ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

  • /etc/locale.gen 内の使用するロケールをアンコメントし、
  • # 日本語の UTF-8 を有効にする 
  • LANG="ja_JP.UTF-8" 
  • # デフォルトのソート順を保つ (例えば '.' で始まるファイルは # ディレクトリのリストで最初に並ぶ) 
  • LC_COLLATE="C" 
  • # 短い月日表示を YYYY-MM-DD に設定 ("date +%c" でテスト)               LC_TIME="en_DK.UTF-8"
  •  
  • # nano /etc/locale.gen  の一番上に次を書き加える
    en_US.UTF-8   UTF-8
    ja_JP.UTF-8    UTF-8
そして locale-gen を実行してロケールを生成。


       /etc/locale.conf を
      LANG=en_US.UTF-8
      LC_ADDRESS=en_US.UTF-8
      LC_IDENTIFICATION=en_US.UTF-8
      LC_MEASUREMENT=en_US.UTF-8
      LC_MONETARY=en_US.UTF-8
      LC_NAME=en_US.UTF-8
      LC_NUMERIC=en_US.UTF-8
      LC_PAPER=en_US.UTF-8
      LC_TELEPHONE=en_US.UTF-8
      LC_TIME=en_US.UTF-8







再起動後もキーマップ設定を持続させるために、vconsole.conf を作る
この柿色部分はしなくていいようです。
# nano /etc/vconsole.conf
KEYMAP=jp106
FONT=Lat2-Terminus16

  • passwd で root パスワードを設定します。 
  •  

以下コマンドを実行してユーザー登録しましょう。

# useradd -m -G wheel -s /bin/bash maiu
# passwd  maiu



  • ifconfig wifi-menu のために                           
    pacman -S ne
    t-tools
    dnsutils  openssh dialog wpa_supplicant
  •  
  • systemctl enable dhcpcd.service
  • systemctl enable sshd.service


  • systemctl enable netctl-auto@wlpXXXX
     

 

以下は http://archlinux-blogger.blogspot.jp/2016/03/arch-linux-uefi-gpt-xfs.html で勉強しました。

pacman -S dosfstools efibootmgr  grub


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-mkconfig > kg
cp kg
/boot/grub/grub.cfg

chroot 環境から抜けるために

exit
次に /mnt の下にマウントしたパーティションをアンマウントします:
# umount -R /mnt


これでやっと halt -p して終了します,archははいりました。 




2)arch を再起動します 
それから

ifconfig
で アドレスをみて


別のPCから またもやsshではいります
しかし、もはや rootでははいれないので さっき作ったユーザー archで入ります
ssh -l arch 192.168.100.103
su

そして

pacman -S btrfs-progs
pacman -S openntpd
systemctl enable  openntpd
systemctl start openntpd
でまず 時間合わせをします。




3)  pacman -yS ...... でアプリをいれる。

アプリを探すには
pacman  -Ss

除けるには
pacman  -Rsc


updte
packman  -Syy
packman  -Syu


 

4) その他のアプリ
genisoimage     <- pacman -S cdrkit
growisofs       <-   pacman -S dvd+rw-tools







5) X
http://hanjuku-am2.blogspot.jp/2013/05/vaio-type-parch-linux-2.html
をみて

pacman -S xorg xorg-xinit  xfce4
(vostro 1400 は mesaではなく  nvidia でないとだめだった)


nano /home/arch/.xinitrc
startxfce4



pacman -S sddm
sddm --example-config > /etc/sddm.conf
systemctl enable sddm


日本語キーボードのために
# nano  /etc/X11/xorg.conf.d/01-keyboard-layout.conf
Section "InputClass"
Identifier "keyboard-layout"
      #       Driver "evdev" <ーこれは archbangでみたかな?
MatchIsKeyboard "yes"
Option "XkbModel" "jp106"
Option "XkbLayout" "jp"
EndSection





日本語fontは

pacman -S otf-ipafont

ibus-anthy
pacman -S  ibus-anthy  
.bashrcを
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus
ibus-daemon &   <ー日本語入力をなくしたらここだけ動かせばいい
    


 
pae対応してない非力なPCでは fcitxはおすすめできません
pacman -S fcitx-im fcitx-configtool fcitx-mozc

nano /home/arch/.xprofile
export XMODIFIERS=@im=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx



 fcitx-config-gtk3 で



 italianのすぐ下に japaneseがあります


ここなあたりで fcitx-autostart をしたような気がします








ここで一旦 PCをhalt -p します。

再起動したらそのまま fcitx-mozc 動いてます

なお grubは
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-7e234184-c64a-4860-933c-89e11e177e1e' {
    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_gpt
    insmod fat
    set root='hd1,gpt1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd1,gpt1 --hint-efi=hd1,gpt1 --hint-baremetal=ahci1,gpt1  10F4-D887
    else
      search --no-floppy --fs-uuid --set=root 10F4-D887
    fi
    echo    'Loading Linux linux ...'
    linux    /vmlinuz-linux root=UUID=7e234184-c64a-4860-933c-89e11e177e1e rw  quiet
    echo    'Loading initial ramdisk ...'
    initrd  /intel-ucode.img /initramfs-linux.img
}

なんでした



以上で日本語設定まで終わってます。
あとは付録みたいなもんです。





11) 音です


http://opamp.hatenablog.jp/entry/20110829/1314619739 より

# pacman -S alsa-utils
$  alsamixer

音は 
vlc でもでますが、 ecasoundが手軽です。








13) AUR を使う。ソースからインストール
openbsdのports systemの公開版かな

https://wiki.archlinux.org/index.php/Arch_User_Repository_%28%E6%97%A5%E6%9C%AC%E8%AA%9E%29
のとおりです。

例として flashpluginをとります。
まず 一般ユーザーで
$ mkdir  ~/builds
そしてhttps://aur.archlinux.org/ へいって flashplugin でさがしてこれをダウンロードします。
すると ~/Downloads/に flashplugin-10.1.tar.gzがおちてきます。
そこで 
$ cd ~/builds
$ mv ../Downloads/flashplugin-10.1.tar.gz   ./
$ tar -xvf flashplugin-10.1.tar.gz
$ cd flashplugin-10.1
$ makepkg -s
すると
==> ソースを取得...
  -> ダウンロード fp_10.1.102.64_and_9.0.289.0_archive.zip...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
 74  126M   74 93.6M    0     0   177k      0  0:12:08  0:08:59  0:03:09  259k

になって
 flashplugin-10.1-10.1.102.64-3-i686.pkg.tar.xz がつくられてます。
そこで
su して
# pacman -U   flashplugin-10.1-10.1.102.64-3-i686.pkg.tar.xz  
で あっけなく あっさりと するするっと入ります。

たしかに
$ pacman -Qm で flashplugin-10.1

なり aurを使ったことがわかります。







14)cups は ppdがむつかしい


そのため

the step is the following .
--------------------------------
1) pacman -S cups ghostscript
then can test print 



多分 以下の細字は不要
2)pacman -S system-config-printer
# system-config-printer

i do some things ( but forget them)
then
i can print directly from firefox's File-> Print 







systemctl enable org.cups.cupsd.service わすれてはいけません!



印刷できるようになったので archがメインマシンになりました。




なお epson EP-706A でも印刷OK!

 

さらに cupsでサポートされてない ブラザーの DCP-J925N です。
arch 64bitのため

Enabling
To use the multilib repository, uncomment the [multilib] section in /etc/pacman.conf (Please be sure to uncomment both lines):
[multilib]
Include = /etc/pacman.d/mirrorlist
Then update the package list and upgrade with pacman -Syu.
Note: Do not just run pacman -Sy, see System maintenance#Partial upgrades are unsupported.


そして https://github.com/nozaki87/brother-dcpj925n
の 

PKGBUILD
brother-dcpj925n.install
の2つを buildsフォルダにつれてきて
makepkg
あとは root で pacman -U brother-dcpj925n-3.0.0-1-x86_64.pkg.tar.xz
でした。


17) 待望のwifiです。
http://www.garunimo.com/program/linux/corumn-linux31.xhtml
をみて、

pacman -S iw wpa_supplicant wpa_actiond dialog


ls /sys/class/net/

enp9s0    lo  wlp0s29f7u2

 

wlp0s29f7u2 がwifiだ



だから


systemctl start dhcpcd@wlp0s29f7u2
systemctl enable dhcpcd@wlp0s29f7u2
systemctl enable netctl-auto@wlp0s29f7u2
 wifi-menu wlp2s0






なお 念のため 手動で wifiを立ち上げるには
./comment-out.bat wifi.bat

x=wlp0s29f7u1
echo 'ctrl_interface=DIR=/run/wpa_supplicant' > /etc/wpa_supplicant.conf
wpa_passphrase URoad-662EA0 04271 >> /etc/wpa_supplicant.conf
   ip link set $x  up
   wpa_supplicant -B -D nl80211 -c /etc/wpa_supplicant.conf -i $x
 dhcpcd -A $x
sleep 10
echo '----------------------------'
ping -c 3 www.google.com
ifconfig | grep 192




あと wifi を起動時自動接続させるには ウィンドウマネージャが slimとして

/etc/slim.conf を
default_path        /bin:/usr/bin:/usr/local/bin
default_xserver     /usr/bin/X
xserver_arguments -nolisten tcp vt07
halt_cmd            /sbin/shutdown -h now
reboot_cmd          /sbin/shutdown -r now
console_cmd         /usr/bin/xterm -C -fg white -bg black +sb -T "Console login" -e /bin/sh -c "/bin/cat /etc/issue; exec /bin/login"
xauth_path         /usr/bin/xauth
authfile           /var/run/slim.auth
 numlock             on
login_cmd           exec /bin/bash -login ~/.xinitrc %session
sessionstart_cmd    /home/X-user/wifi.bat
sessiondir            /usr/share/xsessions/
screenshot_cmd      import -window root /slim.png
welcome_msg         Welcome to %host
shutdown_msg       The system is halting...
reboot_msg         The system is rebooting...
default_user        X-user
focus_password      yes
auto_login         
yes
current_theme       default
lockfile            /var/lock/slim.lock
logfile             /var/log/slim.log







18)ユーザー権限のを自動実行するには

 https://wiki.archlinuxjp.org/index.php/Xfce#.E3.82.B9.E3.82.BF.E3.83.BC.E3.83.88.E3.82.A2.E3.83.83.E3.83.97.E3.82.A2.E3.83.97.E3.83.AA.E3.82.B1.E3.83.BC.E3.82.B7.E3.83.A7.E3.83.B3

をみて

スタートアップアプリケーション

Xfce の起動時にカスタムアプリケーションを実行するには、Applications Menu -> Settings -> Settings Manager から Session and Startup オプションを選択して Application Autostart タブをクリックしてください。











19)dhcpdサーバーをつくろう
pacman -S dnsmasq

./comment-out.bat /etc/dnsmasq.conf 
interface=enp2s0
bind-interfaces
dhcp-range=192.168.8.51,192.168.8.55,12h





以下のスクリプトは
まず固定アドレスをふり、
次に
dnsmasqをうごかし
最後に
natをしてます。

./comment-out.bat dhcpd-server+NAT.bat 
 ip addr show
 ip link set enp2s0 down
 ip link set enp2s0 up
 ip addr add 192.168.8.1/24 dev enp2s0
 ip addr show
systemctl restart dnsmasq
mac='wlp3s0'
echo '--------- wlan? ------------'
echo $mac
echo '----------------------------'
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t filter -F FORWARD
iptables -t nat -F POSTROUTING
iptables -t nat -F PREROUTING
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t filter -P FORWARD ACCEPT
iptables -t nat -A POSTROUTING -o $mac -j MASQUERADE
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp
iptables-save
iptables -L
echo '---------------'
ifconfig -a | grep 192



後記 
oprnbsd------>arch-------->internet
ほんとはbridgeでいきたかったのですが archではむつかしいので
natに にげました


20)最後に変わったインストールを書きます
これは Arch20.qcow2 というqemuイメージを 現実のHDDにいれます。


詳しくは
 http://qemuandopenbsd.blogspot.jp/2015/11/bohdi-arch20qcow2.html

 
  楽しかったあの頃 (小学校5年生の作文)
体の中の血が 「ジン ジーン」と足の裏を通り 頭の方へ昇っていく。 (ウソ) 私は全然知らなかった。 今は午前7時半ごろ 父が引きつった顔で
「おじいちゃんが 危ない」
 「あぶないってなにが」
「命が」
    「えっ」
それっきり父は A病院へ行ってしまった。
私は何も知らない。
母から聞いた話だが 「おじいちゃん、昨夜の夜 お酒を飲んでて気持ちが悪くなって倒れたんだって。 それで従姉妹のMちゃんたちがA病院へつれていったの」
母も化粧を速くしているつもりだが、焦るほどいつもと違って遅かった。
「プルル」電話がかかってきた。私は「は、はい」とでた。電話の相手は 父で「おじいちゃん、、、死んだ。 お母さんに代わって」
父は今にも泣き出しそうな声だった。
祖父に公園に連れて行ってもらったことを思い出した。 
そうして(楽しかったなー)と思っていると涙が一筋流れ出した.
本当はMちゃんとお町に行く予定だったがもちろん中止だ。
電話で「ごめん 、A町のじいちゃんが死んだきー」
私の声は泣いていた。
祖父は孫の中で私を一番可愛がってくれ、どこへでも連れて行ってくれた。
母方の祖母の家に着くとMちゃんが鼻をすすりあげているのが聞こえた。
こたつの部屋で私は一人で泣いていた。
心の中では「ダメ泣いたらいいかん」と思っていても涙が次から次へと流れていく 。
M ちゃんと会っても口もきかず、まるで他人だった。
中略

人の一生には出会いがあって、別れがあるんだということがここで初めて実感した。
おじいちゃんという人はこの世でとっても大切な人だった、、、
 

金言
言わぬは言うに勝る
自慢は知恵の行き止まり
3人寄れば文殊の知恵
急ぎの文は静かに書け
我が身を立てんとせばまず人を立てよ 
千兵は得安く一将は求め難し
知る者は言わず言う者は知らず
怒りは敵と思え
人をもって鏡となす
いいたいことは明日言え
腹は立て損喧嘩は仕損
礼も過ぎれば無礼になる
http://hole.tuziwo.info/install-arch-linux-on-uefi-gpt-computer-with-btrfs-support.html
 

Configure a wireless network connection

We will configure a default profile for a wireless connection with SSID mySSID and a WPA security. Then we will make this connection automatic with wpa_actiond. Begin to install wpa_actiond with the base package netctl. The dialog package allow us the use of wifi-menu to generate netctl profiles.
$ pacman -S netctl iw dialog wpa_actiond
Then create a netctl profile from an example file. You can either automatically generate a profile file with wifi-menu or use the manual configuration below.
$ cp /etc/netctl/examples/wireless-wpa-config /etc/netctl/profile
You should modify /etc/netctl/profile to make it look like the following.
Description='A wpa_supplicant configuration file based wireless connection'
Interface=wlp3s0
Connection=wireless
Security=wpa-config
WPAConfigFile='/etc/wpa_supplicant/wpa_supplicant.conf'
IP=dhcp
Do not forget to change the path to the wpa_supplicant.conf file which should be /etc/wpa_supplicant/wpa_supplicant.conf.
Now, we can configure the WPA configuration of our mySSID wifi network. To configure this network, we use wpa_passphrase. We first backup the default configuration file.
$ cp /etc/wpa_supplicant/wpa_supplicant.conf /etc/wpa_supplicant/wpa_supplicant.conf.example
$ wpa_passphrase "mySSID" "mypassword" > /etc/wpa_supplicant/wpa_supplicant.conf
Do not forget the double quotes, especially if the SSID contains spaces. You may edit the file and remove the password which appear in clear.
You can now enable this service.
$ systemctl enable netctl-auto@wlp3s0.service