Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index International Gentoo Users Deutsches Forum (German)
  • Search

mehrere distfiles verzeichnisse?

Support-Forum
Diskussionen rund um Installation, Betrieb und Anpassungen von Gentoo und dessen Paketen sowie dabei auftretenden (technischen) Problemen.
Deutsches Portal: www.gentoo.de
Post Reply
  • Print view
Advanced search
41 posts
  • Previous
  • 1
  • 2
Author
Message
sarahb523
Guru
Guru
Posts: 423
Joined: Wed Mar 10, 2004 10:25 am
Location: Berlin

  • Quote

Post by sarahb523 » Fri Sep 17, 2004 6:13 am

ich hab noch eine verbose option hinzugefügt. Jetzt fehlt nur noch eine schöne formatierung des verbose textes.

Auf meiner Wunschliste ist jetzt noch ein kleiner check ob die gefundene datei ein link ist. Wenn das nen link ist, dann sollte der neu anzulegende link nicht auf den gefundenen, sondern auf sein ziel zeigen. Wenn der link ungültig ist, soll weitergesucht werden.

@equinox0r
kannst du auch mal deine version abgleichen und posten? Denn ich denke da is was unterschiedlich... (hab ich anhand deiner ausgaben gesehen)
AMD Sempron 2400+ / 1GB RAM / NVidia Geforce 5200FX /
Kernel 2.6.31-gentoo-r4 / kde 4.3
Top
equinox0r
l33t
l33t
User avatar
Posts: 614
Joined: Wed Feb 18, 2004 12:39 am
Contact:
Contact equinox0r
Website

  • Quote

Post by equinox0r » Fri Sep 17, 2004 5:03 pm

soooo.. schaust du mal hier :)
mein vollständiges komplettes aktuelles dist_overlay mit check_mount :)

EDIT: code ist richtig und funzt, bla :)
EDIT #2: volltrunkenerweise noch nen bug entdeckt und gefixed *hrhr* (3:13 uhr mez)
buggy: fstab_out=`cat /etc/fstab | awk '{print $2}' | grep -v "^#" | grep -v "^/$"`
fix: fstab_out=`cat /etc/fstab | grep -v "^#" | awk '{print $2}' | grep -v "^/$"`


EDIT #3 (Mo Sep 20 22:04:55 CEST 2004) neue version online (0.3)
Last edited by equinox0r on Mon Sep 20, 2004 8:05 pm, edited 1 time in total.
AMD 2400+ XP | 1024 MB RAM | ATI Radeon 9600Pro
Gentoo Base System version 1.4.16 | Portage 2.0.51.19 | 2.6.11-gentoo-r9 Kernel
Top
sarahb523
Guru
Guru
Posts: 423
Joined: Wed Mar 10, 2004 10:25 am
Location: Berlin

  • Quote

Post by sarahb523 » Sat Sep 18, 2004 8:35 am

he das sieht ja richtig toll aus. Kannst du DIST_COPY="0" mal durch DIST_COPY=false (und die entsprechende if zeile) ändern? Ich hatte das in meiner vorigen Version schon getan.

Jetzt fehlen eigentlich nur noch 2 cmd zeilen params zur vollständigkeit:
--help
--version

wenn jemand lust und zeit hat... ansonsten mach ich das am kommenden Montag
AMD Sempron 2400+ / 1GB RAM / NVidia Geforce 5200FX /
Kernel 2.6.31-gentoo-r4 / kde 4.3
Top
equinox0r
l33t
l33t
User avatar
Posts: 614
Joined: Wed Feb 18, 2004 12:39 am
Contact:
Contact equinox0r
Website

  • Quote

Post by equinox0r » Mon Sep 20, 2004 8:04 pm

dist_overlay 0.3 released!
neues feature: ignore_mount_fail und etwas code umgeschrieben .. kommentiert wird später ;)

hier der code:

Code: Select all

mittlerweile hab ich v.0.3.1 released ... s.u.
und hier noch etwas output:

Code: Select all

