# Устанавливаем необходимый софт: apt update apt upgrade apt install build-essential u-boot-tools libncurses5-dev git bison flex bc libssl-dev # Примечание: Если сборка ведется на обычном компе - устанавливаем Cross-compiler, если на девайсе - пропускаем слудующую команду. apt install crossbuild-essential-armhf # Скачиваем исходники последней стабильной ветки ядра Linux: git clone --depth 1 git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git linux-stable # Скачиваем конфиг ядра wget http://fox-exe.ru/WDMyCloud/Other/Official_linux_kernel/kernel.config -o linux-stable/.config # Скачиваем DTS файл под ваше устройство (Или все разом): # WD MyCloud Mirror Gen1 wget http://fox-exe.ru/WDMyCloud/Other/Official_linux_kernel/armada-370-wdmc-mirror-gen1.dts -o linux-stable/arch/arm/boot/dts/ # WD MyCloud Mirror Gen2 wget http://fox-exe.ru/WDMyCloud/Other/Official_linux_kernel/armada-385-wdmc-mirror-gen2.dts -o linux-stable/arch/arm/boot/dts/ # WD MyCloud Gen2 (One disk, FW v2.xx) wget http://fox-exe.ru/WDMyCloud/Other/Official_linux_kernel/armada-375-wdmc-gen2.dts -o linux-stable/arch/arm/boot/dts/ # WD MyCloud Ex2 Ultra wget http://fox-exe.ru/WDMyCloud/Other/Official_linux_kernel/armada-385-wdmc-Ex2-Ultra.dts -o linux-stable/arch/arm/boot/dts/ # Пора начинать... # Примечание: Если сборка ведется непосредственно на устройстве, то пропускаем строки с установкой переменных ARCH и CROSS_COMPILE # Примечание: Замените $DTS_FILE на имя конфига (dts) для вашего устройства # Примечание: $DIR_RESULT - Путь, куда будет сохранен результат (Ядро и модули) # Примечание: Опция "-j 4" указывает на то, сколько ядер процессора будут задействованны в сборке. Уберите для авто-выбора или замените на своё значение. export ARCH=arm export CROSS_COMPILE=arm-linux-gnueabihf- export DIR_RESULT=../output export DTS_FILE=armada-385-wdmc-Ex2-Ultra mkdir -p $DIR_RESULT cd linux-stable # Обновляем конфиг (Если появились новые параметры - будет предложено ввести их значения) make -j 4 oldconfig # Если нужно, можно внести изменения в конфиг ядра через псевдографическое меню: make -j 4 menuconfig # Собственно, собираем все: make -j 4 zImage make -j 4 $DTS_FILE.dtb make -j 4 modules make -j 4 INSTALL_MOD_PATH=$DIR_RESULT modules_install cat arch/arm/boot/zImage arch/arm/boot/dts/$DTS_FILE.dtb > zImage_and_dtb mkimage -A arm -O linux -T kernel -C none -a 0x00008000 -e 0x00008000 -n $DTS_FILE -d zImage_and_dtb $DIR_RESULT/uImage rm zImage_and_dtb # Готово! Результат будет в папке $DIR_RESULT ("output" по умолчанию)