======Создание локального зеркала репозитариев Linux======
Предпологается что у вас установлено следующее ПО:
* [[software:linux_server:ubuntu_server|Ubuntu server]]
* [[software:linux_server:ubuntu_server_install_apache|Apache HTTP Server]]
* [[software:linux_server:ubuntu_server_install_php|PHP-модуль]]
* [[software:linux_server:ubuntu_server_setting_firewall_ufw|Hастроен брандмауэр]]
Проверим работу веб сервера на нашем ip адресе
{{:software:linux_server:web_server_wwoss_1.jpg?|}}
Если это не так...
1. Устанавливаем Apache
sudo apt install apache2
и PHP-модуль.
sudo apt update
sudo apt install php libapache2-mod-php
затем перезагрузите веб-сервер, чтобы перезапустить модуль PHP.
sudo service apache2 restart
Выполните проверку.
php -v
Переходим в папку www/html
cd /var/www/html
{{:software:linux_server:web_server_wwoss_2.jpg?|}}
Смотрим что есть в директории
ls -n
{{:software:linux_server:web_server_wwoss_3.jpg?|}}
удаляем файл index.html
sudo rm index.html
{{:software:linux_server:web_server_wwoss_4.jpg?|}}
проверяем выполнение команды удаления
ls -n
{{:software:linux_server:web_server_wwoss_5.jpg?|}}
Изменяем права папки html с root на alisa
sudo chown -R root:alisa /var/www/html
sudo chmod -R 571 /var/www/html
{{:software:linux_server:web_server_wwoss_6.jpg?|}}
Создаем необходимые на наше усмотрение папки
sudo mkdir /var/www/html
sudo mkdir /var/www/html/debian
sudo mkdir /var/www/html/gcc
sudo mkdir /var/www/html/git
sudo mkdir /var/www/html/gnu
sudo mkdir /var/www/html/kde
sudo mkdir /var/www/html/lfs
sudo mkdir /var/www/html/linux_kernel
sudo mkdir /var/www/html/mariadb
sudo mkdir /var/www/html/openstreetmap
sudo mkdir /var/www/html/raspbian
sudo mkdir /var/www/html/sourceware
sudo mkdir /var/www/html/ubuntu
sudo mkdir /var/www/html/ubuntu_kernel
sudo mkdir /var/www/html/unix
и вспомогательные папки для ключей и скриптов
sudo mkdir /home/alisa/repo
sudo mkdir /home/alisa/repo/keyring
sudo mkdir /home/alisa/repo/scripts
{{:software:linux_server:web_server_wwoss_7.jpg?|}}
Изменяем права папки html с root на alisa
sudo chown -R root:alisa /home/alisa/repo
sudo chmod -R 571 /home/alisa/repo
sudo apt-get update
Устанавливаем пакет debmirror
sudo apt install debmirror gnupg xz-utils
Открываем в редакторе файл /etc/apt/sources.list
sudo sensible-editor /etc/apt/sources.list
{{:software:linux_server:web_server_wwoss_8.jpg?|}}
{{:software:linux_server:web_server_wwoss_9.jpg?|}}
записываем в файл следующие адреса
#############################################################
########## Ubuntu 22.04 LTS (Jammy Jellyfish) ##############
#############################################################
deb http://archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ jammy main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src http://archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://archive.canonical.com/ubuntu/ jammy partner
deb-src http://archive.canonical.com/ubuntu/ jammy partner
{{:software:linux_server:web_server_wwoss_10.jpg?|}}
Записываем и сохраняем файл
sudo apt-get update
sudo apt-get dist-upgrade
Создадим файл скрипта зеркала Ubuntu
sudo sensible-editor /home/alisa/repo/scripts/mirror_ubuntu.sh
и вставим в скрипт следующий код
#!/bin/bash -x
/usr/bin/debmirror --source -m --passive --host=archive.ubuntu.com \
--root=ubuntu --method=http --progress \
--dist=focal,focal-security,focal-updates,focal-backports,jammy,jammy-security,jammy-updates,jammy-backports,noble,noble-security,noble-updates,noble-backports,oracular,oracular-security,oracular-updates,oracular-backports \
--ignore-release-gpg --section=main,restricted,universe,multiverse \
--arch=amd64 /var/www/html/ubuntu/
{{:software:linux_server:web_server_wwoss_11.jpg?|}}
перейдем в папку скрипта и сделаем его исполнительным
cd /home/alisa/repo/scripts/
sudo chmod +x mirror_ubuntu.sh
Установим для удобства пакет screen
sudo apt install screen
Запустим наш скрипт mirror_ubuntu.sh на исполнение
sudo screen /home/alisa/repo/scripts/mirror_ubuntu.sh
{{:software:linux_server:web_server_wwoss_12.jpg?|}}
Проверим в браузере работу скрипта по загрузке зеркала ubuntu
{{:software:linux_server:web_server_wwoss_13.jpg?|}}
Создаём несколько папок в домашней дирректории, в которой будет храниться наш срез репозитория (или даже несколько), к примеру, согласно нижеприведенной схемы:
sudo mkdir /home/alisa/repo/kernelmirror
sudo mkdir /home/alisa/repo/kernelmirror/kernel
\\
cd /var/www/html
Настроим права доступа к нашей главной папке
sudo chown -R root:alisa /home/alisa/repo
sudo chmod -R 571 /home/alisa/repo
sudo ln -s /home/alisa/repo/kernelmirror/kernel kernel
Скрипт mirrorkernel.sh
Теперь создадим mirrorkernel.sh, открыв предпочитаемый вами редактор таким образом
Создайте файл «mirrorkernel.sh».
Теперь создадим mirrorkernel.sh.
Откройте предпочитаемый вами редактор таким образом
sudo sensible-editor /home/alisa/repo/scripts/mirrorkernel.sh
=====зеркало lfs=====
rsync://rsync2.osuosl.org/lfs/ \\
rsync://rsync2.osuosl.org/clfs/ \\
rsync://mirror.freedif.org/blfs/ \\
\\
* rsync -r --progress rsync://rsync2.osuosl.org/lfs/ /var/www/html/lfs/
{{:software:linux_server:web_server_wwoss_14.jpg?|}}
по аналогии
rsync -r --progress rsync://mirror.freedif.org/blfs/ /var/www/html/lfs/blfs/
rsync -r --progress rsync://mirror.freedif.org/clfs/ /var/www/html/lfs/clfs/
перейдем в директорию lfs/hlfs-packages
и загрузим hlfs-packages
cd /var/www/html/lfs/hlfs-packages
wget --recursive --no-parent https://mirror.download.it/lfs/pub/lfs/hlfs-packages/
перейдем в директорию lfs/lfs-museum
и загрузим alfs-museum
cd /var/www/html/lfs/lfs-museum
wget -r -l 7 -nc https://linuxfromscratch.org/museum/alfs-museum/
{{:software:linux_server:web_server_wwoss_15.jpg?|}}
=====зеркало debian=====
rsync -r --progress rsync://ftp.ru.debian.org/debian/ /var/www/html/debian/
=====зеркало mariadb=====
sudo rsync -a --partial --delete-after --delay-updates rsync.osuosl.org::mariadb /var/www/html/mariadb/
=====зеркало blender=====
rsync -r --progress rsync://mirrors.dotsrc.org/blender/ /var/www/html/floss/blender/
=====зеркало raspbian=====
rsync -r --progress rsync://mirrors.dotsrc.org/raspbian/ /var/www/html/raspbian/
=====зеркало mysql=====
rsync -r --progress rsync://mirrors.dotsrc.org/mysql/ /var/www/html/floss/mysql/
=====зеркало postgresql=====
rsync -r --progress rsync://mirrors.dotsrc.org/postgresql/ /var/www/html/floss/postgresql/
=====зеркало git=====
rsync -r --progress rsync://rsync.kernel.org/pub/software/scm/ /var/www/html/git/
=====зеркало putty=====
rsync -r --progress rsync://mirrors.dotsrc.org/putty/ /var/www/html/floss/putty/
=====зеркало kde=====
rsync -r --progress rsync://mirror.truenetwork.ru/kde/ /var/www/html/kde/
=====зеркало gnu=====
исключаем папку gcc
rsync --exclude='/gcc/' -a --no-compress -r --progress rsync://ftp.gnu.org/gnu/ /var/www/html/gnu/
=====зеркало gcc=====
rsync -r --progress rsync://mirror.truenetwork.ru/gnu/gcc/ /var/www/html/gcc/
=====Ubuntu Kernel=====
ubuntu_kernel
cd /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v5.13/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v5.14/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v5.15/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v5.16/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v5.17/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v5.18/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v5.19/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.1/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.2/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.3/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.4/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.5/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.6/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.7/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.8/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.9/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.10/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.11/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.12/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.13/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.14-rc1/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.14-rc2/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.14-rc3/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.14-rc4/ -P /var/www/html/ubuntu_kernel/
wget --mirror -c -p --convert-links https://mirrors.portworx.com/mirrors/https/kernel.ubuntu.com/mainline/v6.14-rc5/ -P /var/www/html/ubuntu_kernel/