[21:44:27] [root@dude.zion]
[~] $ emerge net-misc/whois
Calculating dependencies ...done! \ 
>>> emerge (1 of 1) net-misc/whois-4.6.6-r3 to /
>>> Downloading http://gentoo.osuosl.org/distfiles/whois_4.6.6.tar.gz
   DISToverlay
 * WARNING Performing DEEPSCAN. This may take some time on large filesystems...

 * searching for whois_4.6.6.tar.gz...
    scanning /data/mp3 ... file not found.

 * /mnt/dvd is not mounted in filesystem. Trying to mount ...
 * /mnt/dvd could not be mounted.
    scanning /mnt/dvd ... file not found.

 * /mnt/burn is not mounted in filesystem. Trying to mount ...
 * /mnt/burn could not be mounted.
    scanning /mnt/burn ... file not found.
    scanning /mnt/dist ... file found!

 *  make a link from file to distfiles

....
.. und mit IGNORE_MOUNT_FAIL=false .. :

Code: Select all

[21:52:27] [root@dude.zion]
[~] $ emerge net-misc/whois
Calculating dependencies ...done! \ 
>>> emerge (1 of 1) net-misc/whois-4.6.6-r3 to /
>>> Downloading http://gentoo.osuosl.org/distfiles/whois_4.6.6.tar.gz
   DISToverlay
 * WARNING Performing DEEPSCAN. This may take some time on large filesystems...

 * searching for whois_4.6.6.tar.gz...
    scanning /data/mp3 ... file not found.

 * /mnt/dvd is not mounted in filesystem. Trying to mount ...
 * /mnt/dvd could not be mounted.
 * Exiting from previous errors (IGNORE_MOUNT_FAIL)


 * Requested file is not in distfiles overlay.
 * Fetching file from original URI
   http://gentoo.osuosl.org/distfiles/whois_4.6.6.tar.gz

....
sowie auszugsweise meine /etc/make.conf:

Code: Select all

DISTDIRS="/data/mp3:/mnt/dvd:/mnt/burn:/mnt/dist"

#FETCHCOMMAND='/usr/bin/wget --waitretry=5 -O ${DISTDIR}/${FILE} ${URI}'
FETCHCOMMAND='/usr/local/bin/dist_overlay.sh --search ${URI}'

DIST_FETCH="/usr/bin/wget -t 1 --waitretry=5 --passive-ftp -O ${DISTDIR}/${FILE} ${URI}"

DIST_CHECK_MOUNT=true

DIST_DEEPSCAN=true
lecker oder? ;)

allerdings gefällt mir

Code: Select all

# download distfile
function download_distfile {
   file_uri="$1"
   file_name="$2"
   ${DIST_FETCH} -O ${DISTDIR}/$file_name $file_uri
}
nicht so ganz denn eigentlich gehört das nach oben in die einstellungen, ist aber ohne $file_uri nicht möglich .. any ideas? (nicht nur sarahb *g*)
Last edited by equinox0r on Tue Sep 21, 2004 2:05 am, edited 1 time in total.
AMD 2400+ XP | 1024 MB RAM | ATI Radeon 9600Pro
Gentoo Base System version 1.4.16 | Portage 2.0.51.19 | 2.6.11-gentoo-r9 Kernel
Top
equinox0r
l33t
l33t
User avatar
Posts: 614
Joined: Wed Feb 18, 2004 12:39 am
Contact:
Contact equinox0r
Website

  • Quote

Post by equinox0r » Tue Sep 21, 2004 2:04 am

*argl* .. ich hab zuviel zeit und nix zu tun ;)

noch eine neue version draussen ... dist_overlay 0.3.1 released (und nebenbei bin ich auch noch Guru geworden) :D
clean mode wurde etwas verbessert....

EDIT (Di Sep 21 23:17:43 CEST 2004):
- Codeoptimierung function download_distfile
- Release final version 0.3.2

EDIT (Sa Jan 04:45:22 CEST 2005):
- Neues Release 0.3.3
- several bugfixes

aktuelle Version herunterladen
http://lichtspiele.org/~equinox/dist_overlay/

und natürlich etwas ausgabe :)

Code: Select all

[04:01:13] [root@dude.zion]
[~] $ dist_overlay.sh --clean
   DISToverlay

   Cleaning up dead links in /usr/portage/distfiles...
 * Deleting symlink whois... Sure? (y|n) y
 * Deleting symlink whoisficken... Sure? (y|n) y
