這個時間點, debian mips 的 debootstrap 只有 jessie 是好的, sid 或是 stretch 都有問題.
$ debootstrap --verbose --foreign --arch mips jessie ./ http://ftp.tw.debian.org/debian
mips64 只有 mips64le , 沒有 mips64 .
其他的還是看這篇文章就好, 也快八年了.
[ARM][Linux] 建立 ARM 平台的 Debian System
懶得再開一篇, 改一改就好了.
如果是裝 ARM64 Ubuntu 呢? mirror 改到 ports.ubuntu.com 去就可以了, 也有 tw.ports.ubuntu.com 但是我記得是指向國外, 記得 arch 和版本號都要改
Ubuntu 16.04 LTS
$ debootstrap --verbose --foreign --arch arm64 xenial ./ubuntu http://tw.ports.ubuntu.com/ubuntu-ports
Ubuntu 18.04 LTS
$ debootstrap --verbose --foreign --arch arm64 bionic ./ubuntu http://tw.ports.ubuntu.com/ubuntu-ports
Ubuntu 20.04 LTS
$ debootstrap --verbose --foreign --arch arm64 focal ./ubuntu http://tw.ports.ubuntu.com/ubuntu-ports
Ubuntu 22.04 LTS
$ debootstrap --verbose --foreign --arch arm64 jammy ./ubuntu http://tw.ports.ubuntu.com/ubuntu-ports
Debian Stable arm (not ARM64)
debootstrap --verbose --foreign --arch armel stable ./ http://ftp.tw.debian.org/debian
我愛用 NFS 開機, 這是 u-boot NFS 的 example command
setenv bootargs 'console=ttyAMA0,115200n8 earlycon=pl011,0x87e028000000 debug maxcpus=24 rootwait rw ip=dhcp::eth2:off root=/dev/nfs rw nfsroot=10.0.0.30:/nfs/ubuntu1804,v3 coherent_pool=16M' setenv start 'setenv ethact vnic2 ; dhcp ; setenv serverip 10.0.0.30 ; tftpboot $kernel_addr Image ; booti $kernel_addr - $fdtcontroladdr' run start
如果是安裝的機器本身就是 ARM64 的機器,可以 chroot 到 ubuntu 內
如果是用 NFS 開機, 可以跳過這一個階段,直接執行下面的 run second-stage
cd /ubuntu mount --bind /proc proc mount --bind /dev dev mount --bind /sys sys cd etc cp /etc/resolv.conf . cd / chroot ubuntu bash
執行, 解壓相關的 package (run second-stage)
/debootstrap/debootstrap --second-stage
Ubuntu 16.04 編輯 /etc/apt/source.list 加上
deb http://tw.ports.ubuntu.com/ubuntu-ports xenial main restricted deb http://tw.ports.ubuntu.com/ubuntu-ports xenial-updates main restricted deb-src http://tw.ports.ubuntu.com/ubuntu-ports xenial main restricted universe multiverse deb-src http://tw.ports.ubuntu.com/ubuntu-ports xenial-updates main restricted universe multiverse deb http://tw.ports.ubuntu.com/ubuntu-ports xenial universe deb http://tw.ports.ubuntu.com/ubuntu-ports xenial-updates universe deb http://tw.ports.ubuntu.com/ubuntu-ports xenial multiverse deb http://tw.ports.ubuntu.com/ubuntu-ports xenial-updates multiverse
18.04
deb http://tw.ports.ubuntu.com/ubuntu-ports bionic main restricted deb http://tw.ports.ubuntu.com/ubuntu-ports bionic-updates main restricted deb-src http://tw.ports.ubuntu.com/ubuntu-ports bionic main restricted universe multiverse deb-src http://tw.ports.ubuntu.com/ubuntu-ports bionic-updates main restricted universe multiverse deb http://tw.ports.ubuntu.com/ubuntu-ports bionic universe deb http://tw.ports.ubuntu.com/ubuntu-ports bionic-updates universe deb http://tw.ports.ubuntu.com/ubuntu-ports bionic multiverse deb http://tw.ports.ubuntu.com/ubuntu-ports bionic-updates multiverse
20.04
deb http://tw.ports.ubuntu.com/ubuntu-ports focal main restricted
deb http://tw.ports.ubuntu.com/ubuntu-ports focal-updates main restricted
deb-src http://tw.ports.ubuntu.com/ubuntu-ports focal main restricted universe
multiverse
deb-src http://tw.ports.ubuntu.com/ubuntu-ports focal-updates main restricted u
niverse multiverse
deb http://tw.ports.ubuntu.com/ubuntu-ports focal universe
deb http://tw.ports.ubuntu.com/ubuntu-ports focal-updates universe
deb http://tw.ports.ubuntu.com/ubuntu-ports focal multiverse
deb http://tw.ports.ubuntu.com/ubuntu-ports focal-updates multiverse
22.04
deb http://tw.ports.ubuntu.com/ubuntu-ports jammy main restricted
deb http://tw.ports.ubuntu.com/ubuntu-ports jammy-updates main restricted
deb-src http://tw.ports.ubuntu.com/ubuntu-ports jammy main restricted universe multiverse
deb-src http://tw.ports.ubuntu.com/ubuntu-ports jammy-updates main restricted universe multiverse
deb http://tw.ports.ubuntu.com/ubuntu-ports jammy universe
deb http://tw.ports.ubuntu.com/ubuntu-ports jammy-updates universe
deb http://tw.ports.ubuntu.com/ubuntu-ports jammy multiverse
deb http://tw.ports.ubuntu.com/ubuntu-ports jammy-updates multiverse
加上 apt cache (如果你有內部的 proxy server)
$ echo "Acquire::http::Proxy \"http://192.168.1.254:3142\";" | tee -a /etc/apt/apt.conf
更新套件庫
$ apt update $ apt -y upgrade
安裝必要的程式 (註:註 net-tools 過時了, 可以我還是習慣舊指令)
$ apt install -y vim openssh-server tmux btrfs-tools net-tools sudo wget resolvconf-admin
# 20.04/22.04 btrfs 改叫 btrfs-progs
$ apt install -y vim openssh-server tmux btrfs-progs net-tools sudo wget resolvconf-admin
Add User
$ adduser [username]
順便改 root 的密碼
$ passwd root
註: 18.04 可能要先設定密碼之後重開機一次才能, 更新系統環境變數, 安裝套件以便之後的設定
註2: 18.04 如果時間差太多會 update 失敗, 要先調整時間到今天
先裝 nfs-common 增加 nfs access 的速度
$ apt install -y nfs-common
備用, 17.04 後似乎都會用 resolvconf 當 DNS service, 但是不知道為什麼不會取用 DHCP 得到的 DNS
$ systemctl disable systemd-resolved.service $ service systemd-resolved stop $ echo "nameserver 8.8.8.8" > /etc/resolv.conf
這樣看看會不會正常
編輯 /etc/hostname
取一個合適的名字, 預設是用執行 debootstrap 的主機名稱
編輯 /etc/network/interface
最後要產生 utf-8 的 locale 檔案
$ sudo locale-gen en_US.UTF-8
發佈留言