ArchLinux локално огледало

Од Сподели wiki
Преработка од 23:29, 7 мај 2012; направена од Aleks (разговор | придонеси) (Создадена страница со: == Што? == Во Хаклаб имаме локално огледало за ArchLinux достапно интерно на http://brok.local/archlin...)
(разл) ← Претходна преработка | Последна преработка (разл) | Следна преработка → (разл)
Прејди на прегледникот Прејди на пребарувањето

Што?

Во Хаклаб имаме локално огледало за ArchLinux достапно интерно на http://brok.local/archlinux (или http://192.168.88.49/archlinux/ - ако не ви работи avahi)

За да го користите треба да се додаде

Server = http://192.168.88.49/archlinux/$repo/os/$arch

во /etc/pacman.d/mirrorlist

Затоа што не постои начин на pacman да му се рече да користи одреден mirror преку некоја env променлива или пак како аргумент, огледалото треба да се додава рачно во mirrorlist

Автоматизирање

За да се автоматизира активирањето на огледалото кога некој е поврзан на мрежата во хаклаб, може да се искористи оваа конфигурација :

Во /etc/pacman.d/ се креираат два фајлови, едниот mirrorlist.kika и другиот mirrorlist.normal. Во првиот се наоѓа локалното огледало активирано и на прво место (доколку се користат повеќе огледала), а во вториот се наоѓаат сите останати огледала кои ги користите надвор од хаклабот - без локалното огледало од хаклаб.

Во зависност на која мрежа сте конектирани, /etc/pacman.d/mirrorlist ќе се линка со соодветниот фајл.

Пример со WICD ова се постигнува со скрипта која што се повикува после конектирањето на мрежата /etc/wicd/scripts/postconnect, пример скрипта :

#!/bin/bash

connection_type="$1"
ESSID="$2"
BSSID="$3"

rm -f /etc/pacman.d/mirrorlist

if [ "${connection_type}" == "wired" ]; then
    ln -s /etc/pacman.d/mirrorlist.normal /etc/pacman.d/mirrorlist
else
    if [ "${BSSID}" == "54:E6:FC:D7:19:54" ]; then
        ln -s /etc/pacman.d/mirrorlist.kika /etc/pacman.d/mirrorlist
    else
        ln -s /etc/pacman.d/mirrorlist.normal /etc/pacman.d/mirrorlist
    fi
f