# emergen über ftp

## berni.walzl

kann man emerge auch über ftp durchführen? da ich hinter proxy bin, bei dem rsync und http zu ist. gibt es diese möglichkeit oder hab ich pech gehabt  :Sad: 

berni

----------

## Sas

Also das Herunterladen von Distfiles funktioniert auch über FTPs, einfach die FTP-Server als Mirrors in die make.conf eintragen.

Und fürs Synchronisieren müsstest du halt gucken, dass du über FTP an einen Portage-Snapshot kommst. Wäre halt einfach ein emerge-webrsync über FTP statt HTTP. ian! hier aus dem Forum hat Zugang zu einem Server, der alle paar Stunden einen aktuellen Snapshot zur Verfügung stellt. Vielleicht fragst du ihn mal ob da auch FTP möglich wäre.

edit: Da isser ja!

----------

## ian!

Das rsync zu ist, wundert mich ja nicht. Aber http zu und ftp offen?  :Shocked: 

Nun gut. Zum eigentlichen Problem: Falls die Frage in Richtung Portagetree-Updates geht, so ist da schon was zu machen. Schaue einmal in die Mirrorliste [1]. Dort bieten einige Server auch auf FTP Portage-Snapshots an. Diese kannst du dann mit dem lokalen Tree syncen (so wie es z.B. auch emerge-webrsync macht).

[1] http://www.gentoo.org/main/en/mirrors.xml

----------

## ian!

 *Sas wrote:*   

> ian! hier aus dem Forum hat Zugang zu einen Server, der alle paar Stunden ein aktuellen Snapshot zur Verfügung stellt. Vielleicht fragst du ihn mal ob da auch FTP möglich wäre.

 

Auf dem Server wollte ich zunächst keine weiteren Dienste mehr einrichten. Wenn weitere Server verfügbar sind kann man sicherlich darübr nachdenken.

----------

## berni.walzl

wie schon erwähnt, bin ich hinter einem Proxy. Um genauer zu sein, hinter einem MS-Proxy.

Bei diesem Server ist eigentlich alles zu, außer http, ftp, icq und pop3.

Um sich zu einem http-server (z.B. www.gentoo.de) zu connecten, muss ich mich am MS-Server Authentifizieren. Dies funktioniert über das sogenannte NTLM-Protokoll.

NTLM unterstützt Windows und man kann sich mit dem IE ganz easy connecten. (mit Mozilla nicht) Leider sieht die Sache mit Linux anders aus. Ich erhalte die Fehlermeldung: 407 - Authentifizierung erforderlich  :Sad: 

Mit anderen Distributionen wendete ich einen Trick an um ins www zu kommen. Ich musste immer den Rozmanov (http://www.geocities.com/rozmanov/ntlm/) starten, dieser öffnete dann lokal einen Proxy, der mich am MS-Proxy authentifiziert. Klingt kompliziert und umständlich, ... ist/war es auch.

Als ich laß, dass emerge in python geschrieben war, war ich froh, denn der Rozmanov ist auch in Python geschrieben und ich dachte, dass ich so ins www komme. Leider fehlt auf der Universal-LiveCD irgendein Package (iregndwas.so.1 oder so) und ich kannn ihn nicht ausführen.

Am MS-Proxy muss ich mich nur wegen dem http authentifizieren. Mit allen anderen Protokolle habe ich keine Probleme.

Wäre echt super, wenn es so einen Server geben würde (vielleicht auch emerge-ftprsync *g*)  :Wink: 

gruß, berni

----------

## berni.walzl

da muss ich jetzt glatt nochmal nachfragen:

ian!: ist es möglich, NUR über ftp eine Stage1 installation zu machen. also bootstrappen auch. Weil da connectet er sich ja auch zu irgendeinem server...

berni

----------

## Beforegod

@berni :

Am besten ist Du holst Dir irgendwo die Mirrorliste und trägst halt nur FTP Spiegel ein, damit nur dort die Daten gezogen werden.

----------

## P2SK

ich weiß nicht ob das was hilft, aber probier mal:

```
# export ftp_proxy="ftp://proxy.address.org:port"

```

bzw:

```
# export ftp_proxy="ftp://benutzername:passwort@proxy.address.org:port"

```

hoffe das half!  :Smile: 

Greetz

----------

## toskala

auch auf die gefahr hin, dass ich gleich gesteinigt werde, aber ein ssh tunnel wirkt oftmals wahre wunder.

du brauchst dazu ja nur einen externen server der dir deinen tunnel weitergibt, dann kannst du über diesen rsyncen und was du willst...

der proxy wird ja wohl nicht unprivilegierte verbindungen dichten, also tunnelst du einfach http über ssh von local port 8080 auf eine büchse irgendwo im netz, und dann geht der http traffic über den tunnel.

aber ich hab noch eine frage:

wenn du hinter einem ms-proxy sitzt, dann gibts dafür 2 möglichkeiten. 

a) du bist user in einer firma/institut, wenn dem so ist, dann gehörst du entweder zum it-team (dann solltest du das selbst richten können), oder du gehörst zu den normalen usern (dann frage ich mich ob es klug ist mit gentoo während der arbeitszeit rumzuspielen).

b) du hast das ding bei dir zuhause stehen, dann stell doch die passwort abfrage ab.

----------

## berni.walzl

Schülerheim  :Smile: 

