Re: Ausgabeumleitung

2005-01-13 Diskussionsfäden Jan Trippler
Am Mittwoch, 12. Januar 2005 15:45 schrieb Heiko Schlittermann:
 ich wei, ich bin etwas spt dran, aber

  #!/bin/sh
 
  deinprogramm  logdatei  tail -n 10 logdatei  logdateikurz
  \  mv logdateikurz logdatei
  --

 deinprogramm | tail -10  logdatei

 sieht mir krzer aus und bedarf keiner Erklrung und sollte
 auch funktionieren.

Macht nicht das, was gewollt ist. Damit wird die Ausgabe von 
deinprogramm gekrzt, nicht die logdatei. logdatei enthlt dann  
keine Ausgaben von anderen Aufrufen mehr, egal wie lang die 
aktuelle Ausgabe ist.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Schwierigkeiten $PATH zu setzen

2005-01-13 Diskussionsfäden Jan Trippler
Am Donnerstag, 13. Januar 2005 19:49 schrieb Udo Jans:
 On Thu, 13 Jan 2005 17:35:34 +0100

 Andreas Pakulat [EMAIL PROTECTED] wrote:
[...]
  Was ist wenn du das mal direkt am Prompt machst? Also
  export PATH=$PATH:/usr/local/jre.../bin und danach java
  aufrufen?

 Das hatte funktioniert.

Der export ist wichtig, der muss auch in das Script rein. Sonst 
sehen geforkte Prozesse (zu denen alle von der Shell aus gestartete 
Programme gehören) die Variable nicht.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Rechteproblem - rekursives 644 mit Ausschluß der Verzeichnisse

2005-01-05 Diskussionsfäden Jan Trippler
Am Mittwoch, 5. Januar 2005 13:44 schrieb Nico Jochens:
 On Wed, Jan 05, 2005 at 01:58:35AM +0100, Thomas Jahns wrote:
[...]
  möchte also gerade nicht, das hinterher noch reguläre Datein
  mit irgendeinem x bit verbleiben.

 Ja, stimmt genau. Es hat auch nicht mit dem obigen Vorschlag
 geklappt, habe ich zwar geschrieben, stimmt aber nicht,
 tschuldigung.

 Ich verstehe nicht warum das mit chmod nicht geht. 

Weil es nicht implementiert ist - für solche Zwecke verknüpft man 
eben unter Linux Kommandos miteinander (wie schon gezeigt wurde) - 
z. B. mit find und xargs.

 Wozu ist dann das rekursiv da? 

Um eben _alles_ unter einem bestimmten Verzeichnis zu erwischen - 
ein Anwendungsbeispiel wäre z. B., im eigenen HOME allen 
Mitgliedern der Gruppe Schreibrechte einzuräumen.

 Natürlich geht es ganz einfach mit den Dateien 
 aber ich habe dann eben auch die Unterverzeichnisse auf 644 und
 somit natürlich keinen Zugriff mehr auf dieselben.

Dann nimm die Version mit find:
find . -type f -print0 | xargs -0 chmod 644

 schöne Grüße aus Hamburg,

dito aus Norderstedt :-)

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Editorkrieg '05 (war: Erbitte Empfehlungen für guten HTML-Editor für Console und X sowie Code und WYSIWYG)

2005-01-04 Diskussionsfäden Jan Trippler
Am Dienstag, 4. Januar 2005 22:31 schrieb Andreas Pakulat:
 On 04.Jan 2005 - 21:56:23, Thorsten Haude wrote:
[vi, emacs]
  beide stammen aber auch aus der Steinzeit. Darum haben beide so
  ungewöhnliche Bedienkonzepte, daß sie ein neuer
  Benutzer nur als bizarr beschreiben wird.

 Also für den vi gilt das allemal, der vim hat schon ein wenig
 gelernt und Emacs hat keine unterschiedlichen Editor-Modi. Da ist
 das Schlimmste gerademal die Tastenkombinationen herauszufinden.

Zum vi(m) ist noch anzumerken, dass er (wenn man die 
Ur-vi-Funktionen bedienen kann) auf  jedem mir bekannten 
Unix-System, ausschließlich mit dem alphanumerischen Tastenblock 
und ohne GUI einheitlich nutzbar ist. Das hat mir schon sehr oft 
geholfen und ist IMHO allein schon ein Grund, sich mit ihm 
anzufreunden.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: du

2005-01-03 Diskussionsfäden Jan Trippler
Am Montag, 3. Januar 2005 20:24 schrieb Klaus Becker:
 ich möchte wissen, wieviel Platz ein bestimmter Ordner +
 Unterordner einnehmen, und war nach Grösse geordnet.

Ich habe mal was gebastelt, was Dir vielleicht von Nutzen sein kann:
http://www.jan-trippler.de/progs/du_tree.html

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Links zu einer Datei finden

2004-12-17 Diskussionsfäden Jan Trippler
Am Freitag, 17. Dezember 2004 18:36 schrieb Andreas Pakulat:
 On 17.Dec 2004 - 18:09:15, Peter Wiersig wrote:
  On Fri, Dec 17, 2004 at 05:49:44PM +0100, Andreas Pakulat wrote:
   gibts ne Möglichkeit rauszukriegen ob Symlinks auf Datei X
   zeigen?
 
  if readlink symlink | grep --silent datei$
  then
  #Zeigt drauf
  fi

 Na ich wollte eigentlich ein iterieren über alle Symlinks in /dev
 vermeiden...

Schau Dir mal die Option -lname des find an.

Jan



Re: OT: bash - pattern matching

2004-12-01 Diskussionsfäden Jan Trippler
Am Mittwoch, 1. Dezember 2004 00:52 schrieb Rüdiger Noack:
 Jan Trippler schrieb:
  Am Dienstag, 30. November 2004 22:49 schrieb Rüdiger Noack:
 [EMAIL PROTECTED]:~$ ls -a | grep \.\?foo
 
  [EMAIL PROTECTED]:~/tmp/t ls -a | grep ^\.\?foo
 
  Siehst Du den Unterschied?
 
 Aber ich möchte auch nicht mit ls Namen ermitteln, dich ich an
 grep verfüttere, um sie danach wieder vielleicht wieder ls zu
 übergeben...

 Ich sehe den Unterschied. Hier:

 [EMAIL PROTECTED]:~$ ls -al | grep ^\.\?rno
 [EMAIL PROTECTED]:~$ ls -al | grep \.\?rno
 drwxr-xr-x  35 erno erno2048 2004-11-30 22:32 .
 ...

Darum steht ja bei mir auch _nicht_ ls -al sondern ls -a! Die regex 
funktioniert für den angegebenen Fall - bei einem -al muss man die 
eben anders aufbauen. grep macht nun mal einen reinen 
Textmustervergleich. Du nimmst die von mir vorgeschlagene Variante, 
änderst sie ab und behauptest dann, sie funktioniert nicht - 
logisch. Ich habe nicht behauptet, eine Universal-Lösung anbieten 
zu können - dazu waren Deine Angaben (u. a. zur Frage, _warum_ Du 
zwingend ein Muster haben wolltest oder was Du mit den Ergebnissen 
machen willst) aber auch nicht unbedingt aufschlussreich.

Abgesehen davon, dass mit der Variante von Pascal das Thema in 
diesem Fall einfach zu lösen ist (kannte ich noch gar nicht und 
wandert in mein Archiv) finde ich diese Art der Argumentation etwas 
merkwürdig.

EOT
Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: OT: bash - pattern matching

2004-11-30 Diskussionsfäden Jan Trippler
Am Dienstag, 30. November 2004 18:58 schrieb Rüdiger Noack:
 Andreas L. schrieb:
  Am Dienstag, 30. November 2004 10:44 schrieb Ruediger Noack:
 Mein Vorhaben scheint ziemlich simpel: Ich will alle Dateinamen
  treffen, die  mit einen bestimmten String beginnen treffen,
  die aber zusätzlich noch einen vorangestellten '.' haben
  können, also z.B. foo* und .foo*.
 
  ganz simpel ls mit 2 pattern füttern, also:
 
  $ ls .foo* foo*

 Ja, für diesen speziellen Fall wäre das ok. Ich habe aber das
 Problem zum besseren Verständnis darauf heruntergebrochen. Ich
 möchte schon genau ein Muster formulieren, dass auf o.g.
 Anforderung matched.

Geht IMHO mit Shell-Pattern nicht. Wenn Du unbedingt _ein_ 
Suchmuster haben willst (warum eigentlich?) dann musst Du regex 
bemühen, z. B. so:
[EMAIL PROTECTED]:~/tmp/t touch foobar .foo
[EMAIL PROTECTED]:~/tmp/t ls -a
.  ..  .foo  foobar
[EMAIL PROTECTED]:~/tmp/t ls -a | grep ^\.\?foo
.foo
foobar

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: OT: bash - pattern matching

2004-11-30 Diskussionsfäden Jan Trippler
Am Dienstag, 30. November 2004 22:49 schrieb Rüdiger Noack:
 Jan Trippler schrieb:
  Am Dienstag, 30. November 2004 18:58 schrieb Rüdiger Noack:
 Mein Vorhaben scheint ziemlich simpel: Ich will alle
  Dateinamen treffen, die  mit einen bestimmten String
  beginnen treffen, die aber zusätzlich noch einen
  vorangestellten '.' haben können, also z.B. foo* und .foo*.
 
  Geht IMHO mit Shell-Pattern nicht. Wenn Du unbedingt _ein_
  Suchmuster haben willst (warum eigentlich?)

 Wat mut dat mut ;-)

Hm, komische Begründung - ich fragte eher nach sachlichen Gründen.

  dann musst Du regex
  bemühen, z. B. so:
  [EMAIL PROTECTED]:~/tmp/t touch foobar .foo
  [EMAIL PROTECTED]:~/tmp/t ls -a
  .  ..  .foo  foobar
  [EMAIL PROTECTED]:~/tmp/t ls -a | grep ^\.\?foo
  .foo
  foobar

 Ich sehe nicht ein, dass shell pattern das nicht können sollen.
 Ganz davon abgesehen passen die REs nicht:

 ---  snip  
 [EMAIL PROTECTED]:~$ ls -a | grep \.\?foo
[...]

[EMAIL PROTECTED]:~/tmp/t ls -a | grep ^\.\?foo

Siehst Du den Unterschied?

 Aber ich möchte auch nicht mit ls Namen ermitteln, dich ich an
 grep verfüttere, um sie danach wieder vielleicht wieder ls zu
 übergeben...

Ja, das war ja genau meine Frage. Wozu brauchst Du das - und wieso 
muss es _ein_ Suchmuster sein?

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: script gesucht

2004-10-25 Diskussionsfäden Jan Trippler
Am Montag, 25. Oktober 2004 16:26 schrieb Matthias Houdek:
 Am Sonntag, 24. Oktober 2004 17:58 schrieb Andreas Pakulat:
  On 24.Oct 2004 - 15:28:01, Matthias Houdek wrote:
   Am Sonntag, 24. Oktober 2004 13:41 schrieb Andreas Pakulat:
On 24.Oct 2004 - 10:49:20, Matthias Houdek wrote:
Hast du das getestet? Das klappt naemlich nicht. Dabei wird
eine leere Datei erzeugt!
  
   Klappt bei mir wunderbar. Hab's gerade noch mal in die
   Kommandozeile kopiert - und es klappte wieder.
 
  In einer bash? In sid? Bei mir nicht. Man moege micht
  erleuchten:

 Bei mir läuft sarge. Dürfte aber egal sein.

_Kann_ laufen, muss aber nicht. Der Ansatz ist gefährlich (hängt 
AFAIK vor allem davon ab, wie groß die Buffer für Pipes usw. im 
System sind und ob der Filedescriptor für den read() noch offen 
ist, wenn der für write() aufgemacht wird).

Aber natürlich geht sowas mit der bash auch sauber (1 Zeile):
find . -type f -printf tail +2 \%p\ \%p.neu\  mv -i 
\%p.neu\ \%p\\n | sh

Einziges Ungemach: eine evtl. existierende Datei Dateiname.neu 
würde dazu führen, dass mv nachfragt, ob sie überschrieben werden 
soll (was man verhindern kann, wenn man statt %p.neu einen 
definitiv nicht existierenden konstanten Dateinamen - z. B. in /tmp 
- vergibt).

Und hier mal ein kleines Testszenario:
[EMAIL PROTECTED]:~/tmp/t mkdir a b c
[EMAIL PROTECTED]:~/tmp/t echo -e Zeile1\nZeile2\nZeile3 f
[EMAIL PROTECTED]:~/tmp/t cp f a/f leer
[EMAIL PROTECTED]:~/tmp/t cp f b/f tab
[EMAIL PROTECTED]:~/tmp/t cp f c/ü b e l
[EMAIL PROTECTED]:~/tmp/t for i in `seq 1 1000`; do echo zeile$i 
gross;done
[EMAIL PROTECTED]:~/tmp/t find . -type f -printf tail +2 \%p\ \%p.neu\ 
 mv \%p.neu\ \%p\\n | sh
[EMAIL PROTECTED]:~/tmp/t find . -type f -exec head \-n 1 {} \;
Zeile2
Zeile2
Zeile2
Zeile2
zeile2

Jan

P.S.: Matthias - David liest hier nicht mit, falsche Liste ;-)

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: datum anhaengen

2004-10-10 Diskussionsfäden Jan Trippler
Am Montag, 11. Oktober 2004 00:41 schrieb Jens Kasten:
 langsam komme ich auf den tar.bz geschmack.

 ich mache folgendes umd die webseiten zu sichern.
 tar -cjf meine_dateien-[das-datum].tar.bz /mnt/mein-archiv
 kann ich nun [das-datum] irgendwie ersetzten mit dem systemdatum.

Ja:
tar -cjf meine_dateien-`date +%Y-%m-%d`.tar.bz /mnt/mein-archiv

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org


-- 
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Leerzeichen in Dateinamen

2004-10-09 Diskussionsfäden Jan Trippler
Am Samstag, 9. Oktober 2004 23:11 schrieb Uwe Malzahn:
 Am Samstag, 9. Oktober 2004 21:45 schrieb Dirk Richter:
  for i in `ls *.jpg` ; do echo $i ; done
[...]
 for i in *.jpg ; do echo $i ; done
 /tmp$ ls *.jpg
 bar.jpg  foo bar.jpg  foo.jpg
 /tmp$ for i in *.jpg ; do echo $i ; done
 bar.jpg
 foo bar.jpg
 foo.jpg

Das ist nicht das Gleiche:
[EMAIL PROTECTED]:~/tmp/leer touch a b c.jpg a  b  c.jpg
[EMAIL PROTECTED]:~/tmp/leer ls -l
insgesamt 0
-rw-r--r--  1 jan users 0 2004-10-10 01:29 a  b  c.jpg
-rw-r--r--  1 jan users 0 2004-10-10 01:29 a b c.jpg
[EMAIL PROTECTED]:~/tmp/leer for i in *.JPG; do echo $i; done
*.JPG
[EMAIL PROTECTED]:~/tmp/leer for i in `ls *.JPG`; do echo $i; done
/bin/ls: *.JPG: Datei oder Verzeichnis nicht gefunden

Und noch was: Vorsicht mit ungequoteten Argumenten:
[EMAIL PROTECTED]:~/tmp/leer for i in *.jpg; do echo $i; done
a b c.jpg
a b c.jpg
[EMAIL PROTECTED]:~/tmp/leer for i in *.jpg; do echo $i; done
a  b  c.jpg
a b c.jpg

Mit folgender Variante klappt es auch mit Leerzeichen:
[EMAIL PROTECTED]:~/tmp/leer ls *.jpg | while read i; do echo $i; done
a  b  c.jpg
a b c.jpg
[EMAIL PROTECTED]:~/tmp/leer ls *.JPG | while read i; do echo $i; done
/bin/ls: *.JPG: Datei oder Verzeichnis nicht gefunden

Der Nachteil ist hier, dass die Schleife in einer Subshell abläuft 
(also innerhalb der Schleife gesetzte Variablen aussen nicht  
sichtbar sind):
[EMAIL PROTECTED]:~/tmp/leer f=xyz
[EMAIL PROTECTED]:~/tmp/leer ls *.jpg | while read i; do f=$i; done
[EMAIL PROTECTED]:~/tmp/leer echo $f
xyz

Will man das umgehen, dann greift man doch wieder auf die 
for-Schleife zurück und stellt in der Schleife sicher, dass es 
tatsächlich Dateien gibt:
[EMAIL PROTECTED]:~/tmp/leer for i in *.JPG; do test -f $i || break; echo 
$i; done

Jan

P.S.: Die Intelligenz der for-Schleife ist nicht kompatibel zu 
anderen Shells.

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Leerzeichen in Dateinamen

2004-10-09 Diskussionsfäden Jan Trippler
Am Samstag, 9. Oktober 2004 22:59 schrieb Christoph Conrad:
  for i in `ls *.jpg` ; do echo $i ; done

 Bisschen anders, aber sinngemäß:

 find . -name '*.jpg' -print | while read file; do echo $file;
 done

Nein, das ist nicht sinngemäß. find sucht rekursiv, findet also 
auch .jpg-Dateien in Unterverzeichnissen. Um sinngemäß zu bleiben, 
sollte zumindest noch ein -maxdepth 1 ergänzt werden:
find . -name '*.jpg' -maxdepth 1 -print | while read file; do echo 
$file;
done

Und mit der while-Schleife brauchst Du den find gar nicht. Nimm 
stattdessen den ls, dann hast Du das gleiche Ergebnis.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: zweigeteilte Ausgabe

2004-09-29 Diskussionsfäden Jan Trippler
Am Mittwoch, 29. September 2004 19:06 schrieb Werner Gast:
 wenn ich in der Konsole ein Programm starte und die Ausgabe  in
 eine Ausgabedatei umleite, stehen die guten Erfolgsmedlungen in
 der Datei. Aber die Fehler bekomme ich nach wie vor nur auf die
 Konsole. Beispiel: make  make.errors
 Wie kriege ich die Fehlermeldungen auch in eine Datei umgeleitet?

Indem Du die Fehlerausgaben eben auch umleitest:
make make.log 2make.errors

oder wenn Du beide Ausgaben in einer Datei haben willst:
make make.log 21

Nhere Ausknfte erteilt man bash, Abschnitt REDIRECTION.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: zweigeteilte Ausgabe

2004-09-29 Diskussionsfäden Jan Trippler
Am Mittwoch, 29. September 2004 22:33 schrieb Werner Gast:
[...]
 Ich starte meinen Rechner und gehe mit [Ctrl] [Alt] [F1] auf die
 Konsole. Ich kann auch in gnome eine Konsole aufmachen. Dann
 kommt die Ausgabe aber nicht in dem gnome-Terminal, sondern auf
 tty1. Auch wenn ich mich mit ssh von einem Fremdrechner aus
 remote einlogge habe ich die Ausgabe auf tty1.

