更新 Mirror CentOS altarch i386 / arm /aarch 套件庫來源

因為原先 Mirror 的站台似乎已經不在了,所以改用其台的站台。
# du -hs /var/ftp/Linux/CentOS/altarch/
106G    /var/ftp/Linux/CentOS/altarch/

目前仍持續更新中[@more@]替換成頭城國小的套件庫來源

修改套件庫來源
1. 備份原檔
# cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.$(date +%F)

2. 修改 CentOS-Base.repo
# sed -i ‘s|^baseurl=http://mirror.centos.org/altarch|baseurl=ftp://140.111.74.109/Linux/CentOS/altarch|’ /etc/yum.repos.d/CentOS-Base.repo

3. 清除舊有及更新
# yum clean all;yum update

修改 CentOS i386/arm 套件庫來源

因為有更新的需求,所以自行在學校 mirror 一份。
# du -hs /var/ftp/Linux/CentOS
97G     /var/ftp/Linux/CentOS

修改套件庫來源
1. 備份原檔
# cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.$(date +%F)[@more@]2. 修改 CentOS-Base.repo
# sed -i ‘s|^baseurl=http://mirror.centos.org/altarch|baseurl=ftp://140.111.74.109/Linux/CentOS/altarch|’ /etc/yum.repos.d/CentOS-Base.repo

3. 清除舊有及更新
# yum clean all;yum update

解決 CentOS 7.x arm Cubie Truck autofs 無法自動掛載目錄的問題

在 Cubie Truck CentOS 7.x arm 啟用 autofs 服務後,發現一直無法自動掛載 NAS 分享的 NFS 服務。
# cd /mnt/nasnfs/bk
-bash: cd: /mnt/nasnfs/bk: No such file or directory

檢查 autofs 開機後是否有啟動
# systemctl is-enabled autofs
enabled

檢查 autofs 是否有正確啟動
# systemctl status autofs
● autofs.service – Automounts filesystems on demand
   Loaded: loaded (/usr/lib/systemd/system/autofs.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2016-01-08 18:41:31 CST; 19min ago
 Main PID: 10463 (automount)
   CGroup: /system.slice/autofs.service
           mq10463 /usr/sbin/automount –pid-file /run/autofs.pid

Jan 08 18:41:30 bk systemd[1]: Starting Automounts filesystems on demand…
Jan 08 18:41:31 bk systemd[1]: Started Automounts filesystems on demand.[@more@]想要手動測試一下,所以尋找一下是否有 showmount 指令
# which showmount
/usr/bin/which: no showmount in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)

補安裝 nfs-utils 套件
# yum install nfs-utils

問題就解決了,原來是少安裝了 nfs-utils 套件!

解決 CentOS 7.x arm Cubie Truck 啟用 autofs 服務時出現的錯誤訊息

在 Cubie Truck CentOS 7.x arm 啟用 autofs 服務時出現下面的錯誤訊息:
# grep auto /var/log/messages
automount[9370]: lookup_read_master: lookup(nisplus): couldn’t locate nis+ table auto.master