Nothing left to do; exiting.
@sarah und alle die sich ältere versionen aufgehoben haben ...
könnt ihr mir was ihr noch habt bitte schicken? ich hab nicht mehr alle (vor allem deine init version sarah) und wollte das mal alles gesammelt online stellen .. merci :)
Last edited by equinox0r on Sat Jan 08, 2005 3:47 am, edited 6 times in total.
AMD 2400+ XP | 1024 MB RAM | ATI Radeon 9600Pro
Gentoo Base System version 1.4.16 | Portage 2.0.51.19 | 2.6.11-gentoo-r9 Kernel
Top
sarahb523
Guru
Guru
Posts: 423
Joined: Wed Mar 10, 2004 10:25 am
Location: Berlin

  • Quote

Post by sarahb523 » Tue Sep 21, 2004 9:53 am

he das script wird ja immer genialer. Alte versionen (bis auf die die ich hier gepostet habe) hab ich leider nicht. Dien ursprungsversion läßt sich sicher herstellen.

die aktuelle version hat aber noch einen kleinen schönheitsfehler. Wenn deltup verwendet wird, wird dem deltup script auch die wget option -O mitgegeben. dieses führt natürlich zu einem fehler. Ich habe bei mir die option herrausgenommen. Wozu brauchen wir die überhaupt? das deltup script benutzt die option intern auch nicht (von dort hab ich übrigends die wget zeile)
AMD Sempron 2400+ / 1GB RAM / NVidia Geforce 5200FX /
Kernel 2.6.31-gentoo-r4 / kde 4.3
Top
equinox0r
l33t
l33t
User avatar
Posts: 614
Joined: Wed Feb 18, 2004 12:39 am
Contact:
Contact equinox0r
Website

  • Quote

Post by equinox0r » Tue Sep 21, 2004 5:07 pm

von mir aus kann das auch -O auch wieder raus, allerdings weiss ich nicht, ob das distfile dann auch wirklich nach $DISTDIR heruntergeladen wird... müsste ich ma ausprobieren ;)

oder die andere möglichkeit dass DIST_FETCH in der make.conf stehen muss, dann haben wir keine probleme mehr :twisted:


mein lieblingsfähnrich (harry kim) hat übrigens mal gesagt dass ein gutes programm nicht durch zu viele parameter verschlechtert werden sollte ... in diesem zusammenhang würde ich dann gerne die final releasen wollen, ausserdem wäre ein eintrag in http://forums.gentoo.org/viewtopic.php?t=67849 bestimmt sinnvoll ... die ehre überlass ich dir sarah, ist schliesslich "dein" script ;)
AMD 2400+ XP | 1024 MB RAM | ATI Radeon 9600Pro
Gentoo Base System version 1.4.16 | Portage 2.0.51.19 | 2.6.11-gentoo-r9 Kernel
Top
equinox0r
l33t
l33t
User avatar
Posts: 614
Joined: Wed Feb 18, 2004 12:39 am
Contact:
Contact equinox0r
Website

  • Quote

Post by equinox0r » Mon Nov 22, 2004 11:53 pm

sooodele :)
mal was neues von hier:

Zu finden gibt es das Script künftig 2mal hier im Forum:
http://forums.gentoo.org/viewtopic.php?p=1561711
http://forums.gentoo.org/viewtopic.php?t=67849

und unter:
http://www.lichtspiele.org/~equinox/dist_overlay

wir hoffen dass das jemand von euch noch benutzt ;)
AMD 2400+ XP | 1024 MB RAM | ATI Radeon 9600Pro
Gentoo Base System version 1.4.16 | Portage 2.0.51.19 | 2.6.11-gentoo-r9 Kernel
Top
Rawk
n00b
n00b
Posts: 44
Joined: Sun Dec 21, 2003 8:44 pm

  • Quote

Post by Rawk » Tue Jan 04, 2005 5:03 pm

Vielen Dank für das nette Script. :)
Zwei Dinge sind mir aufgefallen:
- in DISTDIRS muss ein : stehen, auch wenn nur ein Verzeichnis eingetragen ist.
- in DIST_FETCH mit wget sollte man "-P ${DISTDIR}" ergänzen, damit die Datei auch im richtigen Ordner landet. Hatte mich erst gewundert warum, die Datei immer wieder runtergeladen wird, bis ich gemerkt hab, dass sie im aktuellen Verzeichnis gelandet ist. ;)
Top
Rawk
n00b
n00b
Posts: 44
Joined: Sun Dec 21, 2003 8:44 pm

  • Quote