Kann es sein, dass Dein Script Ausgaben direkt nach tty1 schickt? 
Dann funktioniert natürlich die normale Ausgabeumleitung nicht.
Was steht denn in dem Script drin?

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: find und tar

2004-09-28 Diskussionsfäden Jan Trippler
Am Dienstag, 28. September 2004 21:14 schrieb Mario Duve:
 folgendes möchte ich erreichen.

 finde in /dir alle Verzeichnisse /xxx und mache dann ein .tar
 file von jedem xxx Verzeichniss.

 müsste ja dann ungefähr so aussehen:
 find /dir -type d -name xxx -exec tar ??? wie nun weiter ?

Für jedes Verzeichnis ein eigenes tar-File?
z. B. so (nähere Infos zu den printf-Optionen liefert man find):
find /dir -name xxx -printf tar cf %f_%i.tar %p\n | sh

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Unauffindbare Dateien...

2004-09-08 Diskussionsfäden Jan Trippler
Am Mittwoch, 8. September 2004 08:45 schrieb Andreas Schmidt:
 On 2004.09.08 06:43, Sven Denkert wrote:
  locate 7586.jpg eventuell vorher ein updatedb

 Hab ich zwischenzeitlich auch schon versucht, in diversen
 Varianten (ganzer Name, nur Anfang, um Typos auszuschliessen...)
 Bringt leider auch nichts.

updatedb macht ja auch nur einen find und baut damit einen Index 
auf.

 Wenn ich es recht ueberdenke, wird das ganze wohl dadurch
 kompliziert, dass es sich bei den unauffindbaren Dateien um
 Bilder handeln muss, die ich nicht explizit gespeichert habe,
 sondern aus galeon heraus geoeffnet habe, weil man dort nur Text
 zoomen kann und die Bilder bei 1600x1200 haeufig so winzig sind,
 dass man Text in den Bildern ohne Lupe nicht mehr erkennen kann.
 :-) Aber auch im Cache von Galeon bzw. unter /tmp werde ich nicht
 fuendig.

Dann versuch mal, noch etwas unschärfer zu suchen:
find / -iname '*75*.jpg*' -print

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Zweiten root-user einrichten

2004-09-07 Diskussionsfäden Jan Trippler
Am Dienstag, 7. September 2004 18:19 schrieb schnfeld / 
in-medias-res:
 Beachten musst du allerdings nicht so viel:
  ~ # grep root /etc/passwd | sed -e 's/root/admin/'
 admin:x:0:0:root:/root:/bin/bash
 
   ~ # grep root /etc/passwd | sed -e 's/root/admin/' 
   /etc/paswd

 grep sucht nacht Zeilen die auf ein bestimmtes Muster zutreffen,
 sed ersetzt ein Muster durch was anderes, also gilt hier:

 - Zeile aus der /etc/passwd raussuchen die root enthlt (besser
 wre jedoch Zeilen rauszusuchen die mit root anfangen - grep
 ^root) - In der gefundenen Zeile ersten Match auf den das Muster
 'root' zutrifft durch admin ersetzen

Wie wre es mit
getent passwd root | sed ...
?

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: RegEx Frage...

2004-08-29 Diskussionsfäden Jan Trippler
Am Sonntag, 29. August 2004 19:42 schrieb Michelle Konzack:
 also ich bentige den Teilstring einer Befehlsausgabe:

 Original:

  19:36:03 up
  ^
 Das will ich...
 Nun habe ich

 uptime |sed s/^.*up\ //

 gemacht und bekomme schon mal

 6 days,  2:00,  7 users,  load average: 0.05, 0.07, 0.05

 aber wie werde ich jetzt den schwanz ab dem zweiten Komma los ?

uptime | sed 's/^.*up \([^,]*,[^,]*\),.*$/\1/'

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Neues Forum Linux-Dediziert.de

2004-08-06 Diskussionsfäden Jan Trippler
Am Freitag, 6. August 2004 12:12 schrieb Bjoern Schmidt:
 Patrick Schoenfeld wrote:
  nu Leute - nun habt euch mal nicht so, weil mal jemand die
  Initiative ergreift und die Vielfältigkeit, die gerade die Open
  Source Bewegung beinhaltet, um ein weiteres Support-Angebot für
  weniger Ahnungslose ergänzt. Als Werbung kann ich das nun
  wirklich nicht ansehen,

 Wenn ich was wissen will, frage ich danach. Genau dafür ist diese
 Liste da. Es soll nicht jeder seinen unangeforderten Sch***
 (=Werbung) an diese Liste senden (dürfen).

Dann verbannen wir am besten noch jegliche Links auf Google oder 
andere Hilfequellen im Netz von der Liste - ist ja auch nur 
Werbung. Und - btw - _jeder_ der hier eine Frage oder Bemerkung 
postet (u. a. zu den vielen OT-Themen hier), sendet sie 
unangefordert hierher, so funktioniert nun mal eine ML. 

sarkasmus status=on
Da hat jemand sich die Unverschämtheit erlaubt, ein weiteres offenes 
Hilfeforum aufzumachen - wahrscheinlich in seiner Freizeit und aus 
dem Bedürfnis heraus, anderen helfen zu können - pfui! Und dann hat 
er noch die Frechheit besessen, das hier als Supportmöglichkeit 
anzubieten. Sowas muss natürlich öffentlich gebrandmarkt und 
unflätig beschimpft werden, jawoll!
sarkasmus status=on

  Außerdem wäre es schön, wenn die Leute hier nicht immer so
  schroff reagieren würden, denn die Mail des Ursprungsposters
  war nicht so unflätlich, wie diverse Antworten.

 Ein bestimmter Ton kann den Lerneffekt ungemein erhöhen.

Dein (nicht bestimmter, sondern ungehobelter) Ton erhöht höchstens 
die Anzahl meiner Filtereinträge. Gehst Du im RL auch so mit 
anderen Leuten um, deren Meinung Dir nicht gefällt?

 --
 Mit freundlichen Gruessen

_Das_ bezweifle ich.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Neues Forum Linux-Dediziert.de

2004-08-06 Diskussionsfäden Jan Trippler
Am Freitag, 6. August 2004 22:43 schrieb Bjoern Schmidt:
[...]
 Eigentlich hatte hier stehen sollen dass ich nichts gegen Thomas'
 Werbung habe da sie gemäß Richtlinie erlaubt ist. Sch**
 CutPaste. Wenn ich es anders gemeint hätte würdest Du einen
 direkten Bezug zu seiner Mail finden.

Du hast aber in Bezug auf seine Mail geantwortet - da liegt es ja 
wohl nahe, dass ich das auch thematisch so einordne.

  Dann verbannen wir am besten noch jegliche Links auf Google
  oder andere Hilfequellen im Netz von der Liste - ist ja auch
  nur Werbung. Und - btw - _jeder_ der hier eine Frage oder
  Bemerkung postet (u. a. zu den vielen OT-Themen hier), sendet
  sie unangefordert hierher, so funktioniert nun mal eine ML.

 Es kommt auf den Inhalt der Mail an. Thomas' Mail ist ok, Mails
 in denen Kühlschränke verkauft werden sollen oder die einen nach
 Suse verweisen nicht ;)

Oho - Deinen Smiley mal außen vor gelassen - diese *Toleranz* finde 
ich immer wieder erschreckend  (in Bezug auf SuSE, nicht auf die 
Kühlschränke).

  sarkasmus status=on
  Da hat jemand sich die Unverschämtheit erlaubt, ein weiteres
  offenes Hilfeforum aufzumachen - wahrscheinlich in seiner
  Freizeit und aus dem Bedürfnis heraus, anderen helfen zu können
  - pfui! Und dann hat er noch die Frechheit besessen, das hier
  als Supportmöglichkeit anzubieten. Sowas muss natürlich
  öffentlich gebrandmarkt und unflätig beschimpft werden, jawoll!

 Ich finde in meiner Mail keine Stelle an der ich das gefordert
 habe...

Wenn das Sch***-Wort auftaucht, dann empfinde ich das als unflätig. 
Und Du hast seine Werbung beschimpft.

[...]
 Ein bestimmter Ton kann den Lerneffekt ungemein erhöhen.

 Das ist nunmal so.

Nein, das ist nicht so. Das kann man immer auch in normalem Ton 
ausdrücken - wenn es sein muss per PM.

  Dein (nicht bestimmter, sondern ungehobelter) Ton erhöht
  höchstens die Anzahl meiner Filtereinträge.

 Deine Filtereinträge interessieren mich genauso wenig wie die
 Anzahl eingehender Spammails anderer User der Liste. Persönlich
 werden mußt Du hier auch nicht.

Hä? Ich habe meine Meinung zum Ausdruck gebracht (da steht 
ausdrücklich: _meiner_ Filtereinträge) - ob Dich das interessiert, 
interessiert mich nicht. Vielleicht andere - ich habe einfach mal 
unaufgefordert meine Meinung gepostet.

  Gehst Du im RL auch so mit
  anderen Leuten um, deren Meinung Dir nicht gefällt?

 Wenn es so wäre, was ginge Dich das an?

Bitte vielmals um Entschuldigung, erhabener Bjoern. Ich verstehe nur 
einfach nicht, dass manche in der scheinbaren Anonymität einer 
Liste mit anderen auf eine Art und Weise umgehen, die man sich von 
Angesicht zu Angesicht 3x überlegt. Aber Du hast Recht - es geht 
mich nichts an. Im RL kann ich mir die Leute aussuchen, mit denen 
ich verkehre - hier glücklicherweise auch.

 Mit freundlichen Gruessen
 
  _Das_ bezweifle ich.

 Das steht da nicht nur weil es gut aussieht.

Aha.

bye
Jan

EOT

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Pipes und Fallunterscheidungen

2004-08-02 Diskussionsfäden Jan Trippler
Am Samstag, 31. Juli 2004 15:43 schrieb Michael Hierweck:
 ich habe das Problem, dass ich abhängig von einer Unterscheidung
 zwei Aktionen durchführen möchte. Da ganze läuft im Rahmen einer
 Pipe ab.

 program1 |((decision  action1) || action2) |program2

 decision, action1 und action2 müssen die Ausgabe von program1
 lesen. Die Ausgabe von action1 oder action2 muss an program2
 durchgereicht werden.

 Leider kann decision die Daten nicht durchreichen, d.h. auf
 stdout ausgeben.

Hm, es wäre eigentlich schön gewesen wenn Du dazu mal ein Beispiel 
gebracht hättest. Dann wäre die Diskussion nicht so abstrakt ;-)

 In der obigen Notation erreicht die Ausgabe von program1 die
 programme action1 bzw. action2 leider nicht.

Ja, kann sie auch nicht - sie wird ja an decision weitergereicht, 
was sie seinerseits nicht verteilen mag.

 Wie kann man das formulieren?

Eine Lösung wäre eine temp. Datei. Ich konstruiere mir mal ein 
Beispiel (eine Zeile):

[EMAIL PROTECTED]:~getent passwd jan | tee jt.tmp | ( grep -q jan  cut -f1 
-d: jt.tmp || cut -f7 -d: jt.tmp ) | nl; rm jt.tmp
 1  jan
[EMAIL PROTECTED]:~getent passwd jan | tee jt.tmp | ( grep -q jana  cut 
-f1 -d: jt.tmp || cut -f7 -d: jt.tmp ) | nl; rm jt.tmp
 1  /bin/bash

getent liest den Eintrag mit meinem Login-Namen aus der passwd und 
liefert die komplette Zeile zurück (program1). tee forkt die 
Ausgabe einmal nach stdout (und damit in die Pipe) und einmal in 
eine temp. Datei. grep sucht nach dem Suchmuster jan  oder 
jana (decision), die Option -q verhindert, dass was auf stdout 
ankommt. Je nach Resultat wird Feld 1 (action1) oder Feld 7 
(action2) aus der Zeile ausgeschnippelt, nl übernimmt den Part von 
program2, rm räumt auf.

hth
Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Pipes und Fallunterscheidungen

2004-08-02 Diskussionsfäden Jan Trippler
Am Dienstag, 3. August 2004 01:15 schrieb Jan Trippler:
[...]
 Eine Lösung wäre eine temp. Datei. Ich konstruiere mir mal ein
 Beispiel (eine Zeile):

 [EMAIL PROTECTED]:~getent passwd jan | tee jt.tmp | ( grep -q jan  cut
 -f1 -d: jt.tmp || cut -f7 -d: jt.tmp ) | nl; rm jt.tmp
  1  jan
 [EMAIL PROTECTED]:~getent passwd jan | tee jt.tmp | ( grep -q jana  cut
 -f1 -d: jt.tmp || cut -f7 -d: jt.tmp ) | nl; rm jt.tmp
  1  /bin/bash

Zusatz: Was ich nicht getestet habe, ist das Verhalten bei großen 
Dateien / großen Datenmengen, die durch die Pipes marschieren. Kann 
sein, dass dann decision zu früh zurückkommt und action1/2 startet 
bevor die temp. Datei komplett ist.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org
TTS-HowTo: https://ssl.pingos.org/pingos/intern/ttshowto/rt.html



Re: Nutzergruppe umbenennen

2004-07-17 Diskussionsfäden Jan Trippler
Am Freitag, 16. Juli 2004 23:07 schrieb Horst Pflugstaedt:
 On Fri, Jul 16, 2004 at 10:03:52PM +0200, Jan Trippler wrote:
  Am Freitag, 16. Juli 2004 21:06 schrieb Thomas Templin:
   Bei Debian nicht.
   Da richtest du eine Gruppe ein, z.b. grafiker, und nur die
   Mitglieder dieser Gruppe haben auch zugriff.
 
  Das musst Du aber als root machen - den chmod auf Deine Dateien
  kannst Du als Benutzer machen und demzufolge selber steuern,
  wer welche Rechte auf Deine Dateien hat.

 Klar mußt Du das als Root machen. Dein Problem wirkt konstruiert.

Auf mich nicht - so arbeitet Unix seit 1970. Ich kenne kein anderes 
*nix oder *nux, das für jeden Benutzer per Default eine neue Gruppe 
anlegt.

 Wenn du nur wenige Benutzer auf Deinem System hast, gehören
 wahrscheinlich alle der Gruppe users an (bei SUSE). Dann gibst du
 deine Dateien auch für alle frei.
 Wenn in deinem System viele (tm) Nutzer sind, gehörst Du
 wahrscheinlich mehreren Gruppen an und willst nur einer Deine
 Datei zur Verfügung stellen. Da das normalerweise nicht deine
 Standard-Gruppe (users) ist, brauchst du wiederum eine Krücke.

Ist newgrp eine Krücke?

 Ich halte für unterschiedliche Gruppen jeweils gemeinsame
 Verzeichnisse für sinnvoll; wenn das Sticky-Bit gesetzt ist, wird
 auch die Gruppenzugehörigkeit der einzelnen Dateien passend
 gesetzt.

Das ist _eine_ Möglichkeit - die andere wird mir von Debian (und 
AFAIK _nur_ von Debian) erstmal verbaut.

[...]
 Im Defaultfall ist das bei SuSE genauso, da _jeder_ user 'users'
 als Hauptgruppe hat. So what?

Nein, eben nicht - was ich schon die ganze Zeit erzähle. Nur die 
normalen Benutzer - nicht die ganzen nobody, ftp, anonymous, ... 
Das ist für mich schon ein Unterschied.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Nutzergruppe umbenennen

2004-07-17 Diskussionsfäden Jan Trippler
Am Freitag, 16. Juli 2004 23:45 schrieb Joerg Rieger:
 On Fri, Jul 16, 2004 at 11:17:22PM +0200, Jan Trippler wrote:
[...]
  Wenn ich in Debian Dateien anderen
  zugänglich machen will, dann muss ich sie tatsächlich für
  _alle_ (also other) freigeben - ich kann als Benutzer ja keine
  Gruppenzugehörigkeiten steuern. Das ist dann z. B. auch nobody,
  ftp, ... also wirklich

 Das ist falsch. Jeder Nutzer kann die Gruppe(n) in der er
 eingetragen ist, auch zuweisen:

OK, die Möglichkeit habe ich nicht ausprobiert - stimmt. So kann man 
es machen. Den Sinn des Debian-Defaults sehe ich aber immer noch 
nicht - meine Daten vor aller Welt schützen kann ich genauso gut 
per chmod / umask. Ich halte den Debian-Way nach wie vor für 
unpraktisch und überflüssig - er bringt IMHO nicht mehr Sicherheit 
sondern im Zweifelsfall eher weniger. Aber das ist dann schon mehr 
persönliche Meinung.

[...]
 Du kannst als normaler Benutzer ebenfalls chown, chgrp ausführen:

chown wohl eher nicht - oder? Und wenn, dann nur mit meinem 
Benutzernamen - dann ist es aber faktisch ein chgrp. Ich halte das 
durchaus für einen sinnvollen Mechanismus.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Nutzergruppe umbenennen

2004-07-16 Diskussionsfäden Jan Trippler
Am Freitag, 16. Juli 2004 12:58 schrieb Thomas Templin:
[...]
 Bei Debian GNU/Linux ist es die Vorgabe jeden Benutzer eine
 eigene Benutzergruppe zu zu ordnen.
 Anders als dies z.B. bei einer Suse Distribution üblich ist, dort
 gehören alle Benutzer der Gruppe users an.

 Für die Funktionalität hat es keine Auswirkungen welche der
 beiden Vorgaben verwendet werden.