檢查 autofs 執行狀態
# systemctl status autofs
● autofs.service – Automounts filesystems on demand
   Loaded: loaded (/usr/lib/systemd/system/autofs.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2016-01-08 17:25:19 CST; 6s ago
  Process: 9662 ExecStart=/usr/sbin/automount $OPTIONS –pid-file /run/autofs.pid (code=exited, status=0/SUCCESS)
 Main PID: 9664 (automount)
   CGroup: /system.slice/autofs.service
           mq9664 /usr/sbin/automount –pid-file /run/autofs.pid

Jan 08 17:25:19 bk systemd[1]: Starting Automounts filesystems on demand…
Jan 08 17:25:19 bk automount[9664]: lookup_read_master: lookup(nisplus): couldn’t locate nis+ table auto.master
Jan 08 17:25:19 bk systemd[1]: Started Automounts filesystems on demand.[@more@]解決方式:
參考文章:Linux : automount: lookup_read_master: couldn’t locate nis+ table auto.master | ITechLounge.net

1. 備份原檔
# cp /etc/auto.master /etc/auto.master.$(date +%F)

2. 將 /etc/auto.master 中的 +auto.master 前面的 + 移除
# sed -i ‘s/+auto.master/auto.master/’ /etc/auto.master

3. 重新啟動 autofs 服務
# systemctl restart autofs

在 Cubie Truck 上安裝 CentOS 7.2.1511 arm 版

本文章參考:Raspberry Pi 的基礎 – 安裝 CentOS 7 for ARM ~ IT 技術家
沒有使用原本 Cubie Truck 內建的 Nand 記憶體,改用 T-Flash 記憶卡。
登入帳號及密碼:root / centos

1. 登入之後,先修改密碼
# passwd
Changing password for user root.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.[@more@]

2. 查看內附的說明檔
# cat ~/README
== CentOS 7 userland ==

If you want to automatically resize your / partition, just type the following (as root user):
touch /.rootfs-repartition
systemctl reboot

3. 擴展 root 分割區
# touch /.rootfs-repartition

4. 重新啟動電腦
# systemctl reboot

原本的 T-Flash 記憶卡分割
# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        980M     0  980M   0% /dev
tmpfs          1005M     0 1005M   0% /dev/shm
tmpfs          1005M   17M  989M   2% /run
tmpfs          1005M     0 1005M   0% /sys/fs/cgroup
/dev/mmcblk0p3  2.0G  746M  1.1G  41% /
/dev/mmcblk0p1  283M  134M  134M  51% /boot
tmpfs           201M     0  201M   0% /run/user/0

擴展之後
# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        982M     0  982M   0% /dev
tmpfs          1007M     0 1007M   0% /dev/shm
tmpfs          1007M   17M  991M   2% /run
tmpfs          1007M     0 1007M   0% /sys/fs/cgroup
/dev/mmcblk0p3  6.3G  747M  5.3G  13% /
/dev/mmcblk0p1  283M  134M  134M  51% /boot
tmpfs           202M     0  202M   0% /run/user/0

5. 更新套件
# yum -y update

6. 安裝一些常用但缺少的套件
# yum install vim mlocate which bind-utils ntpdate

7. 設定時區及對時
原本的時區
# date
Thu Jan  1 08:23:09 CST 1970

把時區改成 Asia/Taipei
# /usr/bin/timedatectl set-timezone Asia/Taipei

更改之後
# date
Fri Jan  1 20:10:36 CST 2016

對時
# /usr/sbin/ntpdate -s time.stdtime.gov.tw
# /usr/sbin/hwclock -w

加入工作排程
# echo “0 6 * * * /usr/sbin/ntpdate -s time.stdtime.gov.tw > /dev/null 2>&1;/usr/sbin/hwclock -w > /dev/null 2>&1” >> /var/spool/cron/root

8. 設定語系
# /usr/bin/localectl set-locale LANG=en_US.utf8
檢查設定
# /usr/bin/localectl status
   System Locale: LANG=en_US.utf8
       VC Keymap: n/a
      X11 Layout: n/a

CentOS 7 arm 版本

在使用 Raspberry Pi / Banana Pi / CubieTurck 這些控制板時,覺得比較困擾的是,它支援的 Linux 大部分都是 Arch Linux / Debian / Ubuntu …等等,個人比較習慣的 CentOS 卻一直沒有釋出相對的版本。終於在 2015 年末 、2016 年初時,盼到了 CentOS 支援的版本。
CentOS 7 arm 版本下載路徑:
http://mirror.centos.org/altarch/7.2.1511/isos/armhfp/

看檔案名稱,似乎有支援的是 BananaPi / CubieTruck / Raspberry Pi 2

更詳細的介紹可以參考下列網站:
Raspberry Pi 的基礎 – 安裝 CentOS 7 for ARM ~ IT 技術家
CentOS 7 AMR版正式發布:支持樹莓派2/香蕉派/CubieTruck - 今日頭條

目前手上還有一塊閒置的 Banana Pi,有空的話再來仔細測試看看!

Cubie Truck 測試 – Cubieez 自動登入

為測試方便
先備份原檔
$ sudo cp /etc/lightdm/lightdm.conf /etc/lightdm/lightdm.con.$(date +%F)

設定可以自動登入的使用者
$ sudo sed -i ‘s/#autologin-user=/autologin-user=cubie/’ /etc/lightdm/lightdm.conf

重新開機,測試
$ sudo reboot

Cubie Truck 測試 – 改用 Cubieez

Cubieez 是在 Cubie Truck 中 base on Debian 的系統。
下載位置:
http://dl.cubieboard.org/software/a20-cubietruck/cubieez/cubieez-v2.0/

預設登入的帳號及密碼:cubie / cubieboardroot / cubieboard[@more@]$ /usr/bin/lsb_release  -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 7.7 (wheezy)
Release:        7.7
Codename:       wheezy

登入後介面是英文版本

桌面上有一個 Readme.txt 檔案,記錄一些重要的內容

開啟終端機,執行 cubie-config
切換到 root 身份
su –
# cubie-config

和 RaspBerry Pi 的工具差不多

選擇 4. Internationalisation Options

選擇 I1 Change Locale,設定語言

加選 zh_TW 開頭的三個

設定語言中

選擇 zh_TW.UTF-8 為預設語言

選擇 I2 Change Timezone,設定時區

選擇 Asia

選擇 Taipei

選擇 1. Expand Filesystem,擴展 /root 分割區

只支援 SD Card,不支援 Nand Flash,這個部分還是要改用 nand-part

選擇 Finish 離開

原有的硬碟分割
$ df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          6.9G  1.8G  4.9G  27% /
/dev/root       6.9G  1.8G  4.9G  27% /
devtmpfs        944M     0  944M   0% /dev
tmpfs           189M  564K  189M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           378M  432K  378M   1% /run/shm
tmpfs           944M   12K  944M   1% /tmp
tmpfs           944M  8.0K  944M   1% /var/tmp

目前硬碟的分割狀況
$ sudo nand-part -f a20 /dev/nand
check partition table copy 0: mbr: version 0x00000200, magic softw411
OK
check partition table copy 1: mbr: version 0x00000200, magic softw411
OK
check partition table copy 2: mbr: version 0x00000200, magic softw411
OK
check partition table copy 3: mbr: version 0x00000200, magic softw411
OK
mbr: version 0x00000200, magic softw411
3 partitions
partition  1: class =         DISK, name =   bootloader, partition start =    32768, partition size =   131072 user_type=0
partition  2: class =         DISK, name =       rootfs, partition start =   163840, partition size = 14680064 user_type=0
partition  3: class =         DISK, name =        UDISK, partition start = 14843904, partition size = 16089088 user_type=0

綠色是分割區的名字,粉紅色是分割區的起始位置,橘色是分割區的大小

UDISK 是還未用到的區域,也就是 root 分割區要擴展的區域
擴展之後 /dev/nandb 的大小 14680064+16089088 = 30769152

進行重新分割
$ sudo nand-part -f a20 /dev/nand 32768 ‘boot 131072’ ‘rootfs 30769152’

安裝 gcin
$ sudo apt-get install gcin

安裝 firefox
$ sudo apt-get install iceweasel iceweasel-l10n-zh-tw

重新開機
$ sudo reboot

重新設定 /dev/nandb 分割區大小
$ sudo resize2fs /dev/nandb
resize2fs 1.42.5 (29-Jul-2012)
Filesystem at /dev/nandb is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/nandb is now 3870720 blocks long.

之後的大小
$ df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs           15G  1.8G   13G  13% /
/dev/root        15G  1.8G   13G  13% /
devtmpfs        944M     0  944M   0% /dev
tmpfs           189M  564K  189M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           378M  208K  378M   1% /run/shm
tmpfs           944M   12K  944M   1% /tmp
tmpfs           944M  8.0K  944M   1% /var/tmp

重新登入後,介面已經改成中文的了!

Cubie Truck 測試 – Fedora 20 擴展 root 分割區

切換到一般使用者
# su – linaro

原有的硬碟分割
$ df -h
檔案系統        容量  已用  可用 已用% 掛載點
/dev/root       4.0G  2.9G  970M   75% /
devtmpfs        889M     0  889M    0% /dev
tmpfs           985M   72K  985M    1% /dev/shm
tmpfs           985M  708K  984M    1% /run
tmpfs           985M     0  985M    0% /sys/fs/cgroup[@more@]安裝編譯套件
$ sudo yum groupinstall “Development Tools”

安裝編譯時缺少的套件
$ sudo yum install libusb-devel

下載 sunxi-tools
$ git clone https://github.com/linux-sunxi/sunxi-tools
Cloning into ‘sunxi-tools’…
remote: Counting objects: 1075, done.
remote: Total 1075 (delta 0), reused 0 (delta 0)
Receiving objects: 100% (1075/1075), 368.20 KiB | 24.00 KiB/s, done.
Resolving deltas: 100% (577/577), done.
Checking connectivity… done.

切換目錄
$ cd sunxi-tools

進行編譯
$ make

將 nand-part 複製到 /sbin 目錄
$ sudo cp nand-part /sbin

$ sudo nand-part -f a20 /dev/nand
check partition table copy 0: mbr: version 0x00000200, magic softw411
OK
check partition table copy 1: mbr: version 0x00000200, magic softw411
OK
check partition table copy 2: mbr: version 0x00000200, magic softw411
OK
check partition table copy 3: mbr: version 0x00000200, magic softw411
OK
mbr: version 0x00000200, magic softw411
3 partitions
partition  1: class =         DISK, name =   bootloader, partition start =    32768, partition size =   131072 user_type=0
partition  2: class =         DISK, name =       rootfs, partition start =   163840, partition size =  8388608 user_type=0
partition  3: class =         DISK, name =        UDISK, partition start =  8552448, partition size = 22380544 user_type=0

綠色是分割區的名字,粉紅色是分割區的起始位置,橘色是分割區的大小

UDISK 是還未用到的區域,也就是 root 分割區要擴展的區域
擴展之後 /dev/nandb 的大小 8388608+22380544 = 30769152

進行重新分割
$ sudo nand-part -f a20 /dev/nand 32768 ‘boot 131072’ ‘rootfs 30769152’

完成之後,重新啟動電腦
$ sudo reboot

重新設定 /dev/nandb 分割區大小
$ sudo resize2fs /dev/nandb
resize2fs 1.42.8 (20-Jun-2013)
Filesystem at /dev/nandb is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 1
The filesystem on /dev/nandb is now 3870720 blocks long.

之後的大小
$ df -h
檔案系統        容量  已用  可用 已用% 掛載點
/dev/root        15G  3.1G   11G   22% /
devtmpfs        889M     0  889M    0% /dev
tmpfs           985M   72K  985M    1% /dev/shm
tmpfs           985M  672K  984M    1% /run
tmpfs           985M     0  985M    0% /sys/fs/cgroup