Openwrt編譯教程

ZZH0312發表於2024-03-10

注意:

  1. 不要用 root 使用者進行編譯
  2. 國內使用者編譯前最好準備好梯子
  3. 預設登陸IP 192.168.1.1 密碼 password

編譯命令:

  1. 首先裝好 Linux 系統,推薦 Debian 11 或 Ubuntu LTS
  2. 安裝編譯依賴
sudo apt update -y
sudo apt full-upgrade -y
sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \
bzip2 ccache cmake cpio curl device-tree-compiler fastjar flex gawk gettext gcc-multilib g++-multilib \
git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libglib2.0-dev libgmp3-dev libltdl-dev \
libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libreadline-dev libssl-dev libtool lrzsz \
mkisofs msmtp nano ninja-build p7zip p7zip-full patch pkgconf python2.7 python3 python3-pyelftools \
libpython3-dev qemu-utils rsync scons squashfs-tools subversion swig texinfo uglifyjs upx-ucl unzip \
vim wget xmlto xxd zlib1g-dev python3-setuptools
  1. 下載原始碼,更新 feeds 並選擇配置
git clone https://github.com/coolsnowwolf/lede
cd lede
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig
  1. 下載 dl 庫,編譯韌體(-j 後面是執行緒數)
make download -j8 #此處-j後面的執行緒數不用改

原則上電腦核心數加1可以最大效率的執行編譯,請根據實際情況選擇

make V=s -j1 #第一次編譯推薦用單執行緒
  • 二次編譯:
cd lede
git pull
./scripts/feeds update -a
./scripts/feeds install -a
make defconfig
make download -j8
make V=s -j$(nproc)
  • 如果需要重新配置:
rm -rf ./tmp && rm -rf .config
make menuconfig
make V=s -j$(nproc)

編譯完成後輸出路徑:home/使用者名稱/lede/bin/targets

下載到本地電腦,需要透過SSH遠端登入進行下載。ubuntu預設是沒開通SSH登入,所以我們需要進行開通。

開通SSH登入方法:

  1. 必須切換成為root使用者
sudo -i
  1. 先更新軟體列表和更新軟體
sudo apt-get update
  1. 先更新軟體列表和更新軟體
sudo apt-get upgrade
  1. 安裝ssh
apt-get install ssh
  1. 啟動ssh服務
sudo /etc/init.d/ssh start
  1. 檢查是否有ssh環境
ps -e | grep ssh

ubuntu開通root登入SSH許可權:

  1. 使用普通使用者登入後切換root
sudo -i
  1. 建立root管理員密碼
passwd root
  1. 開啟root登入
sudo sed -i 's/^#\?PermitRootLogin.*/PermitRootLogin yes/g' /etc/ssh/sshd_config
  1. 開啟密碼驗證
sudo sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication yes/g' /etc/ssh/sshd_config
  1. 重啟ssh服務
service sshd restart
  1. 檢查是否有ssh環境透過以下命令:
ps -e | grep ssh

相關文章