Oh doch, in vielen Konstellationen schon. Wenn mehrere Benutzer in 
einer Gruppe sind, kann ich die Rechte zum Zugriff auf meine 
Dateien z. B. so steuern, dass die Leute in meiner Gruppe sie lesen 
können, andere aber nicht. Mit der Default-Einstellung von Debian 
geht das nicht - entweder ich gebe die Rechte für alle frei oder 
ich fange an, Leuten zusätzliche Gruppenzugehörigkeiten zu 
verpassen (was ich als User nicht darf). Welchen Sinn hat eine 
Gruppe, wenn sie 1:1 den Benutzer abbildet?

 Wenn du einmal ein ls -l auf eines der Programme im Verzeichnis
 /usr/bin oder /bin machst wirst du auch sehen warum das so ist.
 (c:

Wo ist da der Zusammenhang? Wenn kein S-Bit gesetzt ist, werden die 
Programme immer mit den Rechten des Benutzers (und seiner Gruppe!) 
ausgeführt - unabhängig vom Eigentümer der Programmdateien. Es sind 
nur die Rechte des Programms entscheidend - und da trifft für den 
normalen Benutzer in der Regel die Maske für Other zu.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Nutzergruppe umbenennen

2004-07-16 Diskussionsfäden Jan Trippler
Am Freitag, 16. Juli 2004 21:26 schrieb Michelle Konzack:
 Am 2004-07-16 19:39:15, schrieb Jan Trippler:
 Oh doch, in vielen Konstellationen schon. Wenn mehrere Benutzer
  in einer Gruppe sind, kann ich die Rechte zum Zugriff auf meine
  Dateien z. B. so steuern, dass die Leute in meiner Gruppe sie
  lesen knnen, andere aber nicht. Mit der Default-Einstellung
  von Debian

 Geht doch mit dem Debian System auch...

 addgroup neue_gruppe

[EMAIL PROTECTED]:~/tmp$ /usr/sbin/addgroup root
addgroup: Only root may add a user or group to the system.

 adduser a neue_gruppe
 adduser b neue_gruppe
 adduser c neue_gruppe

[EMAIL PROTECTED]:~/tmp$ /usr/sbin/adduser jan root
adduser: Only root may add a user or group to the system.

 chown root.neue.gruppe eine_datei

[EMAIL PROTECTED]:~/tmp$ chown root.root t
chown: changing ownership of `t': Operation not permitted

 chmod ... eine_datei

Klasse - und so einfach :-( Wenn ich das mit _richtigen_ Gruppen 
mache, dann reicht ein:
chmod nnn datei
Und vor allem (siehe meine Mail weiter unten) kann ich das als 
normaler Benutzer machen. Ich kann das sogar ber umask 
automatisieren.

 geht das nicht - entweder ich gebe die Rechte fr alle frei oder
 ich fange an, Leuten zustzliche Gruppenzugehrigkeiten zu
 verpassen (was ich als User nicht darf). Welchen Sinn hat eine

 Schon mal was vom groupadmin gehrt ?
 Lies mal die manpages.

[EMAIL PROTECTED]:~/tmp$ man groupadmin
No manual entry for groupadmin
pennywise:~# apt-get install groupadmin
Reading Package Lists... Done
Building Dependency Tree... Done
E: Couldn't find package groupadmin

Vielleicht liest Du die erstmal? (siehe oben)


 Gruppe, wenn sie 1:1 den Benutzer abbildet?

 Das Du andere $USER in diese gruppe aufnehmen kannst.

Das kann ich bei allen Gruppen - nur wenn ich gleich eine richtige 
Gruppe habe (im Sinne einer Gruppe, also einer Ansammlung von mehr 
als 1 Menschen), dann brauch ich das im normalen Betrieb gar nicht.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Nutzergruppe umbenennen

2004-07-16 Diskussionsfäden Jan Trippler
Am Freitag, 16. Juli 2004 21:06 schrieb Thomas Templin:
 On Friday 16 July 2004 19:39, Jan Trippler wrote:
  Oh doch, in vielen Konstellationen schon. Wenn mehrere Benutzer
  in einer Gruppe sind, kann ich die Rechte zum Zugriff auf meine
  Dateien z. B. so steuern, dass die Leute in meiner Gruppe sie
  lesen können, andere aber nicht. Mit der Default-Einstellung
  von Debian geht das nicht - entweder ich gebe die Rechte für
  alle frei oder ich fange an, Leuten zusätzliche
  Gruppenzugehörigkeiten zu verpassen (was ich als User nicht
  darf). Welchen Sinn hat eine Gruppe, wenn sie 1:1 den Benutzer
  abbildet?

 Siehst du, und das ist genau der Vorteil. (c:
 Wenn du eine generische Gruppe wie user nimmst dann haben alle
 Benutzer auf dem System die Zugriffsrechte.

Nein, die Benutzer der Gruppe user, nicht alle Benutzer. Die Gruppe 
in Debian ist sinnlos - genauso gut kannst Du einfach die umask auf 
066 setzen. Nochmal: in Unix haben Gruppen den Sinn, Zugriffsrechte 
differenziert nach Eigentümer, Gruppe und dem Rest der Welt setzen 
zu können - in der Debian-Standardeinstellung wird das auf 
Eigentümer - Rest der Welt reduziert. Darin sehe ich keinen Sinn.
Die Zugriffsrechte auf meine Dateien kann ich nämlich selbst regeln 
- Gruppenzugehörigkeiten nicht (aus gutem Grund).

 Bei Debian nicht.
 Da richtest du eine Gruppe ein, z.b. grafiker, und nur die
 Mitglieder dieser Gruppe haben auch zugriff.

Das musst Du aber als root machen - den chmod auf Deine Dateien 
kannst Du als Benutzer machen und demzufolge selber steuern, wer 
welche Rechte auf Deine Dateien hat.

 Wenn du nur einem bestimmten Kreis von Benutzern Zugriffsgrechte
 geben willst und nicht allen, das wäre ja Gruppe user, dann
 richtest du eine neue Gruppe ein. Egal ob SUSE oder Debian.

Oder Du gibst selektiv frei, welche Dateien privat sind und welche 
nicht. Das Problem bei Debian ist IMHO, dass Dir diese Möglichkeit 
im Defaultfall verwehrt ist - entweder nur du oder alle. 

[...]
  Wo ist da der Zusammenhang? Wenn kein S-Bit gesetzt ist, werden
  die Programme immer mit den Rechten des Benutzers (und seiner
  Gruppe!) ausgeführt - unabhängig vom Eigentümer der
  Programmdateien. Es sind nur die Rechte des Programms
  entscheidend - und da trifft für den normalen Benutzer in der
  Regel die Maske für Other zu.

 Stimmt.
 Aber wenn due einer Begrenzten Gruppe Zugriffsrechte auf ein
 gemeinsames Verzeichniss geben willst und andeen nicht dann musst
 du eine neue Gruppe anlegen.

Ja und? Was hat das mit den Programmen unter /bin oder /usr/bin zu 
tun?

 Es ist wie mit den Grupen audio und anderen die es bei Debian
 gibt. Erst wenn du einem User dieser Gruppe zugeordnet hast kann
 er z.B. Audio Geräte nutzen wie den Mixer.

Ja, das hat aber immer noch nichts mit den Zugriffen auf meine 
Dateien zu tun. Die gehören mir und nicht der Gruppe audio.

 Oder du arbeitest mit erweiterten ACL's, dafür musst du aber ein
 Dateisystem einsetzen das damit umgehen kann.

Ja, ich sehe aber immer noch nicht das hüpfende Komma, was das mit 
der personalisierten Benutzergruppe unter Debian zu tun hat - 
wahrscheinlich bin ich einfach zu blöd.

Nochmal: Ich sehe keinen Vorteil darin, dass bei Debian 
standardmäßig User = Gruppe ist, weil das einfach nur eine Ebene 
(und damit eine Möglichkeit der differenzierten Rechtevergabe für 
meine Dateien) abschaltet. Ich sehe keinen Vorteil - wenn ich 
Dateien privat halten will, kann ich das _als User_ per chmod. In 
Debian muss ich den Admin bemühen, die entspr. Kommandos darf ich 
als User nämlich nicht ausführen.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Nutzergruppe umbenennen

2004-07-16 Diskussionsfäden Jan Trippler
Am Freitag, 16. Juli 2004 22:28 schrieb Thomas Templin:
 On Friday 16 July 2004 21:44, Jan Trippler wrote:
[...]
  Das kann ich bei allen Gruppen - nur wenn ich gleich eine
  richtige Gruppe habe (im Sinne einer Gruppe, also einer
  Ansammlung von mehr als 1 Menschen), dann brauch ich das im
  normalen Betrieb gar nicht.

 Hier ist dein Denkfehler (c;

 Wenn du _alle_ Benutzer in _eine_ Gruppe packst dann sind das
 nicht eine Ansammlung von mehr als 1 Menschen sondern alle
 Menschen die du als Benutzer angelegt hast.

Also eigentlich rede ich von users (z. B.) - das sind lngst nicht 
alle, aber ok - die normalen Benutzer im System. Mein Problem ist 
folgendes: Wenn ich in Debian Dateien anderen zugnglich machen 
will, dann muss ich sie tatschlich fr _alle_ (also other) 
freigeben - ich kann als Benutzer ja keine Gruppenzugehrigkeiten 
steuern. Das ist dann z. B. auch nobody, ftp, ... also wirklich 
alle. Wenn ich die Grupper users habe, dann kann ich die Zugriffe 
als User zumindest auf die normalen User einschrnken - der chmod 
funktioniert nmlich als Benutzer - und ich kann auch als Benutzer 
dafr sorgen, dass private Dateien nur durch mich einsehbar sind. 
Aber ich habe eben die Option, dass andere angemeldete Benutzer auf 
meine Dateien zugreifen knnen, ohne dies eben gleich auch fr den 
Rest der Welt zu erlauben. Aber ich muss nicht - wie unter Debian - 
entweder den Admin bemhen, um Gruppen einzurichten oder als 
Alternative die Dateien tatschlich _jedem_ freizugeben. Die hhere 
Sicherheit von Debian ist also IMHO nur eine scheinbare und 
verkehrt sich leicht ins Gegenteil.

 Erst wenn du eine Anzahl Benutzer, weniger als alle und mehr als
 einer, in eine Neue Gruppe packst hast due das von dir
 beschriebene Verhalten. Wie ich es in meiner Mail mit der Gruppe
 audio beschrieben habe.

Nochmal - Deine audio-Gruppe hat absolut nichts mit dem Zugriff auf 
meine Dateien zu tun. Mir geht es darum, wie ich den Zugriff auf 
meine eigenen Dateien steuere. chmod darf ich als Benutzer 
ausfhren, chown, chgrp, addgroup usw. nicht.

 Ausser natrlich du willst das alle Benutzer in einer Gruppe sind
 und die gleichen Rechte, z.B. auf ein Verzeichnis / eine Datei,
 haben.

Nochmal: die Benutzergruppe (users) heisst _nicht_ alle! Und wenn 
ich nur mir privat den Zugriff erlauben will - dann gengt ein 
chmod - in Debian habe ich dazu nicht die Mglichkeit - ich muss 
eine Datei tatschlich fr other freigeben, wenn sie ein anderer 
bearbeiten knnen soll. Und dann kann wirklich jeder ran.

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: test im script

2004-07-12 Diskussionsfäden Jan Trippler
Am Montag, 12. Juli 2004 06:47 schrieb Bertram Scharpf:
 Am Sonntag, 11. Jul 2004, 20:05:08 +0200 schrieb Jan Trippler:
  if test `ls -a /voller/pfad | wc -l` -gt 2; then
..
  fi

 Mir fällt da noch etwas ein, wie man verhindert, daß das
 ganze Verzeichnis gelesen wird:

 test `ls -a /voller/pfad | head -n 3 | wc -l` -gt 2

Hm, was ist schneller? Ein neuer Subprozess (der head in der Pipe) 
oder ein ls über das ganze Verzeichnis? Der ls öffnet ja eigentlich 
nur die Inode des Verzeichnis und holt sich daher die 
dirent-Strukturen, oder?

Wäre im Zweifelsfall auszuprobieren.

 oder noch eleganter:

 test `ls -A /voller/pfad | head -n 1`

 Meines wissens bricht `ls' ab, wenn die Pipe geschlossen
 wird.

Dann muss aber der test geändert werden:
test -z `ls -A /voller/pfad | head -n 1`

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: test im script

2004-07-11 Diskussionsfäden Jan Trippler
Am Samstag, 10. Juli 2004 22:55 schrieb Bertram Scharpf:
 Am Samstag, 10. Jul 2004, 19:50:00 +0200 schrieb Jan Trippler:
[...]
  Ein leeres Verzeichnis hat immer exakt 2 Links - einmal auf ..
  und einmal auf .

 Leider nicht. Die beiden Hardlinks sind

 /voller/pfad
 /voller/pfad/.

 Nach `touch /voller/pfad/einedatei' sind es immer noch zwei.
 Nach `mkdir /voller/pfad/undweiter' sind es drei:

Hm, stimmt. Denkfehler von mir - Dateien direkt unterhalb vom 
Verzeichnis verändern den Linkcount nicht. Aber mir fällt grad noch 
ein Weg ein (ob er nun eleganter als der find ist, mag dahin 
gestellt sein):

if test `ls -a /voller/pfad | wc -l` -gt 2; then
  ..
fi

Jan



Re: test im script

2004-07-10 Diskussionsfäden Jan Trippler
Am Samstag, 10. Juli 2004 19:24 schrieb Bjoern Schmidt:
 On Sat, 10 Jul 2004, Heike C. Zimmerer wrote:
[...]
   if [ -z $(find /voller/pfad -type d -empty -maxdepth 0) ];
   then
 
^^^ ^

 Werde ich umgehend aendern. Hoffe dann ist es endlich richtig...
 ;) Danke fuer den Hinweis!

Eine andere Alternative wäre stat:
if test `stat -c %h /voller/pfad` -eq 2; then
  ...
fi

Ein leeres Verzeichnis hat immer exakt 2 Links - einmal auf .. und 
einmal auf .

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Bash Zauberei

2004-07-09 Diskussionsfäden Jan Trippler
Am Freitag, 9. Juli 2004 00:08 schrieb Andreas Schmidt:
 On 2004.07.08 23:25, Patrick Cornelißen wrote:
  Leider gibt es Probleme mit Leerzeichen in den Verz. Namen. Wie
  kann ich
  das denn hier umgehen? Bei For bin ich da etwas ratlos...

 Ganz einfach: ohne for! ;-)

 #find ./ -type d -exec do-something.sh {} \;

Da steckt eine kleine Falle drin: Was ist, wenn das Verzeichnis 
Unterverzeichnisse enthält? Besser:
find ./ -type d -depth -exec do-something.sh {} \;

Damit werden die Unterverzeichnisse _vor_ den übergeordneten 
behandelt. Sonst kann es Dir passieren, dass Du in /verzeichnis1 
erst 2 Dateien hast, diese verschiebst, 
dann /verzeichnis1/verzeichnis2 dran kommt und dann plötzlich 
wieder in /verzeichnis1 2 Dateien stehen, die aus verzeichnis2 
kommen.

 #find ./ -type d -empty -print0 |xargs -0 rmdir

 und dann in do-something.sh:
  ---
  #!/bin/bash
  ~   COUNT=`find $1 -type f -maxdepth 1| wc -l`
 
  ~   if [ $COUNT -gt 0 ]; then

huch? wc -l liefert _immer_ mindestens 0.

 if [ $COUNT -lt 3 ]; then
 
  for j in `find $1 -type f -maxdepth 1`; do
  echo mv \$j\ ..
  done
 fi
  ~   fi
  ---

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org
TTS-HowTo: https://ssl.pingos.org/pingos/intern/ttshowto/rt.html



Re: Bash Zauberei

2004-07-09 Diskussionsfäden Jan Trippler
Am Freitag, 9. Juli 2004 10:02 schrieb Patrick Cornelißen:
 Jan Trippler wrote:
 |---
 |#!/bin/bash
 |~   COUNT=`find $1 -type f -maxdepth 1| wc -l`
 |
 |~   if [ $COUNT -gt 0 ]; then
 |
 | huch? wc -l liefert _immer_ mindestens 0.

 Es ging mir darum auszuschließen, daß die Aktion auf
 Verzeichnisse ohne Dateien losgelassen wird

Ja - hab ich bei Andreas seiner Mail schon gemerkt - ich hab schief 
geguckt und das für -lt gehalten *Brille putz* ;-)

Jan



Re: Kein DVD auf Linux 9.1

2004-07-08 Diskussionsfäden Jan Trippler
Am Donnerstag, 8. Juli 2004 00:21 schrieb Richi:
 Ich bin da neuling auf dem Linux. Ich habe mir das Suse Linux 9.1
 auf meinem Rechner Installiert.
 Jetzt habe ich da ein problem. Ich möchte da auch DVD,s Schauen.
 Leider funktioniert es nicht.:-(

 Brauche ich da einen Treiber? Und wie kann ich den Installieren
 auf dem Linux?

 PS: Leider habe ich den Rechner nicht am Internet angeschlossen,
 da ich in im Ferien Haus habe.
Müste es warscheindlich von CD,s Installieren.:-p

www.suse.de - Privatkunden - Support - Mailinglisten - 
suse-linux / suse-multimedia

SuSE liefert wegen des seit August '03 geltenden Copyright-Gesetzes 
(welches u. a. das Veröffentlichen / Anbieten von Tools zum Umgehen 
von Kopierschutzmechanismen verbietet) keine CSS-Decoder mit - 
insgesamt ist xine ziemlich kastriert und mplayer gar nicht mehr 
dabei :-( - geh nicht über Los und schau mal bei 
packman.links2linux.de vorbei.

Jan

P.S.: Weitere Diskussionen am besten auf den SuSE-Listen.



Re: test im script

2004-07-08 Diskussionsfäden Jan Trippler
Am Donnerstag, 8. Juli 2004 18:36 schrieb Pierre Gillmann:
[...]
 kritisch werden). Lschen tue ich dann z.B. so: rm -rf $(find ./
 -type d -empty) kannst du natrlich x-beliebig abndern und ja
 ich wei, es gibt noch -exec, nur mit dem konnt ich mich noch
 nicht anfreunden.

Der ist aber um einiges besser (noch besser ist xargs), weil Du dann 
nicht in die Verlegenheit kommen kannst, von der bash ein nettes 
argument list too long um die Ohren gehauen zu kriegen.

Also:

find . -type d -empty -maxdepth 0 -exec rmdir {} \;

oder besser (weil nicht fr jedes einzelne Verzeichnis ein Prozess 
aufgemacht wird):
find . -type d -empty -maxdepth 0 -print | xargs rmdir

oder am allerbesten (weil der auch mit Leerzeichen, Zeilenumbrchen 
und sonstigem Geraffel in Dateinamen umgehen kann):
find . -type d -empty -maxdepth 0 -print0 | xargs -0 rmdir

Jan



Re: Ordnung in Datensalat bringen

2004-07-07 Diskussionsfäden Jan Trippler
Am Mittwoch, 7. Juli 2004 15:39 schrieb Klaus Becker:
[Dateien nicht lesbar]
 er hat chown -R user /home/user und dann chmod -R 777
 /home/user eingegeben. (777 ist zuviel des Guten, aber es war
 nur provisorisch für einen schnellen Test).

 $chown user:grupe * -Rv kenne ich nicht, du meinst sicher
 $chown user:groupe * -Rv ? Ohne Angabe von /home/user?

 Aber auch als root sind die Dateien nicht lesbar, daher befürchte
 ich, dass es nicht nur an den Zugriffsrechten liegt. Die Dateien
 sind aber da, konqueror gibt ihre Grösse an.

Was heisst denn nicht lesbar? Welche Fehlermeldung kommt? Was sagt 
file datei?

Jan



Re: Ordnung in Datensalat bringen

2004-07-07 Diskussionsfäden Jan Trippler
Am Mittwoch, 7. Juli 2004 20:01 schrieb Klaus Becker:
[...]
 Er versucht, mit Knoppix oder Mandrake10.0 *.jpg-Bilder zu öffnen
 oder z. B. *.doc-Dateien mit OO. Nichts geht. Den Befehl file
 kannte ich nicht, müssen wir erst noch ausprobieren.

file versucht anhand der magic number von Dateien bzw. durch eine 
Kurzanalyse der Inhalte herauszufinden, um was für einen Dateityp 
es sich handelt.

Bei Bildern kann Dir identify aus dem ImageMagick-Paket noch besser 
helfen.

 Die Dateien wurden mit rsync von einer Festplatte auf eine andere
 kopiert. Die Festplatte hat aber ein Problem: Mandrake kann sie
 nicht lesen und startet nicht, wenn sie eingehängt ist, knoppix
 stört das nicht, aber unter knoppix lassen sich nur einige der
 Dateien öffnen. Hier liegt sicher das Problem. Meiner Meinung
 nach ist es ein Hardware-Problem, das zuerst gelöst werden muss.
 Die Kopie der Dateien mit rsync von einer Festplatte, die ein
 Problem, ist sicher in die Hose gegangen.

Dann kannst Du z. B. über die Dateigröße und evtl. über eine 
Prüfsumme (md5sum, cksum) mal prüfen, ob die Dateien auch noch die 
gleichen sind wie auf der Originalplatte.

Jan



Re: kshell

2004-07-03 Diskussionsfäden Jan Trippler
Am Samstag, 3. Juli 2004 11:29 schrieb Rüdiger Noack:
 Mich würden ein paar Beispiele zu ksh-Kommandos interessieren,
 die nicht kompatibel zur bash sind.

IIRC z. B. Verneinung in if-Abfragen:
if ! ls abc; then
  do_something
fi

läuft AFAIK nur in der bash. Viele Inkompatibilitäten betreffen nur 
das Handling bei interaktiven Shells oder GNU-Erweiterungen der 
Kommandos, aber ein paar Unterschiede im Befehlsumfang existieren 
schon.

Jan



Re: Problem mit cut

2004-06-21 Diskussionsfäden Jan Trippler
Am Montag, 21. Juni 2004 06:22 schrieb Andreas Pakulat:
[...]
 echo test t | cut -f1 klappt nicht,
 echo -e test\tt | cut -f1 klappt, aber wenn ich ne Datei nehme

Die Option -d wurde ja schon genannt.

 mit

 test  1
 test  2
 ...

 und dann mittels cat datei | while read l ; do echo $l | cut -f1,
 kriege ich wieder test 1 (genau, nur ein Leerzeichen) raus.

Um Himmels Willen ;-) Was ist denn das für eine abenteuerliche 
Konstruktion?
Wenn in deiner Datei ein Tab zwischen den einzelnen Feldern steht, 
dann mach es so:
cut -f1 datei