Post by Rawk » Tue Jan 04, 2005 7:45 pm

Code: Select all

if  ${DIST_COPY} ; then 
lief bei mir nicht; habs dann mal in

Code: Select all

if [ ${DIST_COPY} ]; then
geändert und

Code: Select all

DIST_COPY=true
gesetzt.
Außerdem funktioniert deepscan nicht, da beim Aufruf von get_distfile $NEW_FILE und $DIR übergeben werden und $DIR einen Pfad aus $DISTDIRS enthält ohne den/die Unterordner. Ich hab mich dann mal versucht (obwohl ich (bisher) keine Ahnung vom shell scripting hab ;)) und das ist dabei herausgekommen:

Code: Select all

 
# DIST_DEEPSCAN for searching in subdirectories 
       if ( ${DIST_DEEPSCAN} ); then 
          DIST_FIND_RESULT=`find "$DIR" ${DIST_DEEPSCAN_OPTS} -name "$NEW_FILE"` 
        if [ -n "$DIST_FIND_RESULT"  ]; then 
           LENGTH1=`expr length "$DIST_FIND_RESULT"`
           LENGTH2=`expr length "$NEW_FILE"`
           LENGTH=`expr $LENGTH1 - $LENGTH2`
           LENGTH=`expr $LENGTH - 1`
           DIR=`echo $DIST_FIND_RESULT | cut -c -$LENGTH`
           get_distfile $NEW_FILE $DIR 
        fi
Ist vielleicht nicht die beste Möglichkeit, aber es funktioniert. ;)
Top
equinox0r
l33t
l33t
User avatar
Posts: 614
Joined: Wed Feb 18, 2004 12:39 am
Contact:
Contact equinox0r
Website

  • Quote

Post by equinox0r » Sat Jan 08, 2005 3:44 am

hallöle .. mal wieder was neues:

release v. 0.3.3
+echo $DISTDIRS | grep : > /dev/null || break
in function scan
--info parameter hinzugefügt
raus aus der endlosschleife wenn DISTDIRS kein : im string hat.

@Rawk: den von dir beschriebenen Fehler hab ich nur teilweise feststellen können.
die variablen $NEW_FILE und $DIR sind durchaus richtig gesetzt, in $NEW_FILE steht der dateiname der gefundenen datei, in $DIR das verzeichnis zur datei.
allerdings hattest du recht:

Code: Select all

if [ ${DIST_COPY} ]; then
muss richtig sein, danke dafür, hab ich gleich mitgefixed für das neue release. :)

die jew. aktuelle version findet ihr übrigens unter http://lichtspiele.org/~equinox/dist_overlay

bis denn :)

ps: sarah, wenn du das hier mal lesen solltest: nimmst du bitte auch deine alten codeschnipsel raus (falls vorhanden) und anstelle davon nen verweis auf die url. thx :)
AMD 2400+ XP | 1024 MB RAM | ATI Radeon 9600Pro
Gentoo Base System version 1.4.16 | Portage 2.0.51.19 | 2.6.11-gentoo-r9 Kernel
Top
d4rkn0va
n00b
n00b
User avatar
Posts: 22
Joined: Fri Jan 07, 2005 4:36 pm

  • Quote

Post by d4rkn0va » Sat Jan 08, 2005 6:09 pm

Ich versteh selbst nicht ganz wieso, aber auf jeden Fall kopiert das Script bei mir trotz DIST_COPY=false jede der gefundenen Dateien aus den anderen Verzeichnissen nach /usr/portage/distfiles.

Vll hat ja jemand noch diesen Fehler, bin irgendwie langsam am verzweifeln was ich noch machn koennte.

Nachtrag:
Die kritische Stelle sollte jawohl diese hier sein, scheint mir aber alles in Ordnung, trotzdem krieg ich das Mistding echt nicht zum linken!