SSH-Tunnel... ssh-Port ist zu  :Smile: 

FTP-Tunnel... das würd funzn, wenns sowas gibt.

In die Mirrorliste nur FTPs eintragen hat wenig sinn. denn beim emerge greift er auf den rsync zu (das ist kein ftp. rsync ist port 873)

Wenn jemand weitere Ideen oder Tipps hat. nur raus damit. Bin für alle Ideen offen.

berni

----------

## toskala

scherzkeks.

das du ssh auf einen beliebigen port legen kannst ist dir aber bewusst?

ich meine, die grundvorraussetzungen dafür sind:

a) server _ausserhalb_ des netzes auf dem du root hast

b) grundlegende kenntnis von ssh, legs halt auf nen anderen port der nicht zu ist

und schwupps kannst du tunneln.

es gibt dann zu guter letzt noch http-tunnel, das ist aber garstiger als ssh

----------

## berni.walzl

sorry. hab ich nicht gewusst. Ich hab mal einen http-tunnel gemacht, dieser hat aber nicht funktioniert, da der server alles rausfilterte, was nicht http ist  :Sad: 

na gut... nur wie komm ich jetzt bitte zu nem server, wo ich root sein kann ?!?

Es muss doch noch andere Möglichkeiten geben.

berni

----------

## toskala

naja, solang du den proxy-zwang hast wird da nicht viel drumrum gehen, mehr fällt mir dazu jetzt auch net ein

----------

## berni.walzl

nochwas am rande: ist es eigentlich egal, ob ich jetzt den emerge oder den emerge-webrsync ausführe? oder hab ich durch den webemerge irgendwelche nachteile.

UND: von welcher Datei holt sich emerge-webrsync den Server zu dme er sich connecten muss? was wäre, wenn ich den einfach durch einen ftp-server ersetze?

berni

----------

## st4n

er brauch kein root-zugang du pappnase :P

----------

## berni.walzl

 *berni.walzl wrote:*   

> UND: von welcher Datei holt sich emerge-webrsync den Server zu dme er sich connecten muss? was wäre, wenn ich den einfach durch einen ftp-server ersetze?

 

würde das funktionieren??

berni

----------

## Sas

Die Nachteile von webrsync sind mehr Traffic und ein etwas älterer Portage-Tree. Da das Skript den Snapshot einfach via wget runter lädt, würde das genauso von einem FTP-Server funktionieren. Die Server werden unter GENTOO_MIRRORS in die make.conf eingetragen. Dort solltest du ja sowieso nur FTP-Server stehen haben, wenn HTTP zu ist. Vor dem Sync musst du natürlich noch ein 'export ftp_proxy="dein_ftp_proxy"' absetzen. Am besten du schreibst den Befehl gleich nach /etc/profile.

----------

## berni.walzl

der bootstrap lädt ja auch was vom internet runter. kann ich das auch einstellen oder benutzt er die Mirrors von GENTOO_MIRRORS??

berni

----------

## Sas

Ja, die make.conf wird da genauso genutzt wie sonst auch.

----------

## berni.walzl

und muss ich da jetzt den ganzen pfad eingeben, oder?

also z.B.: ftp://gentoo.inode.at/portage/

mit dem letzten Pfad (/portage/)

berni

----------

## Sas

Nein, du guckst einfach hier nach und trägst die FTP-Mirrors einfach so in die make.conf ein, wie sie dort stehen; z.B. ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/

----------

## berni.walzl

also einfach am ende der make.conf hinschreiben:

GENTOO_MIRROR="ftp://gentoo.inode.at/source/"

da sind die ordner gleich wie bei dem von ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ aber mein isp ist auch inode, deshalb kann ich die komplette bandbreite ausnützen  :Smile: 

stimmt das so? oder muss ich noch was ändern.

berni

----------

## unix

kannst auch ein mirrorselect -i -o >> /etc/make.conf

machen und dir einen ftp mirror aus der liste suchen

----------

## sirro

Ich verstehe gar nicht, dass das Problem noch existiert, schon ganz am Anfang des Threads wurde doch zweimal der Hinweis auf die Snapshots gegeben, die viele Mirror haben.

 :Arrow:  FTP-connect auf ftp://gentoo.inode.at/source/snapshots dann aktuellsten Snapshot runterladen, nach /usr/portage entpacken und dann wie gerade beschrieben noch ein paar ftp-server in die Mirror-Liste.

Einziges Problem bleiben dann Dateien, die noch nicht auf den FTP-Servern liegen sondern von HTTP-Servern des Autors gezogen werden müssen. Aber solange du kein "bloody" aktuelles System haben willst sollte dieses Problem nicht auftreten (und wenn einmal alles läuft, dann kannst du deinen Python-Proxy ja wieder aufsetzen...  :Wink: )

----------

## berni.walzl

das Problem besteht darin, dass ich mit emerge-webrsync den kernel runterladen soll. Leider hat er sich immer zu einem http-server connectet. Ich werde nun versuchen, einen GENTOO_MIROOR einzutragen und schaun, ob sich emerge-webrsync dann noch immer zu einem http-server connecten will.

berni

----------

## _hephaistos_

hallo,

1) kernel -> lad ich zB NUR von kernel.org

2) nur eine idee: wenn es so grössere pakete gibt, dann schaust du dir einfach die URL an und ladest es per hand in /usr/portage/distfiles

hth,

ciao

----------