Die Ursache, warum es bei Dir nicht klappt, ist der echo - weil er 
nämlich in jeder Zeile test und 1 (oder 2) als eigene 
Argumente kriegt und per Default zwischen einzelne Argumente ein 
Leerzeichen setzt. Beim cut kommt also test 1 usw. an (mit einem 
Leerzeichen).

Wenn Du aus irgendeinem Grund die Schleife brauchst:
cat datei | while read I; do
  echo $i | cut -f1
  ...
done

oder:
while read I; do
  echo $i | cut -f1
  ...
done datei

Jan



Re: Problem mit cut

2004-06-21 Diskussionsfäden Jan Trippler
Am Montag, 21. Juni 2004 09:22 schrieb Jan Trippler:
[...]
 Wenn Du aus irgendeinem Grund die Schleife brauchst:
 cat datei | while read I; do
   echo $i | cut -f1

Natürlich:
echo $I

   ...
 done

 oder:
 while read I; do
   echo $i | cut -f1

Natürlich:
echo $I

   ...
 done datei

Jan



Re: ssh wget nach abmelden weiterlaufen lassen

2004-06-17 Diskussionsfäden Jan Trippler
Am Donnerstag, 17. Juni 2004 15:09 schrieb Matthias Fechner:
 * Wolfgang Jeltsch [EMAIL PROTECTED] [17-06-04 14:50]:
  Es bewirkt bei Debian GNU/Linux 3.0 unter bash offenbar auch
  ein nohup. Ich habe es gerade mal ausgetestet. Die mit 
  gestarteten Prozesse überleben das Ausloggen!

 oder man benutzt einfach screen, dann sieht man auch gleich noch
 was wget so treibt.

Das geht auch anders: nohup wget ... /pfad/zur/logdatei 21 

Mit:
tail -f /pfad/zur/logdatei sieht man in Echtzeit die Ausgabe. Das 
ist dann auch noch portabel (wenn man nohup benutzt) zu jedem *nix 
und jeder Shell.

Jan



Re: ssh wget nach abmelden weiterlaufen lassen

2004-06-17 Diskussionsfäden Jan Trippler
Am Donnerstag, 17. Juni 2004 14:28 schrieb Wolfgang Jeltsch:
 Am Mittwoch, 16. Juni 2004 22:19 schrieb Jan Trippler:
  [...]
 
  Ich weiss nicht, ob das schon kam - aber normalerweise ist
  nohup genau zu diesem Zweck da:
  nohup wget URL 21 download.log 
 
  Jan

 Meines Wissens bewirkt das -Zeichen automatisch ein nohup.
 Zumindestens tat es das mal bei der tcsh unter Solaris.

Nein, nicht in jedem Fall - das ist dann ein Feature ;-)  schickt 
den Prozess lediglich in den Hintergrund (also asynchrone 
Ausführung). Ich finde es ehrlich gesagt auch schade, dass einem 
mit dem automatischen Hangup die Möglichkeit genommen wird. selbst 
zu entscheiden ob man gestartete Prozesse weiterlaufen lassen will.

Jan



Re: ssh wget nach abmelden weiterlaufen lassen

2004-06-17 Diskussionsfäden Jan Trippler
Am Donnerstag, 17. Juni 2004 14:34 schrieb Patrick Cornelißen:
 Wolfgang Jeltsch wrote:
 | Meines Wissens bewirkt das -Zeichen automatisch ein nohup.

 Zumindestens tat

 | es das mal bei der tcsh unter Solaris.

 Also eigentlich bewirkt das  nur, daß es einen eigenen Prozess
 aufmacht. 

Nein, ein neuer Prozess wird immer gestartet (es sei denn, Du rufst 
ein Programm mit exec auf).  schickt das Programm in den 
Hintergrund, bewirkt also eine asynchrone Ausführung.

 Nohup ist ja eine Stufe stärker und bewirkt, daß der 
 Prozess nicht mehr im Prozessbaum der Loginshell ist, wodurch es
 nicht beendet wird, wenn man sich ausloggt.

Nicht ganz. Der neue Prozess bleibt solange in der Session der 
Shell, solange sie existiert. nohup (= NO HangUP) bewirkt, dass 
SIGHUP ignoriert wird - der Prozess wird beim Beenden des Parent an 
init (PID 1) vererbt.

Jan



Re: ssh wget nach abmelden weiterlaufen lassen

2004-06-16 Diskussionsfäden Jan Trippler
Am Mittwoch, 16. Juni 2004 22:18 schrieb Jhair Tocancipa Triana:
 David Nawrot schreibt:
  HAllo
  ich möchte mittels wget eine grosse datei aus dem Netz ziehen.
  Dazu muss ich mich auf dem Rechner mittels ssh anmelden. Wie
  kann ich es schaffen, das des Programm anch dem logout
  wieterläuft? Alle Versuche endeten mit dem beenden aller vom
  Nutzer gestarteten Anwendungen.

 (wget URL 21 download.log )

 Klammern beachten.

Ich weiss nicht, ob das schon kam - aber normalerweise ist nohup 
genau zu diesem Zweck da:
nohup wget URL 21 download.log 

Jan



Re: skript: String bearbeiten

2004-06-10 Diskussionsfäden Jan Trippler
Am Donnerstag, 10. Juni 2004 17:58 schrieb Heinrich Christian 
Peters:
 hat jemand eine Idee, wie ich einen String der Art 08062004
 1811 in einen Sting der Form 20040608-1811 umbaue?
 Den String aus einer Datei zu extrahieren habe ich ja schon
 geschafft, aber die Zeichen umzustellen kriege ich mit sed nicht
 hin. Btw: Ich brauche das in einem Skript um Ordner zuerstellen,
 die sich gut nach Datum sortieren lassen.

echo 08062004 1811 | sed \
's/\([0-9]\{2,2\}\)\([0-9]\{2,2\}\)\([0-9]\{4,4\}\) /\3\2\1-/'

Jan


-- 
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: skript: String bearbeiten

2004-06-10 Diskussionsfäden Jan Trippler
Am Donnerstag, 10. Juni 2004 19:17 schrieb Jan Trippler:
 echo 08062004 1811 | sed \
 's/\([0-9]\{2,2\}\)\([0-9]\{2,2\}\)\([0-9]\{4,4\}\) /\3\2\1-/'

Ähm, übrigens wird der Ausdruck mit extended regular expressions 
etwas übersichtlicher ;-)

echo 08062004 1811 | sed -r \
's/([0-9]{2,2})([0-9]{2,2})([0-9]{4,4}) /\3\2\1-/'

Jan

P.S.: Zur Bedeutung der einzelnen Ausdrücke kann ich:
man 7 regex
nur empfehlen. Sollte eigentlich unter jedem Kopfkissen liegen :-)



Re: Tonnenweise Rassisten-Mails !

2004-06-10 Diskussionsfäden Jan Trippler
Am Donnerstag, 10. Juni 2004 20:21 schrieb Thomas Templin:
 On Thursday 10 June 2004 19:16, Stefan Schöllermann wrote:
  hi Michelle,
 
  hab gerade im Radio gehört, dass die wohl über einen Uni-Server
  verschickt wurden, mit dem Account eines Studenten, der
  wahrscheinlich gehackt wurde. Die Ermittlungen sind aufgenommen
  und das ist jetzt wohl abgestellt. Es sollten wahrscheinlich
  keine weiteren mehr ankommen!

 Falls du genauere Infos hast, her damit...

Oh Mann, kennt Ihr den Heise-Newsticker nicht?
http://www.heise.de/newsticker/meldung/48121

Jan



Re: Probleme mit bash-Script

2004-06-03 Diskussionsfäden Jan Trippler
Am Donnerstag, 3. Juni 2004 17:32 schrieb Ulrich Fürst:
 Philipp Meier schrieb:
  Ulrich Fürst schrieb:
  P.S. Das von Phillip vorgeschlagene `du -sm | cut -d' ' -f1`
  funktioniert nicht. Nur so interessehalber: Warum eigentlich
  nicht? Cut erkennt ein leerzeichen nicht als trenner an und
  interpretiert zahl . dann doch als ein Feld und übergibt es
  folglich ganz? Oder liegt das an etwas anderem?
 
  Cut-and-paste-Fehler von mir, du trennt mit Tabulater, korrekt
  war:

 Ja schon, aber cut -d' ' ersetzt den Tabulator durch ein
 Leerzeichen? Und dadurch ist das erste Feld (-f1) die komplette
 Ausgabe, weil Felder nicht durch Leerzeichen getrennt werden
 dürfen?

Wenn Du cut mit der Option -d einen Feldtrenner mitgibst, dann wird 
_nur_ dieser genutzt. Ohne Angabe von -d wird per Default der 
Tabulator genommen. Da die Angaben bei du mit Tab getrennt sind, 
kann ein cut -f1 -d  nicht funktionieren - es ist eben kein 
Leerzeichen vorhanden.

Du kannst Dir im Zweifel das auch angucken:
[EMAIL PROTECTED]:~/Documents du -sm | od -cx
000   3  \t   .  \n
0933 0a2e
004

Da siehst Du den Tabulator.

Jan



Re: Probleme mit bash-Script

2004-06-03 Diskussionsfäden Jan Trippler
Am Donnerstag, 3. Juni 2004 20:34 schrieb Ulrich Fürst:
 In man cut steht aber doch:
  -d, --delimiter=DELIM
   use DELIM instead of TAB for field delimiter

 wenn ich also -d  schreibe müsste er den vorhandenen Tabulatur
 gegen ein Leerzeichen austauschen. Oder verstehe ich das
 (anscheinend) falsch?

Ja. cut tauscht gar nichts aus - er nutzt den vorgegebenen 
Feldtrenner, um Dir z. B. Feld 1 (cut -f1) aus der Eingabezeile 
ermitteln zu können. Wenn Du cut sagst: Nimm als Trennzeichen 
zwischen den Feldern den Blank und in der Eingabezeile gibts 
keinen, dann folgert cut haarscharf: Aha - nur ein Feld da. cut ist 
ein Messer - es schneidet Teilchen aus und sonst nix. Der 
Feldtrenner (Option -d) ist lediglich sozusagen die Stelle, an der 
das Messer angelegt wird. Hast Du schon mal ein Messer gehabt, was 
Dir an der Stelle, wo Du den Käse schneidest ein Stück Bratwurst 
einfügt? ;-)

Jan



Re: Probleme mit bash-Script

2004-06-02 Diskussionsfäden Jan Trippler
Am Mittwoch, 2. Juni 2004 17:15 schrieb Ulrich Fürst:
 ich wollte in einem Script zur Datensicherung eine Abfrage
 einbauen ob auf dem Zieldatenträger noch genügend Platz ist.
 Meine Lösung wäre

 folgende gewesen:
  belegt=`du -sm`
  if [ $belegt -gt 7500 ]
 then
 echo
 echo Bitte erst alte Sicherungen löschen!
 echo
 exit 1;
 elif [ $belegt -lt 7500 ]
 then
 echo
 echo Sicherung beginnt ...
 echo
  fi

 (Herauskommen soll: wenn die Platte zu mehr als 7500 MB belegt
 ist erfolgt nur eine Warnung sonst wird gesichert)
 Ich bekomme aber die Fehlermeldung line 11: [: too many
 arguments (das ist im Script die if-Zeile (dto. bei der
 anderen).
 Offensichtlich ergibt du -sm nicht eine Zahl sondern mehrere? Wie
 kann ich das verhindern?

[EMAIL PROTECTED]:~/Development/www/progs du -sm
1   .

In der Variablen $belegt steht also 1   . - da Du nicht 
quotest, kriegt der test folgendes zu sehen:
[ 1   . -gt 7500 ]

Abhilfe:
belegt=`du -sm | cut -f1`

Jan



Re: script beim Booten starten

2004-05-19 Diskussionsfäden Jan Trippler
Am Mittwoch, 19. Mai 2004 22:10 schrieb Andreas Pakulat:
 On 19.May 2004 - 17:00:23, Andreas Sonnabend wrote:
  Hallo,
  in welchen Ordner müssen Scripts, die beim Booten gestartet
  werden sollen. (Ich kann boot.local nicht finden)

 Falsche Linuxdistri - Suse == boot.local, Debian == /etc/init.d
 und nen Link in /etc/rcX.d

Quatsch!

Woody 3.0:
[EMAIL PROTECTED]:/etc$ ls -d rc*
rc.boot  rc0.d  rc1.d  rc2.d  rc3.d  rc4.d  rc5.d  rc6.d  rcS.d

SuSE 9.1:
[EMAIL PROTECTED]:/etc/init.d ls -d *.d
boot.d  rc0.d  rc1.d  rc2.d  rc3.d  rc4.d  rc5.d  rc6.d  rcS.d

Der grundsätzliche Aufbau unterscheidet sich nicht, nur die Orte, wo 
die Distributionen ihre Scripts hinterlegen und boot.local ist 
unter SuSE lediglich eine _zusätzliche_ Möglichkeit, individuelle 
Aktionen beim Booten ablaufen zu lassen. Das Vorhandensein 
von /etc/rc.boot bei Debian bringt mich zu der Frage, ob es nicht 
sinnvoller wäre, auch hier die beim Booten zu erledigenden Aufgaben 
in rc.boot statt in rc?.d abzulegen.

Jan



Re: sed soll eine bestimmte anzahl von Zeichen lschen...

2004-05-15 Diskussionsfäden Jan Trippler
Am Samstag, 15. Mai 2004 22:26 schrieb Michelle Konzack:
 bastele gerade an einem kleinen BASH-Script, das mir sagt, wann
 ein paket installiert wurde...

 ls -lG --sort=time --time=ctime --full-time /var/lib/dpkg/info/ \

 | grep postinstall

 Das liefert mir ne nette liste... :-)

   __ ( stdin )
 _ /

 |  -rwxr-xr-x1 root  360 Sat May 15 17:35:21 2004
 | mutt.postinst -rwxr-xr-x1 root  135 Sat May 15
 | 17:35:18 2004 libidn11.postinst -rwxr-xr-x1 root 
 | 395 Sat May 15 17:35:18 2004 libncursesw5.postinst

 snip

 |  -rwxr-xr-x1 root 5675 Sat May 03 20:31:07 2003
 | dpkg.postinst -rwxr-xr-x1 root  321 Sat May 03
 | 20:31:04 2003 diff.postinst -rwxr-xr-x1 root  306
 | Sat May 03 20:31:03 2003 bash.postinst -rwxr-xr-x1 root
 | 3976 Sat May 03 20:31:02 2003 base-files.postinst
 | -rwxr-xr-x1 root 2252 Sat May 03 20:31:02 2003
 | base-passwd.postinst

 
 \
__

 Na gut, das sieht gut aus...
 Nun will ich alles vom beginn bis zum LEERZEICHEN vor dem
 Monatstag entfernen...

 | sed s/-rwxr-xr-x\ \ \ \ 1\ root\ \ \ \ \ \ \ / /

 entfernt leider nur bis vor der Dateigre...

 | sed s/^[\ a-z0-9-]//

 entfernt nur ein Zeichen... Ich will aber 34 Zeichen loswerden...
 Habe jetzt man bash,sed,regex durchgelesen, aber nicht uber den
 multiplier gefunden...

Wenn Du exakt 34 Zeichen loswerden willst, warum machst Du es Dir 
dann so schwer? Es gibt nicht nur sed.
| grep '-rwxr-xr-x' | cut -c35-

Jan



Re: Brauche Tip bei Shell-Script

2004-04-22 Diskussionsfäden Jan Trippler
Am Donnerstag, 22. April 2004 12:23 schrieb Timo Eckert:
 On Thu, 22 Apr 2004 12:13:53 +0200
 Tauber, Mathias  Mailing [EMAIL PROTECTED] wrote:

 Hallo,

  Super, danke!

 Kein Problem.

  Geht statt dem
if [[ `grep -c $LOG /filename_zum_aussschliessen` == 0
  ]] auch das hier?
if `grep -c $LOG /filename_zum_aussschliessen` == 0

 Nein,

 weil dier [ und ] im Scripting spezielle bedeutungen haben. Frag
 mich nicht genau welche, da müsste ich Dich auch die Manpage
 verweisen. ;)

[ ] sind im Prinzip das Gleiche wie test. Es ist also egal, ob Du 
if [ ... ]; then
oder
if test ...; then
schreibst.
Warum Du allerdings doppelte Klammern benutzt ist mir rätselhaft, 
die sind hier unnötig.

Im angegebenen Fall geht es allerdings auch ohne test, die 
if-Bedingung wertet ja das Ergebnis des nachfolgenden Kommandos aus 
(test liefert im Erfolgsfall 0, sonst != 0). Also kann man auch 
gleich das Ergebnis des Kommandos grep direkt benutzen:
if ! grep -q $LOG /filename_zum_aussschliessen; then
...
fi