Code: Select all

   if [ ${DIST_COPY} ]; then
      write_log "(COPY) $1 ($DISTDIR)"
      echo -e "${GREEN} * ${NORMAL} copy file to distfiles\n\n"
      cp $2/$1 $DISTDIR
   else
      write_log "(SYMLINK) $1 ($DISTDIR -> $2)"
      echo -e "${GREEN} * ${NORMAL} make a link from distfiles to file\n\n"
      ln -sf $2/$1 $DISTDIR/$1
   fi

Nachtrag 2:
Selbst wenn ich das Script dazu zwinge, mir nen link zu machen statt die Datei zu kopieren, bricht mir mein emerge mit einem Fehler bei einem chown aufgrund read-only ab, da die gelinkte Datei bei mir auf DVD liegt.

Manuelles chown :portage funktioniert aber.

Sind das alles Fehler meinerseits oder sind diese Fehler sonst auch bekannt?
Top
Rawk
n00b
n00b
Posts: 44
Joined: Sun Dec 21, 2003 8:44 pm

  • Quote

Post by Rawk » Sun Jan 09, 2005 8:51 pm

Es muss wohl

Code: Select all

if ( ${DIST_COPY} ); then
sein...

Das mit dem read-only ist bei mir auch aufgetreten (nfs). Wenn man dann nochmal emerge xyz macht gehts. Aber soweit ich das beurteilen kann liegt das an Portage und nicht an dem Script...
Top
Pette
n00b
n00b
Posts: 46
Joined: Sat Feb 14, 2004 12:48 pm
Location: Hamburg / Germany

  • Quote

Post by Pette » Wed Jan 19, 2005 11:24 am

Hallo.

Ich bin hellauf begeistert von diesem tollen Skript!

Hab dennoch 2 Fragen/Anmerkungen:

1) Mein eines Dist_Overlay Verzeichnis wird per NFS von meinem Desktop-PC auf meinen Laptop gemountet. Wenn ich nun mit dem Laptop an der Uni bin und dort "emerge -uf" ausführe, versucht er natürlich auch dieses Verzeichnis zu mounten. Und das kann mit unter Minuten dauern, bis er gerafft hat, dass das Verzeichnis nicht gemountet werden kann.
Kann man den mount-Prozess irgendwie beschleunigen? Gibts da nicht ne Art "timout" Funktion?
Wäre cool.

2) Wenn er eine Datei auf dem Desktop zuhause gefunden hat, macht er einen Link dorthin. Wunderbar. Jedoch bricht das Skript sofort danach mit Fehler-Meldungen ab. Ich glaube diese Fehlermeldungen stehen in Zusammenhang mit dem getdelta-Skript. Bin mir aber nicht sicher.
Ich werde die Fehlermeldung nachreichen, sobald ich zuhause bin.


Greetz,
Pette
Top
d4rkn0va
n00b
n00b
User avatar
Posts: 22
Joined: Fri Jan 07, 2005 4:36 pm

  • Quote

Post by d4rkn0va » Mon Jan 31, 2005 2:42 pm

Also, das mit dem Read-Only-Fehler ist garantiert ein "Fehler" in Portage, allerdings gibts da sicher auch nen Fix dafür, egal wie dirty er ist..

Morgen rüst ich hier 60 Rechner auf gentoo um, spätestens dann brauch ich das Script, hat irgendwer noch Vorschläge?
AMD AthlonXP 3000+ @ 2,4GHz | 1 GB DDR-RAM | 2x160GB Samsung SATA (SoftRAID0)
=> gentoo 2.6.14-r1 | gcc-4.0.1 | gnome-2.12 [ stage 1 on 3 ]
Top
Pette
n00b
n00b
Posts: 46
Joined: Sat Feb 14, 2004 12:48 pm
Location: Hamburg / Germany

  • Quote

Post by Pette » Wed Mar 23, 2005 7:20 pm

Hab gerade diesen Thread entdeckt:

HOWTO:Download Cache for your LAN-Http-Replicator (ver 3.0)

Hab mich noch nicht wirklich näher damit befasst, aber ist das nicht sowas in der Art wie DistOverlay?

Hat das hier schon jemand ausprobiert?


Greetz,
Pette
Top
Post Reply
  • Print view

41 posts
  • Previous
  • 1
  • 2

Return to “Deutsches Forum (German)”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic