1坪圾、制作sd卡系統(tǒng)鏡像
從官網(wǎng)下載系統(tǒng)鏡像
https://www.raspberrypi.org/software/operating-systems/
由于我的主要目的是當(dāng)服務(wù)器用名秀,因此選擇了沒有桌面的Raspberry Pi OS Lite,Release March 4th 2021
然后使用Win32DiskImager通過讀卡器燒錄到tf卡上面努酸。然后把tf卡插到樹莓派上面揩环,通電诉探,使用micro hdmi轉(zhuǎn)接器連到顯示器先较,插入usb鍵盤,很順利就可以看到畫面
2卵皂、配置ip地址秩铆,開啟ssh服務(wù)
樹莓派默認(rèn)用戶名pi,密碼raspberry灯变。配置網(wǎng)卡地址的配置文件為
/etc/dhcpcd.conf
# Example static IP configuration:
interface eth0
static ip_address=192.168.2.14/24
#static ip6_address=fd51:42f8:caae:d92e::ff/64
static routers=192.168.2.1
修改完后reboot重啟殴玛。由于系統(tǒng)默認(rèn)已經(jīng)設(shè)置了/etc/resolve.conf,nameserver 8.8.8.8添祸,重啟完應(yīng)該就可以上網(wǎng)了滚粟。
開啟ssh的方法也很簡單,sudo raspi-config
選擇 3 Interface Options --> P2 SSH刃泌,就可以打開凡壤。在raspi-config可以順便選擇 5 Localisation Options,把時區(qū)選擇為 Asia--Shanghai 耙替,把鍵盤布局也改了亚侠,選擇Generic 104-key PC --> Other --> English(US) ,默認(rèn)的英式鍵盤布局使用起來會有點奇怪俗扇,數(shù)字鍵上面的符號會有些不同硝烂,\|這個鍵也沒法輸入
參考 https://blog.csdn.net/c80486/article/details/8460271
開啟ssh之后,樹莓派就可以拔掉usb鍵盤和hdmi線了狐援,一切遠(yuǎn)程操作
3钢坦、默認(rèn)內(nèi)核
Linux raspberrypi 5.10.17-v7l+ #1403 SMP Mon Feb 22 11:33:35 GMT 2021 armv7l GNU/Linux
默認(rèn)32位內(nèi)核究孕,v7l代表支持LPAE啥酱,已經(jīng)可以支持4G內(nèi)存。后面有時間再嘗試64位系統(tǒng)
4厨诸、把系統(tǒng)改裝在移動硬盤上
參考
https://blog.csdn.net/nanhantianyi/article/details/106542996
https://wiki.aosc.io/aosc-os/installation/arm-raspberry-pi/
我的4b板子镶殷,eeprom版本為3 Sep 12:11:43 UTC 2020,據(jù)說可以支持gpt分區(qū)usb硬盤啟動微酬。我先試一下gpt分區(qū)绘趋。拿了一塊舊硬盤颤陶,本身已經(jīng)是gpt分區(qū)好了的。把這塊硬盤插在了windows電腦上陷遮,用分區(qū)助手進(jìn)行了分區(qū)調(diào)整滓走。在硬盤最前面騰出了1G的空白空間(有100M應(yīng)該就夠了),準(zhǔn)備用來放boot分區(qū)帽馋。保留了原來一個ntfs的分區(qū)保存原來的數(shù)據(jù)搅方,另外尾部還有300G的空白空間,準(zhǔn)備用來放rootfs绽族。
把移動硬盤從windows電腦拔出姨涡,插到樹莓派上面。lsblk可以看到插進(jìn)來的硬盤了
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465.8G 0 disk
└─sda1 8:1 0 113G 0 part
mmcblk0 179:0 0 14.9G 0 disk
├─mmcblk0p1 179:1 0 256M 0 part /boot
└─mmcblk0p2 179:2 0 14.7G 0 part /
sda1就是我們保留的ntfs分區(qū)吧慢。然后使用命令來劃分新的boot分區(qū)及rootfs分區(qū)
sudo cfdisk /dev/sda
先在前面的空閑空間創(chuàng)建一個分區(qū)涛漂。創(chuàng)建完分區(qū)之后,這個新分區(qū)為/dev/sda2检诗,選type更改“EFI System”匈仗。
然后在后面的空閑空間再創(chuàng)建一個分區(qū),Type保持“Linux filesystem”即可
然后按write岁诉,輸入yes锚沸,更改分區(qū)表,然后quit退出cfdisk涕癣。此時lsblk看到
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 465.8G 0 disk
├─sda1 8:1 0 113G 0 part
├─sda2 8:2 0 1G 0 part
└─sda3 8:3 0 351.8G 0 part
然后用命令格式化分區(qū)
sudo mkfs.vfat -n "BOOT" /dev/sda2
sudo mkfs.ext4 -L "aosc" /dev/sda3
然后掛載boot分區(qū)
sudo mount /dev/sda2 /mnt/
拷貝boot分區(qū)
sudo cp -rf /boot/* /mnt/
blkid查看硬盤上新的rootfs /dev/sda3所在的PARTUUID
/dev/mmcblk0p1: LABEL_FATBOOT="boot" LABEL="boot" UUID="7581-8A48" TYPE="vfat" PARTUUID="fec2614b-01"
/dev/mmcblk0p2: LABEL="rootfs" UUID="fa37d505-e741-4d35-bcec-4580aef395e1" TYPE="ext4" PARTUUID="fec2614b-02"
/dev/sda1: LABEL="Old C" UUID="EEFCFCCDFCFC9157" TYPE="ntfs" PARTLABEL="Basic data partition" PARTUUID="8a309608-409d-4e61-b690-99b0cf8a6970"
/dev/sda2: LABEL_FATBOOT="BOOT" LABEL="BOOT" UUID="69F1-6692" TYPE="vfat" PARTUUID="a3094a77-4a3e-fc49-929a-67c37e738f8d"
/dev/sda3: UUID="8CC24021C240123E" TYPE="ntfs" PARTUUID="03c74376-95bf-eb41-a970-5e98adf48220"
修改里面的cmdline.txt
sudo nano /mnt/cmdline.txt
將里面的root=PARTUUID=xxx中的xxx替換掉
然后掛載rootfs的分區(qū)
sudo umount /mnt
sudo mount /dev/sda3 /mnt/
直接用參考鏈接的腳本來拷貝rootfs
#!/bin/bash
boot_mnt=`findmnt -n /dev/mmcblk0p1 | awk '{print $1}'`
rsync --force -rltWDEgop --delete --stats --progress \
--exclude ".gvfs" \
--exclude "$boot_mnt" \
--exclude "/dev" \
--exclude "/media" \
--exclude "/mnt" \
--exclude "/proc" \
--exclude "/run" \
--exclude "/snap" \
--exclude "/sys" \
--exclude "/tmp" \
--exclude "lost\+found" \
/ /mnt
if [ ! -d $boot_mnt ]; then
mkdir $boot_mnt
fi
if [ -d /snap ]; then
mkdir /mnt/snap
fi
for i in boot dev media mnt proc run sys boot; do
if [ ! -d /mnt/$i ]; then
mkdir /mnt/$i
fi
done
if [ ! -d /mnt/tmp ]; then
mkdir /mnt/tmp
chmod a+w /mnt/tmp
fi
執(zhí)行
sudo bash syncrootfs.sh
文件拷貝完成后哗蜈,編輯/mnt/etc/fstab,將/boot和/對應(yīng)的PARTUUID修改為sda2和sda3對應(yīng)的PARTUUID坠韩。
然后將樹莓派關(guān)機(jī)距潘,拔掉tf卡,嘗試從usb引導(dǎo)只搁。結(jié)果報錯“Unable to read partition as FAT lba: 2107392 oem: 'NTFS'”
看來樹莓派讀到的usb第一個分區(qū)是移動硬盤上保存原有數(shù)據(jù)的ntfs分區(qū)音比,并不是boot分區(qū)∏馔铮看來要調(diào)整一下sda上面的分區(qū)順序洞翩。再次插入tf卡,先正常啟動樹莓派系統(tǒng)焰望。然后用命令調(diào)整分區(qū)順序
sudo cfdisk /dev/sda
然后選擇Sort排序骚亿,接著選擇Write,輸入yes保存分區(qū)表修改熊赖。
再次拔出tf卡后来屠,重啟樹莓派就可以正常USB啟動了
5、其他優(yōu)化
將軟件源切換至國內(nèi)鏡像,sudo nano /etc/apt/sources.list俱笛,
deb http://raspbian.raspberrypi.org/raspbian/ buster main contrib non-free rpi
改為
deb https://mirrors.ustc.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi
樹莓派系統(tǒng)自帶的vi用起來總是怪怪的捆姜。可以替換為完整的vim
sudo apt remove vim-common
sudo apt install vim
樹莓派默認(rèn)禁止root進(jìn)行ssh登錄迎膜。要放開的話泥技,修改/etc//ssh/sshd_config
#PermitRootLogin prohibit-password
改為
PermitRootLogin yes
重啟sshd,service sshd restart