Jan



Re: ls tuning

2004-04-16 Diskussionsfäden Jan Trippler
Am Samstag, 17. April 2004 01:03 schrieb Kolja Powischer:
 On Sat, 17 Apr 2004 00:53:57 +0200
 Thorsten Gowik [EMAIL PROTECTED] wrote:
  Suchst du eventuell du -sh?

 War doch nicht was ich suche... =)
 Ich brauche die Grösse des Verzeichnisses. Meint, die Summe aller
 Dateien in allen Unterzerzeichnissen. Auch versteckten...

Vielleicht hilft Dir das auch weiter:
http://www.jan-trippler.de/progs/du_tree.html

Jan



Re: Regestrierung

2004-03-23 Diskussionsfäden Jan Trippler
Am Montag, 22. März 2004 07:39 schrieb Werner Mahr:
[...]
 Erstens, wird bei mir auch ein Schaden verursacht.

Und Du schädigst per Lynchjustiz zurück - mit der offensichtlichen 
Billigung, dass auch andere, Unbeteiligte geschädigt werden (z. B. 
durch Engpässe auf anderne Webseiten, die u. U. sich den gleichen 
Server mit dem Spammer teilen).

 Und Zweitens, ist ein DOS etwas anderes. Die Site wurde
 mittlerweile vom Netz genommen, da der Traffic zu hoch war, nicht
 weil der Server überlastet war.

Nein, die Antispam-Seite, die ich meinte, wurde durch DDoS-Angriffe 
aus dem Verkehr gezogen, ist aber schon ne Weile her - darum ging 
es mir auch nicht. Ich wollte es als Beispiel verstanden wissen, 
dass Spammer durchaus in der Lage sind, ihrerseits Racheaktionen 
anzuzetteln. Das scheint Dir entgangen zu sein.

  Das Script ruft eben nicht die Informationen ab, sondern
  verursacht ausschliesslich dummen, nutzlosen Traffic - es geht
  ja nicht um die Informationen (oder hab ich den Befehl rm
  falsch verstanden?).

 Hat irgendjemand gesagt, das die Informationen auch ausgewertet
 werden?

Das ist Haarspalterei. Du solltest eigentlich kapiert haben, was ich 
damit meinte. Wenn nicht - Pech gehabt.

 Wieso richte ich mehr Schaden an? Der Traffic der Website wird
 bezahlt, der Traffic, den das Versenden des SPAMs erzeugt nicht.
 Der einzige Schaden ist, wenn überhaupt welcher entstehen sollte
 beim Spammer, und da kannst du nicht wirklich etwas dagegen
 haben.

Du schädigst u. U. Unbeteiligte, Du sorgst für sinnlosen Traffic im 
Netz - Du gibst ein Beispiel für !IMHO! - verantwortungslose *Haust 
Du mich - hau ich Dich* Philosophie. Das ist für mich ein enormer 
Schaden. Du bist anderer Meinung - Dein Bier.

  Ich greife Leute an, die Programme / Scripts _ausschließlich_
  zu dem Zweck schreiben, anderen zu schaden. Und Euer Scriptchen
  hat keinerlei nützliche Funktion.

 Nein du sagst, das jemand das Script auch dafür Nutzen könnte.
 Und das trifft auf Sniffer und ähnliches auch zu.

Sag mal - Du willst mich missverstehen, oder? Das Script hat einen 
einzigen Zweck: Schaden anzurichten, dabei ist es mir erstmal 
völlig egal, bei wem der Schaden auftritt. Jeder Portscanner hat 
einen leicht einsehbaren Nutzen. Einen Sniffer kannst Du für 
sinnvolle Zwecke einsetzen, Euer Script nicht.

[...]
  Nein, genau das werde ich nicht. Ich vergeude meine Zeit nicht
  mit solchem Unfug.  Ich sage A: ich finde die Methode Sch...
  und ich sage B: Ich werde das nicht auch noch unterstützen.

 Falsch, du sagst A: da gibts bessere Methoden, und B: ich sag
 euch nicht welche. Errinert mich irgendwie an den Kindergarten.

Du drehst mir das Wort im Mund rum. Das was Du da schreibst ist 
frech gelogen. Was Du behauptest stimmt nicht mit dem überein was 
ich geschrieben habe.

Für mich: EOT

Jan



Re: Regestrierung

2004-03-21 Diskussionsfäden Jan Trippler
Am Sonntag, 21. März 2004 04:28 schrieb Werner Mahr:
[...]
 Am Samstag, 20. März 2004 22:42 schrieb Jan Trippler:
  Was soll diese Scheiße? Gibts noch nicht genug Würmer,
  Backdoors, DDoS, SPAM, Replys von ach so tollen Virenscannern
  und anderen Mist? Müsst Ihr unbedingt für weiteren sinnlosen
  Traffic sorgen? Ich finde sowas ehrlich gesagt allerunterste
  Schublade!

 Hier gehts nur um Spam, welcher eine Webseite bewirbt.
 Möglicherweise, falls derselbe Spammer mehrere Webseiten hat, und
 nach Traffic mit ihm abgerechnet wird, bekommen wir irgendwann
 keinen Spam mehr von diesem. Es wird in den Mails geworben, das
 man diese Site abrufen soll, und genau das macht das Script.

Es verursacht einen handfesten finanziellen Schaden (woher weisst 
Du, dass der SPAM immer tatsächlich von der beworbenen Webseite 
gewünscht ist?) und ist IMHO (IANAL) strafbar. Wie würde es Dir 
gefallen, wenn morgen ein Spammer aus Rache zur Abwechslung mal 
_Deine_ Seite bewirbt? DOS-Angriffe auf missliebige Seiten haben 
sie ja schon seit längerem im Programm.

Das Script ruft eben nicht die Informationen ab, sondern verursacht 
ausschliesslich dummen, nutzlosen Traffic - es geht ja nicht um die 
Informationen (oder hab ich den Befehl rm falsch verstanden?).

Versteh mich nicht falsch: Ich mag SPAM genauso wenig wie die 
meisten hier, aber mit solchen Aktionen richtet man IMHO mehr 
Schaden an als die SPAM-Versender. Stoppen wirst Du die Spammer 
damit nicht.

  Habt Ihr Euch mal überlegt, dass evtl. der Nächste mit Eurem
  ach so geilen Script (bei dem sich mir stellenweise die Haare
  sträuben) irgendjemanden, dessen Webauftritt oder Nase ihm
  gerade nicht passt, massiv finanziell schädigt? An welcher
  Stelle ist Euer Gewissen auf der Strecke geblieben? Ist das
  Script-Kiddie-Dasein so befriedigend für Euer Ego?

 Kämm dir die Haare und sieh es mal anders. Greifst du die Leute,
 welche Portscanner schreiben an? Wie wäre es mal mit den Leuten
 die Sniffer schreiben, damit kann man nämlich Passwörter
 bekommen. Das Scipt ist vielleicht nicht nach allen Regeln der
 Kunst verfasst, aber es erfüllt seinen Zweck. Für ein Spontanes
 Script ist es auch Recht gut gelungen, und auch recht
 verständlich.

Ich greife Leute an, die Programme / Scripts _ausschließlich_ zu dem 
Zweck schreiben, anderen zu schaden. Und Euer Scriptchen hat 
keinerlei nützliche Funktion.

 btw. Meckern kann jeder, zeig uns lieber was du besser machen
 würdest. Und sag jetzt nicht, das du keine Viren oder Würmer oder
 sonstwas Lehrgänge geben willst, oder dich vielleicht auf
 juristisch dünnes Eis begibst. Wer A sagt, muss auch B sagen.

Nein, genau das werde ich nicht. Ich vergeude meine Zeit nicht mit 
solchem Unfug.  Ich sage A: ich finde die Methode Sch... und ich 
sage B: Ich werde das nicht auch noch unterstützen. Wenn Du wissen 
willst, was ich nützlich finde: siehe Signatur.

  Werdet erwachsen!

 Definiere bitte genauer.

Noch genauer?

Jan

-- 
Linux-Quickies: http://www.jan-trippler.de
PingoS: http://www.pingos.org



Re: Regestrierung

2004-03-20 Diskussionsfäden Jan Trippler
Am Samstag, 20. März 2004 21:16 schrieb Michelle Konzack:
 Aufgrund der regen Nachfrage wie man Server plattmacht angeheftet
 das Script.
[...]

Was soll diese Scheiße? Gibts noch nicht genug Würmer, Backdoors, 
DDoS, SPAM, Replys von ach so tollen Virenscannern und anderen 
Mist? Müsst Ihr unbedingt für weiteren sinnlosen Traffic sorgen? 
Ich finde sowas ehrlich gesagt allerunterste Schublade!

Cool - lass uns mal nen Server plattmachen - schreibt Ihr demnächst 
auch Würmer mit Backdoor, damit Ihr so richtig effektiv nen DDoS 
starten könnt?

Habt Ihr Euch mal überlegt, dass evtl. der Nächste mit Eurem ach so 
geilen Script (bei dem sich mir stellenweise die Haare sträuben) 
irgendjemanden, dessen Webauftritt oder Nase ihm gerade nicht 
passt, massiv finanziell schädigt? An welcher Stelle ist Euer 
Gewissen auf der Strecke geblieben? Ist das Script-Kiddie-Dasein so 
befriedigend für Euer Ego?

Werdet erwachsen!

SCNR

Jan

P.S.: Es heißt Registrierung



Re: Frage zur Rechtevergabe

2004-03-15 Diskussionsfäden Jan Trippler
Am Montag, 15. März 2004 19:30 schrieb Andreas Pakulat:
 On 15.Mar 2004 - 19:07:03, Christian Schoepplein wrote:
  Hallo!
  Der Verzeichnisbaum ist folgendermaßen aufgebaut:
web1 (dr-xr-x---): User web1, Gruppe www-data
  files (drwxr-xr-x) : User web1, Gruppe ftponly
web2 (dr-xr-x---): User web2, Gruppe www-data
  files (drwxr-xr-x) : User web2, Gruppe ftponly
 
  Ich würde nun gerne einen User anlegen, der in alle
  files-Verzeichnisse unterhalb von webX schreiben darf,
  nur weiß

 Hmm, also wenn du alle files Directory's schreibbar machst fuer
 die Gruppe ftponly und den User dann dort hinzufuegst reicht das.

Das reicht IMHO nicht. User der Gruppe ftponly können nämlich nicht 
in das Verzeichnis files wechseln, weil ihnen dazu die Rechte im 
web[12] fehlen.

Ich halte die Rechtestruktur für ziemlich vermurkst ehrlich gesagt.

Jan



Re: Befehlsabweisung 'bad interpreter'

2004-02-29 Diskussionsfäden Jan Trippler
Am Sonntag, 29. Februar 2004 14:47 schrieb Hans Georg Keller:
 Status:
 ~~~
 root als Softlink erzeugt  'ln -s /home/root  /root'
 /home/root/bin == /root/bin ist meine private Tool-Sammlung.

 Beispiel:
 ~
 'cat /home/root/bin/beep'
 --
 #!/bin/bash
 echo -e \007
 --

 owner  root:trusted
 mode   755


 'beep'
 --
 bash: /root/bin/beep: /bin/bash: bad interpreter: Permission
 denied --

 Wenn ich jedoch beep nach /bin kopiere, dann piepts
 erwartungsgemäß. Nun möchte ich aber meine selbsterstellten Tools
 nicht mit den Standardpaketen vermischen, bzw. es gibt eine Menge
 Tools aus meiner SuSE-Zeit die ich glücklicherweise von
 vornherein in einem separaten Verzeichnis auf der /home Platte
 aufbewahrt hatte.

Kann es sein, dass /root in einem mit *noexec* gemounteten 
Dateisystem liegt? Die Fehlermeldung scheint mir darauf hinzudeuten 
(zumindest habe ich sie in solchen Fällen bei mir schon gesehen).

Jan

BTW: Ein guter Platz für eigene Tools ist immer /usr/local/bin


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Mal wieder find...

2004-02-29 Diskussionsfäden Jan Trippler
Am Sonntag, 29. Februar 2004 11:30 schrieb Andreas Schmidt:
[...]
 Im konkreten Fall ging es darum, in einem Verzeichnis aus allen
 Mailboxen bestimmte Header zu entfernen. Ich hatte dafuer eine
 provisorische ~/.procmailrc angelegt (da die Mails ja schon
 sortiert

 waren, konnten die sonst faelligen Filter entfallen) :
 :0f
 :
 | formail -f -I Received: -I Envelope-to: -I Delivered-To:
 |
 :0
 mist

Das schiebt die Mails doch in ein Postfach mist - und der liegt im 
Verzeichnis $MAIL, oder?

 Ich wollte jetzt fuer jede gefundene Mailbox procmail aufrufen
 und die Datei mist umbenennen:

 find . -maxdepth 1 -type f -exec cat {} | formail -s procmail;
 mv mist {}.new \;

 Hier gibt es dann die Fehlermeldung:
 find: cat ./header | formail -s procmail; mv mist ./header.new:
 No such file or directory

s. o. - wahrscheinlich wird mist im aktuellen Verzeichnis nicht 
gefunden.

 find . -maxdepth 1 -type f -exec cat \{\} | formail -s procmail;
 mv mist \{\}.new \;

 ergibt
 find: missing argument to `-exec'
 mv: missing file argument

Jepp - da Du die Befehlefolge nicht quotest, wird nur der Teil:
cat \{\} für exec erkannt - und da fehlt eben das \; am Ende. Die 
Pipe gehört hier schon nicht mehr zum find.

[...]
 Darauf habe ich dann eine Shell-Funktion definiert:
 prune() {
 cat $1 | formail -s procmail
 mv mist $1.new
 }

 Der Aufruf dieser Funktion aus find funktioniert nicht:
 find . -maxdepth 1 -type f -exec prune {} \;
 find: prune: No such file or directory

 Das liegt wohl daran, dass -exec eine eigene Shell oeffnet, in
 der prune nicht definiert ist. Also im naechsten Schritt:

Sehe ich auch so.


 prune () { cat $1 | formail -s procmail; mv mist $1.new; };
 export prune; find . -maxdepth 1 -type f -exec prune {} \;
 find: prune ./header: No such file or directory

Kann es sein, dass der Konstrukt prune {} als _ein_ Kommando 
aufgefasst wird? Versuchs hier doch mal ohne  - so wie oben.

 Jetzt bin ich mit meinem Latein am Ende und dankbar fuer jeden
 Hinweis. :-)

Ich glaube. mit einem Shell-Script statt einer Funktion hättest Du 
weniger Sorgen.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Mal wieder find...

2004-02-29 Diskussionsfäden Jan Trippler
Am Sonntag, 29. Februar 2004 20:44 schrieb Andreas Schmidt:
[...]
 War halt nur ein quick'n'dirty hack. :-) Aber Du hast recht, die
 Funktion in ein Script gepackt wird ausgefuehrt. Und wenn man
 '$1' mit '$*' ersetzt, werden sogar Dateinamen mit
 Leerzeichen richtig erkannt. Letztlich sieht es also wohl danach
 aus, dass man find wirklich nur ein einzelnes Kommando direkt
 ausfuehren lassen kann. Aeusserst unpraktisch, wenn man in
 solchen Faellen  jedesmal erst ein eigenes Script schreiben
 muss...

Naja - so viel Mühe ist das ja auch nicht ;) - Aber mir ist grad 
noch ne andere Idee aus /dev/brain/remember hochgegekommen (für 
diesen Fall allerdings nicht getestet) - 1 Zeile:

find . -maxdepth 1 -type f -printf cat \%p\ | formail -s 
procmail; mv mist \%p\.new\n | sh

ggf. Pfadnamen ergänzen (für mist und dergleichen).

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: shellcript

2004-02-17 Diskussionsfäden Jan Trippler
Am Dienstag, 17. Februar 2004 22:57 schrieb Joel HATSCH:
 On Tue, 17 Feb 2004 18:48:40 +0100

 Stefan Blechschmidt [EMAIL PROTECTED] wrote:
  dann ist der Weg zu perl nicht weit :-)
 
  ,---[ csvtostuct.pl ] -
 
  |  #!/usr/bin/perl
  |  open (FH, $ARGV[0]);
  |  while (FH) {
  | chomp;
  | @inhalt = split (';', $_);
  | system(mkdir $inhalt[0]);
  | system(echo \$inhalt[2]\  $inhalt[0]/$inhalt[1]);
  |  }
  |  close(FH);
 
  `---

 fuktionniert prinzipiell, aber wenn ich mich richtig erinnere
 werden bei deinen 2 system()-Aufrufe jeweils shell-child-Prozesse
 gestartet. kostet Zeit.
 bei ein Paar Zeilen kein Problem, bei viele viele Aufrufe tötlich
 langsam !
 bei dem Shell-Skript hast Du eben das Problem nicht.

 Wie gesagt, frei aus dem Gedächtnis raus

Das ist ein tödlicher Irrtum ;-) In einem Shell-Script werden 
natürlich auch für _jeden_ Befehl, der nicht Shell-Builtin ist, 
Childs gestartet, also im Allgemeinen deutlich mehr als in 
Perl-Programmen (Du musst ja die Zeile parsen - z. B. per cut).

Prinzipiell hast Du mit dem Einwand recht, aber Perl wäre nicht 
Perl, wenn man das nicht besser lösen könnte ;-)

#!/usr/bin/perl
open (FH, $ARGV[0]) or die $!;
while (FH) {
chomp;
@inhalt = split /;/;
mkdir $inhalt[0];
open (OUT,  . $inhalt[0] . / . $inhalt[1]) or die $!;
print OUT $inhalt[2], \n;
close OUT;
 }
close(FH);

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: shellcript

2004-02-17 Diskussionsfäden Jan Trippler
Am Mittwoch, 18. Februar 2004 01:19 schrieb Torsten Schneider:
 On Wed, Feb 18, 2004 at 01:16:03AM +0100, Jan Trippler wrote:
  Das ist ein tödlicher Irrtum ;-) In einem Shell-Script werden
  natürlich auch für _jeden_ Befehl, der nicht Shell-Builtin ist,
  Childs gestartet, also im Allgemeinen deutlich mehr als in
  Perl-Programmen (Du musst ja die Zeile parsen - z. B. per cut).

 Siehe mein Beispiel zu dem Thema, das benutzt nur builtin
 Funktionen, lediglich das, was ich durch die drei Punkte
 angedeutet habe, könnte externe Befehle enthalten.

 Wenn es nur darum geht, Verzeichnisse anzulegen und da mit echo
 etwas reinzuschreiben, ist nur mkdir ein externes Binary.

Ich habe Deine Mail wohl noch nicht gekiegt - jedenfalls kann ich 
sie nicht finden. Es ist mir klar, dass viele Funktionen auch mit 
Shell-Builitins realisiert werden können, an der grundsätzlichen 
Aussage ändert das aber nichts - egal ob per system aus Perl, C 
oder PHP heraus oder ob als Programm-Aufruf aus einem Shell-Script 
- es ist immer ein Fork (deshalb ist es auch gut, nach Möglichkeit 
Funktionen zu nutzen, die die Programmiersprachen als Builtin oder 
Modul oder Bibliothek mitbringen - das wollte ich in meinem 
Beispiel auch nur demonstrieren).

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Mal wieder find...

2004-02-16 Diskussionsfäden Jan Trippler
Am Montag, 16. Februar 2004 19:03 schrieb Andreas Schmidt:
[...]
 Ich bilde mir ein, ein kleines bisschen Englisch zu koennen, und
 bin dafuer beruechtigt, mit meinen Referenzen eher pedantisch
 umzugehen.
[viel Interpretation]
 Diese Perspektive erlaubt es mir, guten Gewissens das Semikolon
 nicht den in der man page als zwingend schuetzenswert
 dargestellten Zeichen zuzurechnen.
[...]

Und was nutzt Dir diese Interpretation - mag sie noch so guten 
Gewissens gezeugt worden sein? Sie ist schlicht und einfach falsch. 
Das Semikolon _muss_ vor der Shell (zumindest Bourne-, Korn-Shell 
und bash) geschützt werden, entweder mit \; oder mit ';' (ich ziehe 
1. Variante vor - 1 Zeichen weniger ;) - sonst funktioniert Dein 
exec einfach nicht. Der find lässt sich nicht durch mehr oder 
weniger spitzfindige man-Page-Interpretationen beeindrucken - und 
die Shell schon gar nicht ;)

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Konqueror zickt nach systemnotrettung (Hardlinks missing?)

2004-02-16 Diskussionsfäden Jan Trippler
Am Montag, 16. Februar 2004 18:41 schrieb Markus Hansen:
 Am Montag, 16. Februar 2004 18:14 schrieb Heike C. Zimmerer:
  Michelle Konzack [EMAIL PROTECTED] writes:
   cd das_verzeichnis
   find -type l -exec rm -f {} ';'
  
   (l entfernt nicht nur symbolic links sondern auch hard...)
 
  Nö. -type l erkennt nur symbolische Links.
 
  (Bei Hardlinks gibt es gar keine Möglichkeit, den Link vom
  Original zu unterscheiden.)
 Und was mache ich nun? Ist mein System jetzt im Eimer?
 Oder kann man noch mit vertretbarem Aufwand was tun?

Ich habe den Thread nicht mitverfolgt - Du willst Hardlinks finden? 
Dann hilft Dir vielleicht die -links Option des find zusammen mit 
dem printf und einem sort:

find . -type f -links +1 -printf %i %p\n | sort

-type f - nur Dateien (Verzeichnisse haben immer mind. Linkcount 2)
-links +1 - Linkcounter  1
-printf %i %p - gibt I-Node und Dateinamen aus

sort - Sortiere nach I-Node + Dateinamen; so kriegst Du eine Liste, 
in der die Dateien hintereinander stehen, die die gleiche I-Node 
haben (genau das sind die Hardlinks), nur die zu löschenden 
solltest Du doch manuell auswählen.

hth
Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: sed - Denkfehler... :-/

2004-02-16 Diskussionsfäden Jan Trippler
Am Dienstag, 17. Februar 2004 05:37 schrieb Michelle Konzack:
 raff nicht, warum das nicht funktioniert:

 OUT_LINE=`echo $IN_LINE |sed s/MICHELLE/\ MICHELLE/`

 'sed' will ums verrecken nicht 'MICHELLE' gegen eine gespacete
 ' MICHELLE' austauschen...

Mal abgesehen davon, dass das Escapen von Blanks nicht nötig ist - 
bei mir funktionierts:

[EMAIL PROTECTED]:~ IN_LINE=abcMICHELLE xyz
[EMAIL PROTECTED]:~ OUT_LINE=`echo $IN_LINE |sed s/MICHELLE/ MICHELLE/`
[EMAIL PROTECTED]:~ echo $OUT_LINE
abc MICHELLE xyz

Es kann daran liegen, dass MICHELLE am Anfang der Zeile liegt, 
dann würde der nachfolgende echo den Blank wieder eliminieren:

[EMAIL PROTECTED]:~ IN_LINE=MICHELLE xyz
[EMAIL PROTECTED]:~ OUT_LINE=`echo $IN_LINE |sed s/MICHELLE/ MICHELLE/`
[EMAIL PROTECTED]:~ echo $OUT_LINE
MICHELLE xyz
[EMAIL PROTECTED]:~ echo $OUT_LINE
 MICHELLE xyz

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Wie eine Datei Zeile für Zeile auslesen ?

2004-02-16 Diskussionsfäden Jan Trippler
Am Montag, 16. Februar 2004 23:45 schrieb Reinhold Plew:
 Michelle Konzack schrieb:
[...]
  wie kann man in einem Bash-Script eine Datei Zeile für Zeile
  von der ersten bis zur lezten auslesen ?

 versuch es mal mit awk, ist echt praktisch:

 #script
 FILE=inputfile
 C_FILE=outputfile

 cat ${FILE} | \

Useless use of cat award ;-) Das kannst Du dem awk gleich als 
Argument mitgeben.

 awk -v CFILE=$C_FILE ' \

Die Ausgabe des awk kannst Du auch gleich hinten an den awk hängen.

 BEGIN {
FS=[:[EMAIL PROTECTED] # Falls Du die Felder der Zeile trennen möchtest

Dafür gibt es eine awk-Option.

printf(echo 'Script gestartet...')  CFILE

Huch? Was macht der echo innerhalb des printf? Soll die Ausgabe ein 
Shell-Scipt werden?

 }
 {
printf(%s, $0)   C_FILE # Ausgabe der gesamten
 Zeile printf(%s - %s, $1, $3)  C_FILE # Ausgabe Feld 1 + 3 }
 END {
printf(echo Script beendet...)  CFILE
 }
 #cript Ende

 awk -v CFILE=$C_FILE ' \

Die Ausgabe des awk kannst Du auch gleich hinten an den awk hängen.

 BEGIN {
FS=[:[EMAIL PROTECTED] # Falls Du die Felder der Zeile trennen möchtest

Dafür gibt es eine awk-Option.

printf(echo 'Script gestartet...')  CFILE

Huch? Was macht der echo innerhalb des printf? Soll die Ausgabe ein 
Shell-Scipt werden? Dann sollte man aber noch ein \n einbauen, der 
printf macht das nämlich nicht automatisch.

 }
 {
printf(%s, $0)   C_FILE # Ausgabe der gesamten
 Zeile printf(%s - %s, $1, $3)  C_FILE # Ausgabe Feld 1 + 3 }
 END {
printf(echo Script beendet...)  CFILE
 }

Hier fehlt noch mindestens der ', der das awk beendet:
} '

Meine Version:
FILE=inputfile
C_FILE=outputfile

awk -F [:[EMAIL PROTECTED] '\
BEGIN {
  printf echo 'Script gestartet...'\n;
}
{
  printf %s\n, $0; # alternativ: print $0;
  printf %s - %s\n, $1, $3;
END {
   printf echo Script beendet...\n;
} ' $FILE $C_FILE

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Programmaufruf

2004-02-15 Diskussionsfäden Jan Trippler
Am Sonntag, 15. Februar 2004 16:08 schrieb Joachim Drechsel:
 Ich habe ein C-Progrämmelchen.

 Übersetzten mit  gcc tt.c -o tt
 ergibt ein ausführbares Programm tt

 Starten kann ich das nur mit  ./tt, nicht (wie bei DOS) mit
 tt. Ist das so normal ?

Ja, das ist normal. Der aktuelle Pfad (.) ist nicht automatisch in 
$PATH enthalten und nur die Programme, die in Verzeichnissen 
stehen, die in $PATH aufgeführt sind, werden ohne epxlizite 
Pfadangabe gefunden.

Du kannst das aktuelle Verzeichnis in $PATH mit aufnehmen:
export PATH=$PATH:.

wenn Du das z. B. in ~/.bash_profile schreibst, gilt das auch 
dauerhaft nach jedem Login.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Noch einer ...

2004-02-15 Diskussionsfäden Jan Trippler
Am Sonntag, 15. Februar 2004 16:46 schrieb Joachim Drechsel:
 Hi,

 ich probiere gerade, ein kleines Tool auf Debian zu kompilieren.
 Ich habe das von Windows einfach mal rüberkopiert und jetzt geht
 der Firlefanz mit der Groß -und Kleinschreibung von Dateinamen
 und Headerfiles los.Windows läßt das zwar zu, wertet das aber
 nicht aus (es ist da egal). Nur, beim Kopieren bleibt das etwas
 chaotisch.

 Gibt es da einen Befehl so in etwa lowercase all filename ?

ja, die bash (ungetestet) ;)

find . -depth -print | while read f; do
  lcf=`dirname $f`/`basename $f | tr '[:upper:]' '[:lower:]'`
  test -e $lcf || mv $f $lcf
done

Guck Dir bitte vor Benutzung an, was die Schleife macht, das erspart 
Dir unangenehme Überraschungen.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Programmaufrufe

2004-02-15 Diskussionsfäden Jan Trippler
Am Sonntag, 15. Februar 2004 16:32 schrieb Joachim Drechsel:
 Wenn  ich das richtig verstehe, funktionieren die Programmaufrufe
 bei Linux etwas anders wie bei DOS. 

Ja, was hast Du erwartet? ;-) Gut so.

 Da sucht es erst mal im
 aktuellen Verzeichnis und dann erst in den Suchpfaden (PATH).
 mit ./ referenziere ich dann bei Linux das aktuelle Verzeichnis ?

Ja.

 Bei DOS kann ich mehrfach vorkommende Dateinamen haben, je nach
 Extension werden die dann ausgeführt. Bei Linux richtet es sich
 nur nach den Fileflags (soweit ich jetzt überblicke). Der gcc
 legt das aber gleich als executable ab, chmod braucht's da nicht.

Auch in DOS kannst Du keine mehrfach auftretenden Dateinamen haben - 
die Extension gehört nämlich mit zum Namen (.bat, .sys, .com, 
.exe). Der Unterschied ist, dass unter Unix die Dateiendung (die 
als solche gar nicht existiert - der Punkt ist ein normales Zeichen 
im Dateinamen wie alle anderen auch) nicht automatisch vom Kernel 
ausgewertet wird.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: selbstständige Prozess-Aktivitäten

2004-02-11 Diskussionsfäden Jan Trippler
Am Mittwoch, 11. Februar 2004 13:30 schrieb Werner Mahr:
 Am Mittwoch, 11. Februar 2004 02:00 schrieb Jan Trippler:
  crontab -u user_ohne_root_rechte

 Wenn ich einen Einrag vornehme, mache ich das auch so (mit -e
 dazu). Aber das System hat zwei Möglichkeiten:
 1. Es schreibt die Einträge da wo es sie schreibt

? - Das steht in der man-Page: /var/spool/cron/crontabs/user

 2. Es geht die angelegten Benutzer mit den benötigten Rechten
 durch, und sucht sie einen aus. Legt bei diesem einen Eintrag an,
 und überwacht diesen, damit es den Eintrag verschieben kann falls
 der Nutzer gelöscht wird.

Wie soll das denn gehen? Woher soll das System wissen, wohin ein 
crontab-Eintrag zu verschieben ist? Normalerweise ist es so, dass 
mit einem Benutzer auch seine Aktivitäten (inkl. cron-Jobs) vom 
System verschwinden sollten. Und /etc/crontab kannst Du nun mal 
(AFAIK) mit _keinem_ Programm warten, Du kannst ja nicht mal nen 
find -user drauf losjagen oder nen crontab -r. Für dieses Ding hast 
Du nur eine Möglichkeit: sie als root mit nem Editor zu bearbeiten.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: selbstständige Prozess-Aktivitäten

2004-02-11 Diskussionsfäden Jan Trippler
Am Mittwoch, 11. Februar 2004 05:22 schrieb Sacher Khoudari:
 Hallo Christian!

 Christian Christmann wrote:
  erstmals danke für Deine Antwort. Aber das Problem auf meinem
  Rechner ist, dass die Verzeichnisse /etc/cron.X für den
  normalen User keine Schreibrechte haben. Somit kann ich als
  nicht-root keine Skripte in die entsprechenden Verzeichnisse
  einfügen. D.h. theoretisch bin ich wieder an meinem
  Ausgangspunkt und frage mich, warum die Skripte, die sich in
  den Verzeichnissen befindent nicht einfach in der root-crontab
  festgelegt werden.

 Ich glaube es geht hier um 2 verschiedene Sachen: Cronjobs für
 die Menschen und Cronjobs für den Rechner.

 In /etc/cron.(.*) liegen Scripte die von Programmen beim
 Installieren reingelegt werden damit sie überhaupt laufen können
 (was bringt dir beispielsweise ein Logrotate wenn es nicht
 periodisch aufgerufen wird?), der Zeitpunkt dafür ist dem Script
 jedoch egal - hauptsache es wird einmal stündlich, täglich,
 wöchentlich, etc aufgerufen. Root kann selber sagen zu welcher
 Zeit die Script-Queue abgearbeitet werden soll, ob de täglichen
 Scripte während der Mittagspause, kurz nach Feierabend oder gar
 früh morgens um 5 wenn (fast) alles schläft laufen sollen (wie
 jetzt bei mir gerade... :) ). In der /etc/crontab steht dann so
 ähnliches drin, obwohl ich auch noch nicht ganz kapiert habe was
 der Unterschied zur root-Crontab sein soll (ausser dass man hier
 einen expliziten User angeben kann - geht auch mit `su user ;
 kommando`).

Alles, was man in /etc/crontab machen kann, kann man auch in der 
crontab von root oder anderen Usern machen. Und für deren 
Bearbeitung kann man eben crontab nutzen, was für /etc/crontab 
nicht geht (ungetestet):

# neuen Job einfügen
( crontab -l; echo 0 * * * * /pfad/zum/script ) | crontab -

# Job entfernen
crontab -l  | grep -v /pfad/zum/script | crontab -

 In die Crontab kann jeder User sein eigenes Zeugs reinpacken was
 aber nichts mit dem eigentlichem System zu tun hat, bei mir wird
 beispielsweise alle 5 Minuten getmail aufgerufen was meine Mails
 runterlädt, und zweimal die Woche werden Backups meiner Daten
 gemacht. Ne Zeit lang habe ich mich per `beep` auch per Cronjob
 wecken lassen - ich bin ein Geek, ich weiss :)

Diese Klassifizierung finde ich etwas - hm - an den Haaren 
herbeigezogen. Was spräche dagegen, die cron.daily, ... Jobs in die 
crontab von root zu packen? Was spricht dagegen, die cron.daily, 
... Mechanismen auch für eigene Jobs zu nutzen, die nichts mit dem 
System zu tun haben? Du kannst doch einen Job mit dem gleichen 
Mechanismus ausetzen, der in Verzeichnisse geht, die Du als 
Benutzer beschreiben kannst.

 Klar, nun kann man sagen dass Root ja der Gott des Rechners ist
 und alle Cronjobs die für den Rechner sind auch für das
 Wohlbefinden von Root ist... aber stell dir mal vor jedes
 Programm würde sich selber in die Crontab von Root eintragen,
 seinen eigenen Termin festlegen und evtl. das was Root selbst
 eingetragen hat bei der Deinstallation löschen... da würde wohl
 so mancher Admin die Kriese kriegen :(

Wenn es sauber gemacht wird, kriegt auch keiner die Krise (s. o.)

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: selbstständige Prozess-Aktivitäten

2004-02-11 Diskussionsfäden Jan Trippler
Am Mittwoch, 11. Februar 2004 09:24 schrieb Jan Kesten:
[...]
 Fall 1, die /etc/crontab: Hier stehen alle Cronjobs für das
 System als solches drin und sie werden alle als Root ausgeführt.
 Das sind die verschiedensten Dinge drin. Gut, man könnte diese
 ganzen Jobs ohne weiteres auch in die User-Crontab von root
 schreiben - nur gehören die ja eigentlich zum System und nicht
 zum User Root (hier kann man sich streiten, ich find's so etwas
 übersichtlicher)

Wozu dann das Feld user?

 Fall 2, die /etc/cron.d Crontabs: Hier stehen Cronjobs für
 einzelne Programme drin (bei mir z.B. exim (Queue-Lauf),
 PostgeSQL etc.). Und hier werden die einzelnen Skripte schon als
 ein anderer User ausgeführt (bei exim als User mail z.B.). Dies
 ist u.a. auch nötig, weil im Beispiel von exim die Mailqueue ja
 schon etwas öfter als einmal am Tag laufen soll. Auch hier könnte
 man natürlich die einzelnen Crontabs wieder zu den Benutzern
 packen (allerdings nicht so ohne weiteres als root, da diese hier
 ja nicht unbedingt als root laufen sollten/dürfen). Haken an der
 Sache ist wieder die Übersichtlichkeit: So stehen alle zu
 installieren Paketen gehörenden Conjobs an einer Stelle (wo ich
 genau weiss, wo ich suchen kann), andernfalls müsste ich eben
 wissen, bei welchen Usern die Crontabs liegen. Aber dies ist
 Debian-spezifisch :-)

Und es wird immer unübersichtlicher ;) Wenn Du als User cron-Jobs 
ausführen lassen willst, bleibt Dir nur das crontab-Kommando - und 
das schreibt nach /var/spool/cron/crontabs/user. Weder an 
/etc/crontab noch an /etc/cron.d kommst Du als User ran, als root 
nur mit einem Editor. Jetzt zähl mal zusammen, an wievielen Stellen 
unter Linux / Debian cron-Jobs liegen. Wenn es - wie unter den 
kommerziellen Unixen üblich - einheitlich per crontab-Kommando 
gemacht würde, hättest Du exakt _1_ Stelle, wo Du nachschauen 
musst, nämlich im Verzeichnis /var/spool/cron/crontabs! Und das 
würdest Du nicht mal brauchen, weil Dir ein crontab -l [-u user] 
nämlich alles anzeigen würde. Siehst Du die Jobs aus /etc/cron.d 
oder /etc/crontab irgendwo? Nein. Was ist daran übersichtlicher 
oder bequemer?

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: selbstständige Prozess-Aktivitäten

2004-02-11 Diskussionsfäden Jan Trippler
Am Mittwoch, 11. Februar 2004 22:10 schrieb Reinhold Plew:
[...]
 ich finde das schon sehr übersichtlich, in /etc/crontab alle
 Jobs, welche für das System wichtig sind, in /etc/cron.d alle
 Jobs von installierten Programmen (weiss ich also, wo ich die
 Jobs der Programme finde und Erweiterungen unterbringen kann) und
 unter /var/spool/cron/crontabs/ die Jobs, welche von $user
 angelegt wurden, das können natürlich auch spezielle root-Jobs
 sein.

Wer ist *das System*? Ich habe 3 verschiedene Stellen, 2 
verschiedene Syntax-Regeln und komme nur an eine mit den 
ursprünglich dafür vorgesehenen Programmen ran. Toll, wirklich :( 
Das man Kommentare in die crontabs schreiben kann (und das wird 
auch unter Unix von vielen Programmen so gemacht), scheint auch 
nicht mehr bekannt zu sein. Dann ist es nämlich ein Leichtes, die 
verantwortliche Anwendung zu identifizieren.

 Also habe ich doch im Gegensatz zu komerziellen Unixen den
 besseren Überblick darüber, welche Jobs vom System, von
 Anwendungen und von $user sind.

Nein, ich such mir nen Wolf, wenn ich rauskriegen will, was 
überhaupt an Jobs läuft. Ich kann schlechter automatisieren, weil 
ich nur an User-Crontabs mit Kommandos rankann und alles andere per 
sed / awk / perl (mit den entsprechenden Risiken) unter root 
erledigen muss. Ich muss, wenn ich rauskriegen will, welche Jobs 
unter einer Benutzerkennung laufen, das User-Feld parsen, statt 
einfach in _1_ Datei nachschauen zu können.

 Das finde ich gut gelöst und ich bin auf vielen Plattformen zu
 Hause.

Ich auch und für mich ist dieses Linux/Debian-*Feature* das einzige, 
was mich _richtig_ nervt.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: selbstständige Prozess-Aktivitäten

2004-02-11 Diskussionsfäden Jan Trippler
Am Donnerstag, 12. Februar 2004 00:19 schrieb Reinhold Plew:
[...]
 warum nervt Dich das? Jedes BS hat so seine Eigenheiten, ich
 betrachte das etwas abstrakt und bin bisher damit sehr gut
 gefahren. Und Du solltest auch berücksichtigen, dass Linux der
 Kernel ist und Debian die Distribution. Schau mal bei
 [SuSE|FreeBSD|RedHat], da sieht alles schon wieder anders aus.
[...]

Zumindest SuSE hat auch die /etc/crontab + /etc/cron.d (ist bei mir 
aber leer). Es nervt mich deshalb, weil ich es so nützlich  wie ein 
Nasejucken im Raumanzug empfinde. In der Regel sind die 
GNU-Erweiterungen der Unix-Befehle äußerst hilfreich und 
_vereinfachen_ die Arbeit enorm - in diesem Fall halte ich es 
(Achtung: IMHO-Modus!) für das genaue Gegenteil.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: selbstständige Prozess-Aktivitäten

2004-02-10 Diskussionsfäden Jan Trippler
Am Dienstag, 10. Februar 2004 23:41 schrieb Christian Christmann:
[...]
 Warum existieren für jeden Benutzer crontab Dateien und
 zusätzlich die in den Verzeinissen /etc/cron.X . Für mich sind
 die letztgenannten überflüßig, da man ja all diese cron-Jobs z.B.
 in der root-crontab unterbringen könnte.

Du verwechselst was: In den /etc/cron.*-Verzeichnissen liegen keine 
crontab-Dateien, sondern die Scripts / Programme, die durch die 
entsprechenden Jobs in /etc/crontab aufgerufen werden. Das 
eigentlich Kranke ist die /etc/crontab - ein völlig überflüssiger 
und nutzloser Wurmfortsatz in Linux. Das wäre mit der normalen 
crontab von root (/var/spool/cron/crontabs/root)  genauso und 
kürzer zu handeln. Man kommt mit keinem Kommando an diese Datei ran 
(crontab geht nur auf die User-crontabs), nur root kann sie 
editieren, das Format stimmt nicht mit dem der *normalen* crontabs 
überein, regelmäßig gibt es Verwirrung um die darüber laufenden 
Jobs ... Ich kapiere nicht, warum es dieses Mistding überhaupt gibt 
und ich hab noch nie ne vernünftige Erklärung dafür gelesen.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: selbstständige Prozess-Aktivitäten

2004-02-10 Diskussionsfäden Jan Trippler
Am Mittwoch, 11. Februar 2004 01:03 schrieb Werner Mahr:
 Am Dienstag, 10. Februar 2004 23:41 schrieb Christian Christmann:
  Jetzt habe ich aber eine Verständnisfrage:
  Warum existieren für jeden Benutzer crontab Dateien und
  zusätzlich die in den Verzeinissen /etc/cron.X . Für mich sind
  die letztgenannten überflüßig, da man ja all diese cron-Jobs
  z.B. in der root-crontab unterbringen könnte.

 Schuss ins Blaue: Damit nicht Programme die keine root-Rechte
 brauchen mit root-Rechten laufen?

crontab -u user_ohne_root_rechte

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: cron und e-mails

2004-01-26 Diskussionsfäden Jan Trippler
Am Montag, 26. Januar 2004 08:32 schrieb Sebastian Heinlein:
 Am Mo, den 26.01.2004 schrieb Michelle Konzack um 07:02:
  Hallo,
 
  ich habe jede menge cronjobs auf meinen Server laufen und
  bkomme folgedessen ziehmich viele Messages (rund 300 pro
  Stunde). Vor allem einige Cronjobs weden mintlich
  ausgefhrt...
 
  Wie kann ich cron dazu berreden, mir NUR im strungsfall eine
  E-Mail zukommen zu lassen ?

Was ist fr Dich ein Strungsfall? Returncode != 0? Das wre 
zumindest eine klassische Erfolgskontrolle - die Scripts mssen das 
aber sauber abhandeln. In diesem Fall kann man wie folgt verfahren 
(ungetestet) - eine Zeile:

*/5 * * * * root LOG=/tmp/script$$.log; /pfad/zum/script /dev/null 
2$LOG || /bin/cat $LOG; /bin/rm $LOG

Die Fehlermeldungen werden protokolliert und nur bei RC != 0 per cat 
rausgejagt. 

 Indem Du den Stdout der Cron-Skripte nach /dev/null umleitest:

 */5 * * * * root SCRIPT.SH /dev/null

 Cron verschickt nur eine E-Mail, wenn Meldungen ber stdout oder
 stderr anfallen.

Das haut nur dann richtig hin, wenn die Scripts so sauber sind, dass 
sie sich um anfallende Fehlermeldungen selbst kmmern und nur das 
Wesentliche durchlassen.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: mp3's vergleichen, cmp geeignet?

2004-01-25 Diskussionsfäden Jan Trippler
Am Sonntag, 25. Januar 2004 14:01 schrieb Andreas Metzler:
[...]
 Kleiner Tipp: echo -e ist boese, da es nicht mit jeder Shell
 funktioniert:
[...]
 Nimm besser printf(1).

Der ist aber erst recht nicht kompatibel. Bourne-Shell und 
Korn-Shell kennen das nicht. Wenn man kompatibel bleiben will, 
benutzt man awk, den gibts in jedem Unix und er funktioniert 
(solange man auf die GNU-Erweiterungen verzichtet) überall 
identisch.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: /var/log/boot (oder anderes bootlog) fehlt

2004-01-25 Diskussionsfäden Jan Trippler
Am Sonntag, 25. Januar 2004 18:46 schrieb Lars Weissflog:
 vielleicht habe ich ja was verpeilt (mit Sicherheit sogar), aber
 als ich das letzte Mal in mein bootlog geschaut habe (das war so
 vor etwa zwei Jahren, damals noch auf SuSi), lag das unter
 /var/log/boot.msg wenn mich nicht alles täuscht. Nun habe ich
 hier den Cowboy, aber so ein file gibt es nicht mehr. Auch nichts
 anderes was mir die Boot-Meldungen wieder gibt (abgesehen von
 dmesg natürlich, aber da ist ja nicht alles drin)

Suchst Du vielleicht /var/log/dmesg?
Oder einfach mal dmesg aufrufen.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Frontend zu mysql

2004-01-24 Diskussionsfäden Jan Trippler
Am Samstag, 24. Januar 2004 17:46 schrieb Ulrich Wiederhold:
 ich habe hier mysql laufen, auf den ich bisher immer via
 Perlskript zugegriffen habe.

 Jetzt suche ich ein Frontend, welches mir unter X grafisch den
 Zugriff auf meinen mysql-Server erlaubt.
 Ich möchte Datenbanken verwalten und anlegen können sowie Daten
 eingeben.

Schau Dich mal auf den mysql-Seiten um, die haben eine neue 
grafische Oberfläche rausgebracht (MySQL Administrator):
http://www.mysql.de/products/administrator/

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: crontab problemchen

2004-01-22 Diskussionsfäden Jan Trippler
Am Freitag, 23. Januar 2004 00:42 schrieb Reinhold Plew:
 Michelle Konzack schrieb:
  Hallo,
 
  muß ein Program alle 15m, 60m, 360m und 1440m starten, wobei
  ich es mit parametern aufrufen muß, wie
 
  5  0* * * root /usr/sbin/program 15m 60m 360m 1440m
  5  6,12,18  * * * root /usr/sbin/program 15m 60m 360m
  5  1-5,7-11,13-17,19-23 * * * root /usr/sbin/program 15m 60m
  20,35,50 *  * * * root /usr/sbin/program 15m


 was soll hier root?
 normalerweise steht hier direkt der Aufruf des Programms

Kommt drauf an, in welcher crontab es steht. In /etc/crontab (der 
schlimmsten Entgleisung von Linux IMHO) ist die Syntax richtig, in 
den User-Crontabs stimmt Deine Aussage. Wenn die Jobs also mit dem 
crontab-Kommando angelegt wurden, landen sie in der User-Crontab, 
und dann ist die Syntax verkehrt.

@Michelle: Schau mal in die Mail von root und in die 
/var/log/messages, da sollten im Normalfall Fehlermeldungen 
auftauchen.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: /var/log/ anzeigen aus Konsole

2004-01-13 Diskussionsfäden Jan Trippler
Am Dienstag, 13. Januar 2004 20:50 schrieb Dirk Schleicher:
 ich weiß, das ist bestimmt einfach aber ich kann nichts finden,
 auch bei Google.
 Ich möchte die wichtigsten Log- Dateien mir über die Konsole
 anzeigen lassen. Mit welchen Befehlen kann ich das realisieren?

 Gibt es auch ein kleines Programm das die Meldungen zusammen
 fast, bzw. eine Auswahl zu Verfügung stellt?

Such mal nach logsurfer

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Verzeichnis mit vielen Dateien aufteilen

2004-01-03 Diskussionsfäden Jan Trippler
Am Samstag, 3. Januar 2004 13:33 schrieb frank paulsen:
 ich habe ein verzeichnis mit ein paar GB bildchen, die ich aus
 abpr gesaugt habe, fein saeuberlich auf DVD-groesse abgestimmt.

 fuer einen bekannten moechte ich das jetzt auf mehrere CD
 brennen, nur fehlt mir die kroenende idee, wie ich das jetzt auf
 unterverzeichnisse mit jeweils etwa 650MB aufteile.

 gibt es da ein fertiges script, oder muss ich selber ran?

Vielleicht hilft Dir das hier:
http://www.jan-trippler.de/quickies/files.html#010

Jan


-- 
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Bash-Scripting

2004-01-01 Diskussionsfäden Jan Trippler
Am Donnerstag, 1. Januar 2004 22:11 schrieb Michelle Konzack:
 ich versuche gerade folgendes:

 eine Datei:

 # album.alb
 T1=text1
 T2=text2
 T3=text3

 ein Script:
 #!/bin/bash
 source album_001.alb
 count=0
 while [ $count -lt 17 ] ; do
 let count=count+1
 SONG=T$count
 echo $SONG
 done

Ich weiss zwar nicht, was Du als Ergebnis haben willst (Du verrätst 
es uns ja nicht ;), vermute aber mal, dass in $SONG text1, text2 
usw. stehen soll.

 Also die Schleife funktioniert... - Nur nicht die Zeile
 SONG=T$count Die BASH sagt mir jedesmal:

 ./script: =T1: command not found

 Also ich gehe mal davon aus, das $count von einem arithmetischen
 Wert in eine Zeichenkette umgewandelt werden muß. (richtig ?)

Nö.

schnipp
#! /bin/bash
. album.alb
for i in `seq 0 16`; do
  SONG=`eval echo '$T'$i`
  echo $SONG
done
schnapp

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: /bin/sh: bad interpreter: Permission denied

2003-12-16 Diskussionsfäden Jan Trippler
Am Dienstag, 16. Dezember 2003 20:43 schrieb Klaus Becker:
  Wie die Partition unter Knoppix gemountet wird hat mit Mandrake
  nichts zu tun.

 Sicher, aber unter knoppix ist sie exec gemountet.

Evtl. mit der Option *users*? Dann ist sie IMHO automatisch noexec, 
dann nutzt auch die *exec*-Option nichts (wie gesagt - IMHO).

Jan


-- 
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: GPL (was: [OT] Ascii-Kodierung von Email-Adressen gegen Spam-Robots)

2003-11-13 Diskussionsfäden Jan Trippler
Am Donnerstag, 13. November 2003 07:50 schrieb Thomas Ulrich Nockmann:
  schnipp
  /* dieser Schnipsel unterliegt der GPL; siehe
 http://www.gnu.org/licenses/gpl.html */
  #include stdio.h
 
  int main (int argc, char **argv)
  {
char *pt;

 [...]

 unterliegt diese Schnipsel der GPL oder ist das ein Hinweis, wie man
 auf kurze Weise, ohne die ganze GPL hineinzukopieren, Kode unter die
 GPL stellen kann?

Sowohl als auch ;) Du musst nicht die Lizenz reinhängen, es reicht im 
allgemeinen ein Verweis auf die GPL. IIRC findest Du auf den Seiten von 
von gnu.org auch Muster, wie dieser Verweis aussehen könnte (ich 
schreibs bei so kleinen Schnipseln normalerweise nicht rein, das lohnt 
sich nicht).

[...]
 Und wenn ein aehnlicher Schnipsel tatsaechlich der GPL unterliegen
 wuerde und ich ihn daher nicht so, wie ich jetzt einfach mal
 gemacht habe, verwenden duerfte, wuerde es mich doch ein wenig an
 die Diskusionen bezueglich der Logik-Patente erinnern:-(

Ich weiss nicht ob man so kleine n-Zeiler überhaupt unter irgendeine 
Lizenz stellen sollte - ich finde, dass das übertrieben ist für 5 
Minuten Nachdenken ;) Wenn hier jemand ein Shell-Script postet, kommt 
ja auch nicht gleich der Hinweis auf eine Lizenz.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Inhalt einer Datei in eine andere kopieren...

2003-11-12 Diskussionsfäden Jan Trippler
Am Mittwoch, 12. November 2003 20:26 schrieb Manfred Gnädig:
 Wie kann ich denn mit Hilfe der Konsole, oder auch des mc
 den Inhalt einer Textdatei in eine andere Textdatei kopieren,
 ohne den Inhalt der Zieldatei zu überschreiben?

Meinst Du sowas?
cat datei1 datei2

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: [OT] Ascii-Kodierung von Email-Adressen gegen Spam-Robots

2003-11-12 Diskussionsfäden Jan Trippler
Am Mittwoch, 12. November 2003 21:53 schrieb Thomas Ulrich Nockmann:
 Mir ist schon klar, dass die meisten von Euch echte Profis sind und
 meine Ratschlaege nicht noetig haben; nichtsdestotrotz werde ich
 unten den Quelltext eines kleinen C-Programms anhaengen, mit dem
 man sich einfach seine Email-Adressen ascii-kodieren kann - oder
 auch Eigennamen z.B. - genaugenommen den ganzen sichtbaren Text
 eine Webseite.

 Das wird zumindest einige Spam-Robots(ich nenne sie einfach mal so)
 davon abhalten, Eure Webseiten erfolgreich nach gueltigen
 Email-Adressen hin abzuscannen.
[...]

Ich glaube eigentlich nicht, dass heutzutage sowas Robots noch aufhält, 
aber vielleicht hilft auch eine etwas kompaktere Version (ohne 
Längenbegrenzung)? ;)

schnipp
/* dieser Schnipsel unterliegt der GPL; siehe 
   http://www.gnu.org/licenses/gpl.html */
#include stdio.h

int main (int argc, char **argv)
{
  char *pt;

  if (argc  2)
  {
printf (\n\nAufruf: asciiit Email-Adresse\n\n);
return 1;
  }

  printf (\n\nAscii-kodiert lautet Ihre Email-Adresse: \n\n);

  for (pt = argv[1]; *pt; pt++) printf (#%d;,*pt);
  printf (\n\n);

  return 0;
}
schnapp

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Grep und regex

2003-11-07 Diskussionsfäden Jan Trippler
Am Freitag, 7. November 2003 10:44 schrieb Andreas Metzler:
 Andreas Schmidt [EMAIL PROTECTED] wrote:
  man grep sagt, dass es bei extended regular expressions
  vordefinierte
 
  Klassen von Zeichen gibt:
  Finally,  certain  named  classes of characters are predefined
  within bracket expressions, as follows.  Their names are self
  explanatory, and they are [:alnum:], [:alpha:], [:cntrl:], 
  [:digit:], [:graph:], [:lower:],  [:print:],  [:punct:],
  [:space:], [:upper:], and [:xdigit:].
 
  Da das alles ja so schoen self explanatory sein sollte, habe ich
  aus meiner urspruenglichen zeile folgendes gemacht:
 
 ps ax | grep -E ^[:space:]*$PROC
 
  Leider funktioniert das nicht. In diesem Fall hat zwar letztlich

 [...]

 For  example, [[:alnum:]]  means  [0-9A-Za-z],

 Beachte [[]]. Der ganze Absatz beschaeftigt sich damit, was fuer
 Zeichen *innerhalb* von [...] zulaessig sind, eben einzelne Zeichen,
 Bereiche A-Z und Klassen [:space:].

Ich will nur noch ergänzen, dass der Ausdruck
ps ax | grep -E ^[[:space:]]*$PROC
als auch 
ps ax | grep -E ^[ ]*$PROC
nicht zwingend eindeutig ist:

[EMAIL PROTECTED]:~$ PID=4
[EMAIL PROTECTED]:~$ ps ax | grep -E ^[[:space:]]*$PID
4 ?SW 0:00 [kswapd]
  401 tty1 S  0:00 /sbin/getty 38400 tty1
  402 tty2 S  0:00 /sbin/getty 38400 tty2
  403 tty3 S  0:00 /sbin/getty 38400 tty3
  404 tty4 S  0:00 /sbin/getty 38400 tty4
  405 tty5 S  0:00 /sbin/getty 38400 tty5
  406 tty6 S  0:00 /sbin/getty 38400 tty6
  407 ?S  0:00 /usr/sbin/apache
  408 ?S  0:00 /usr/sbin/apache
  409 ?S  0:00 /usr/sbin/apache
  410 ?S  0:00 /usr/sbin/apache
  411 ?S  0:00 /usr/sbin/apache

Besser ist es, auch nach der PID auf space zu prüfen:
[EMAIL PROTECTED]:~$ ps ax | grep -E ^[[:space:]]*$PID[[:space:]]
4 ?SW 0:00 [kswapd]

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Grep und regex

2003-11-07 Diskussionsfäden Jan Trippler
Am Freitag, 7. November 2003 20:29 schrieb Thorsten Haude:
 Moin,

 * Andreas Schmidt [EMAIL PROTECTED] [2003-11-07 10:06]:
 bin gerade ueber ein Problem mit meinen regular expressions bei grep
 gestolpert. Wollte in der Ausgabe von ps nach einer bestimmten pid
 suchen:
 
  PROC=`cat pid`
  ps ax | grep ^$PROC
 
 Das ganze funktionierte auch eine Weile -- bis auf einmal $PROC nur
 vierstellig war. Da es auch fuenfstellige pids gab und die Ausgabe
 rechtsbuendig ist (vor pid also white space war), wurde nichts mehr
 gefunden.

 Ich kann Dir nicht folgen. In Zeile 1 schreibst Du eine PID in die
 Variable, richtig? Dann wirst Du in Zeile zwei diese PID auch finden.
 Wo siehst Du, daß die Zahl der Ziffern ins Spiel kommt.

 Ich würde es allerdings so machen:
 ps -ef | grep `cat pid`

[EMAIL PROTECTED]:~$ cat pid
398
[EMAIL PROTECTED]:~$ ps -ef | grep `cat pid`
root   398 1  0 17:22 ?00:00:00 /usr/sbin/apache
www-data   407   398  0 17:22 ?00:00:00 /usr/sbin/apache
www-data   408   398  0 17:22 ?00:00:00 /usr/sbin/apache
www-data   409   398  0 17:22 ?00:00:00 /usr/sbin/apache
www-data   410   398  0 17:22 ?00:00:00 /usr/sbin/apache
www-data   411   398  0 17:22 ?00:00:00 /usr/sbin/apache
www-data   825   398  0 20:00 ?00:00:00 /usr/sbin/apache
www-data   840   398  0 20:41 ?00:00:00 /usr/sbin/apache
www-data   841   398  0 20:41 ?00:00:00 /usr/sbin/apache
www-data   842   398  0 20:41 ?00:00:00 /usr/sbin/apache

Das Problem ist weniger das Finden als das Finden der gesuchten PID. Da 
kommt auch die Stellenzahl der PID ins Spiel: Wenn Du z. B. nach der 
PID 3 mit Deiner Methode suchst, kriegst Du wohl noch ein paar mehr 
unzutreffende Treffer.

BTW - ist mir grad eingefallen. Mit
ps --no-headers -p `cat pid`
kriegt man ganz ohne grep den gewünschten Prozess.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Grep und regex

2003-11-07 Diskussionsfäden Jan Trippler
Am Freitag, 7. November 2003 21:56 schrieb Thorsten Haude:
 * Jan Trippler [EMAIL PROTECTED] [2003-11-07 21:24]:
 Das Problem ist weniger das Finden als das Finden der gesuchten PID.
  Da kommt auch die Stellenzahl der PID ins Spiel: Wenn Du z. B. nach
  der PID 3 mit Deiner Methode suchst, kriegst Du wohl noch ein paar
  mehr unzutreffende Treffer.

 Weil die 3 nur eine Stelle hat?

Ja, weil es PIDs gibt, die 2-, 3- oder 4-stellig sind und auch ne 3 
beinhalten.

 Klar, an PPIDs hatte ich nicht gedacht, aber um n-stellige Zahlen
 geht's trotzdem nicht.

Hast Du es denn mal ausprobiert? Natürlich gehts darum:
[EMAIL PROTECTED]:~$ cat pid
3
[EMAIL PROTECTED]:~$ ps -ef | grep `cat pid`
root 3 1  0 17:20 ?00:00:00 [kupdate]
daemon 113 1  0 17:21 ?00:00:00 /sbin/portmap
...
  274 ?S  0:00 /usr/sbin/rpc.mountd --no-nfs-version 3
...

Merkst Du was?

Die eleganteste Möglichkeit ist die -p Option des ps, aber wenn man das 
nicht will (oder kann - z. B. wenn man aus irgend einem Grund nur die 
BSD-Optionen zur Verfügung hat), muss man mit grep  Co. arbeiten. Und 
dann kriegt man die betreffende Zeile nur raus, wenn man 
berücksichtigt, dass die PIDs (mit BSD-Optionen) rechtsbündig mit 
führenden Leerzeichen in der 1. Spalte stehen. Man _muss_ auf die erste 
Spalte greppen, sonst kriegt man nämlich Zeilen, die überhaupt nix mit 
der gesuchten PID zu tun haben - siehe oben. Das Problem des OP bestand 
ja gerade darin, dass er die PID am Zeilenanfang gesucht hat und 
plötzlich (nämlich dann, wenn die 1. 5-stellige PID in der Prozessliste 
auftaucht) die 4-stelligen nicht mehr links am Zeilenanfang stehen, 
sondern ein Leerzeichen davor sitzt.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Grep und regex

2003-11-07 Diskussionsfäden Jan Trippler
Am Samstag, 8. November 2003 00:01 schrieb Thorsten Haude:
 * Jan Trippler [EMAIL PROTECTED] [2003-11-07 22:39]:
 Merkst Du was?

 Merkst Du noch was? Anstatt an irgendwelchem Unsinn rumzukritteln,
 den Du an meinen Ausführungen findest, solltest Du Dir lieber das
 Problem ansehen.

 (Mann, als ob ich hier gefragt hätte, wie man ein ps grept.)

Nein, Du hast das Problem des OP nicht kapiert und ganz offensichtlich 
auch nicht kapiert, warum Dein Vorschlag Unsinn zurückliefert. Gehab 
Dich wohl, jetzt reichts mir endgültig.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: chmod wirkungslos

2003-10-28 Diskussionsfäden Jan Trippler
Am Dienstag, 28. Oktober 2003 23:33 schrieb Son-Gokuu:
[chmod auf gemounteter Partition]
 woran kann das liegen? muss ja irgendwie an der festplatte liegen,
 denn auf meiner anderen, auf der debian installiert ist, funktioniert
 ja alles! filesystem ist auch nichts ungewöhnliches, fat32... bin
 momentan also ratlos!

Die wichtigste Info kam im letzten Satz: Was ist fat32? Ein 
DOS-Dateisystem! Das kann mit den Unix-Rechten nichts anfangen - sowas 
gibts da nun mal nicht. Du kannst die Rechte nur global in der fstab 
bzw. beim Mounten ändern. Such mal in *man mount* nach dem Stichwort 
*umask*.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Dateien eines Verzeichnisses durchsuchen....

2003-10-13 Diskussionsfäden Jan Trippler
Am Sonntag, 12. Oktober 2003 23:25 schrieb Juergen Salk:
 Jan Trippler [EMAIL PROTECTED] wrote:
  Im Verzeichnis /home/www/web570 muß es eine Datei geben in der
  MeineDomain.net eingetragen ist.
  Wie kann ich diese Datei finden?
 
  find /home/www/web570 -type f -exec grep \-l MeineDomain.net {}
  \;
 
  Dieses Rezept ist nach meiner Schätzung so oft hier aufgetaucht,
  dass man sich nen Schal draus stricken kann.

 Ehrlich? Dann sollte man endlich mal eine bessere Lösung posten:

find /home/www/web570 -type f | xargs grep -l MeineDomain\\.net

Nur dass im Unterschied zu Deiner Version meine ohne weiteres mit 
Leerzeichen in Dateinamen klar kommt. Wenn schon, dann musst Du die 
hier bereits gepostete Version mit print0 einsetzen.

Jan

NB: Es ging mir nicht primär um die _beste_ oder _ideale_ Version, 
sondern darum, dass das Problem mit einem Blick in die man-Pages zweier 
hier ständig auftauchender Kommandos zu lösen ist.


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Dateien eines Verzeichnisses durchsuchen....

2003-10-13 Diskussionsfäden Jan Trippler
Am Montag, 13. Oktober 2003 22:02 schrieb Juergen Salk:
 Philipp Meier [EMAIL PROTECTED] wrote:
   find /home/www/web570 -type f | xargs grep -l MeineDomain\\.net
 
  Na wenn schon, dann
  find /home/www/web570 -type f -print0 | xargs -0 grep -l 
  MeineDomain\\.net

 Gotcha! Ich wusste doch, dass jemand damit kommt. Read on ...

 $ find /etc -type f -print0 | xargs -0
 find: bad option -print0
 find: path-list predicate-list
 $ uname -sr
 SunOS 5.9

 Uuups. ;-)

  Was spricht eigentlich gegen rgrep MeineDomain\\.net
  /home/www/web570 ?

 Im Prinzip nichts. Es sei denn, Du willst/musst irgendwann mal mit
 Deinen Skripten auf ein nicht gnuifiziertes Unix-System umziehen.

 Im Posix-Standard gibt es nämlich weder »-print0« bei find(1)
 noch »-0« bei xargs(1) und auch kein »-r« bei grep(1).

 Und schon steht man da vor seinem Scherbenhaufen ...

und den Dateien mit Leerzeichen im Namen *scnr* Da wir aber von Linux 
und hier im speziellen von Debian reden, ist die print0-Lösung IMHO 
schon akzeptabel, oder?

BTW: Wenn Du kompatibel bleiben willst, wirst Du mit Deinem find auch 
auf die Nase fallen, Reliant z. B. verlangt zwingend eine Aktion, also 
mindestens einen -print.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Dateien eines Verzeichnisses durchsuchen....

2003-10-12 Diskussionsfäden Jan Trippler
Am Sonntag, 12. Oktober 2003 22:24 schrieb Manfred Gnaedig:
 Hallo,
 ich bin auf der Suche nach einem Eintrag in einer Datei,
 weiß aber nicht in welcher Datei der Eintrag seht.

 Wie heißt da das Zauberwort?

apropos
man

Du bist doch schon ne Weile hier, oder? Suche=search - Ein *apropos 
search* liefert bei mir 41 Einträge - einer davon ist find (von dem 
hier regelmäßig die Rede ist). Ungefähr alle 2 Tage taucht hier der 
grep auf, wenn es darum geht, den Inhalt von Dateien zu flöhen - schau 
mal ins Archiv! Liest Du auch manchmal die Liste mit oder haust Du 
prinzipiell einfach alles in die Tonne, was nicht Antwort auf Deine 
Frage ist? Sorry, aber das musste ich mal loswerden.

 Im Verzeichnis
 /home/www/web570
 muß es eine Datei geben in der MeineDomain.net eingetragen ist.

 Wie kann ich diese Datei finden?

find /home/www/web570 -type f -exec grep \-l MeineDomain.net {} \;

Dieses Rezept ist nach meiner Schätzung so oft hier aufgetaucht, dass 
man sich nen Schal draus stricken kann.

Jan


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Was sind Kindprozesse ?

2003-10-05 Diskussionsfäden Jan Trippler
Am Freitag, 3. Oktober 2003 22:43 schrieb Peter Schubert:
[...]
 Eigentlich wußte ich es ja schon, das Gejammer der SuSianer in den
 NGs ist ja laut genug. Ich begreife ja selbst nicht, warum ich mich
 darauf eingelassen habe...

Abseits von Deinem Problem mit den child-Prozessen: In welchen NGs 
jammern denn die *SuSianer*? Ich lese einige davon seit Jahren, da muss 
ich wohl mal zum Augenarzt. Solche undifferenzierten und unbegründeten 
Verbalattacken sind IMHO daneben. Ich habe etliche SuSE-Versionen auf 
verschiedenen Rechnern installiert, diesen Fehler hatte ich nie. Kann 
es sein, dass diese Zeitschriften-CD eine nur von CD ablauffähige 
Version ist (bringt SuSE IIRC als *CD-Livesystem* seit einiger Zeit 
raus)? Dann soll sich Dein Kunpel mal einfach ne Vollversion holen.

Wenn Du bei Debian bisher nie Probleme hattest, dann ist das genauso 
wenig zu verallgemeinern wie *die SuSE ist sch...* wie 
Du es sinngemäß hier rausgehauen hast. Auch unter SuSE gibt es 
Möglichkeiten, sich während der Installation mal im System umzuschauen 
und zu gucken, woran es hakt (z. B. mit einem *ps -f | wc -l* und 
daneben einem *ulimit -a*).

Jan

P.S.: Wenn Du mit einer SuSE Probleme hast, warum fragst Du nicht in 
einer einschlägigen ML nach? Auch _diese_ Bereitschaft kann man von 
jemanden erwarten, der sich mit einer bis dato unbekannten Distri 
auseinandersetzt! Du verlangst ja auch, dass sich Dein Kumpel mit 
apt-get und Co. befasst. Ach ja: google liefert mir mit dem Stichwort 
Kindprozess 1560 Ergebnisse ...

P.P.S.: Diese *meine Distri gut - alle anderen Mist*-Mentalität, wie sie 
in Deiner Mail zum Ausdruck kam, kommt IMHO hier ziemlich oft zum 
Vorschein - schade und ein Zeichen von Intoleranz. /IMHO


--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Was sind Kindprozesse ?

2003-10-05 Diskussionsfäden Jan Trippler
Zuerst: Ich brauche keine private Kopie, ich lese hier mit.

Am Sonntag, 5. Oktober 2003 22:48 schrieb Peter Schubert:
 Jan Trippler wrote:
 Am Freitag, 3. Oktober 2003 22:43 schrieb Peter Schubert:
 [...]
 
 Eigentlich wußte ich es ja schon, das Gejammer der SuSianer in den
 NGs ist ja laut genug. Ich begreife ja selbst nicht, warum ich mich
 darauf eingelassen habe...
 
 Wenn Du bei Debian bisher nie Probleme hattest, dann ist das genauso
 wenig zu verallgemeinern wie *die SuSE ist sch...* wie

 Das ist Deine Auslegung, die ich aber als Unterstellung ansehe.

Zitate aus Deiner Originalmail:
schnipp
ich habe seit heute nachmittag das sehr zweifelhafte Vergnügen, für 
   ^^^
einen Freund SuSE 8.2 auf dessen Kasten aufbringen zu müssen 

*leichtfertig ja gesagt* ; leider konnte ich meinen Freund vom Debian 
nicht überzeugen. Jetzt krieg ich den Schei.. seit 5 Stunden nicht zum 
  ^^^
Laufen, ständig meldet sich das System, fast bei jedem anklicken eines 
Menuepunktes mit der lapidaren Meldung: Anwendung kann nicht geöffnet 
 ^
werden, Kindprozess kann nicht gestartet werden. Solche blödsinnigen 
 ^^^
Meldungen habe ich in meinem Debian all die Jahre noch nie gesehen! 
^^^
Schon dreimal wieder neu installiert, scheinbar alles o.k. dann geht 
aber trotzdem nichts. Am liebsten würde ich denjenigen mit seinem 
Schei..SuSE aufsitzen lassen! Was sind Kindprozesse? Ist das ein 
^^^
schnapp

Meinst Du nicht, dass diese _Deine_ Ausdrucksweise nahelegt, dass Du 
Vorurteile hast? Und BTW: Ich habe in o. g. Satz überhaupt keine 
_Auslegung_ oder gar _Unterstellung_ getan, ich habe lediglich Deine 
Verallgemeinerung (_Dein_ Ausdruck *Schei..SuSE*!) kritisiert. Und das 
folgende Zitat aus Deiner Mail legt ja wohl auch die Vermutung nahe, 
dass Du bisher noch keine Probleme mit Debian hattest, oder?

schnipp
Mit Debian wäre ich in zwei Stunden rundherum fertig gewesen, nie wieder 
lasse ich mich auf SuSE ein!
schnapp

Was unterstelle ich Dir also? Höchstens die mangelnde Bereitschaft, sich 
bei einer Installation (und die Installation _ist_ nun mal 
distributionsabhängig) auch mal mit den distributionsspezifischen 
Hilfsmitteln befasst zu haben - ja, und das unterstelle ich immer noch.

 P.P.S.: Diese *meine Distri gut - alle anderen Mist*-Mentalität, wie
  sie in Deiner Mail zum Ausdruck kam, kommt IMHO hier ziemlich oft
  zum Vorschein - schade und ein Zeichen von Intoleranz. /IMHO

 Genau das habe ich nicht geschrieben. Im Übrigen lies mal bischen in
 der Linux-Hardware-NG mit, vielleicht fällt es Dir dann auch auf.
 Ansonsten habe ich keine Lust auf derartige Unterstellungen Antwort
 geben zu müssen. Hätte ich suSE schlecht machen wollen, hätte das
 anders geklungen.

Ich habe nicht *Du hast geschrieben*, sondern *in Deiner Mail zum 
Ausdruck kam* geschrieben und exakt das kam !IMHO! in Deiner Mail zum 
Ausdruck (siehe oben).

Zitat aus Deiner Mail:
schnipp
Eigentlich wußte ich es ja schon, das Gejammer der SuSianer in den NGs 
ist ja laut genug. Ich begreife ja selbst nicht, warum ich mich darauf 
eingelassen habe...
schnapp

Ist die Linux-Hardware-NG *die NGs*? Was hat das jetzt mit HW-Problemen 
zu tun? Soll ich dazu mal die Mails nur aus _dieser_ Liste raussuchen, 
die sich um HW-Probleme und Debian drehen? Das ist ja wohl kaum ein 
Problem der SuSE-Distri (und erst recht nicht das Problem, vor dem Du 
gestanden hast, was Du mit einem Blick in Unix- / Linux- 
Grundlagenliteratur oder diverse Suchmaschinen problemlos hättest 
herausfinden können)! 

Wieso ist es *Gejammer*, wenn es sich um HW-Probleme mit SuSE dreht? 
Sind die einschlägigen Mails hier dann auch *Gejammer*?

Für mich ist ein *Schei..SuSE* deutlicher Ausdruck von Vorurteilen. 
Genauso könnte ich wegen meiner Probleme mit einer Debian-Installation 
(da blieb die Woody-Installation kommentar- und meldungslos bei der 
HW-Erkennung eines 0815-Realtech-Clone hängen, die ich mit SuSE und 
einer manuellen Installation problemlos in den Griff gekriegt habe) vor 
ein paar Wochen hier (oder besser noch in einer SuSE-ML) ein 
*Schei...Debian* rausbrüllen. _Jede_ Distri hat unter bestimmten 
Umständen ihre Tücken, das ist noch lange kein Grund, in einer einzigen 
Mail zweimal eine Distri als *Schei...* zu betiteln.

Zitat aus Deiner Mail:
schnipp
Was sind Kindprozesse? Ist das ein SusE-eigener Fehler oder was?
schnapp

Ich wiederhole mich nicht gern, aber:
a) warum hast Du nicht z. B. in suse-linux mal nachgefragt?
b) warum hast Du nicht mal im Netz nach *Kindprozess* gesucht - dann 
hättest Du selbst gemerkt, dass dies Unix-Basiswissen ist (die 
hierarchische Prozessorganisation gibts seitdem es Unix gibt) und 
mitnichten Linux- oder

  1   2   >