bolug bonner linux user group
news about wissen files archive hilfe suchen  

 

archive :: SchAN-User

druckfassung

SchAN-User

Re: schan-user: neue Version (was: Faxen unter Linux mit Fritzcard)

To: schan-user@xxxxxxxxxxxxxxxxx
Subject: Re: schan-user: neue Version (was: Faxen unter Linux mit Fritzcard)
From: Thomas Litsch <tlitsch@xxxxxx>
Date: Sat, 01 Apr 2000 12:36:00 +0200
Hallo,

Martin Emonts-Gast wrote:
> 
> Ich weiss nicht, was du mit lizenzrechtlichen Problemen meinst.

Manchmal wird der Download erlaubt, das Brennen auf eine CD zur
Weitergabe aber nicht. Hat HAns-Dietrich Krimse aber inzwischen geklärt.

> Neue Sicherheitsprobleme, die durch den BSCW entstehen sehe ich nicht.
> Fuer den Pseudo-user www, unter dem der apache laeuft, und den
> Pseudo-user
> bscadm, unter dem BSCW laeuft, muss nur eine gemeinsame Gruppe
> existieren. Diese Gruppe muss Schreib&Lese-Rechte auf den BSCW-Bereich haben.
> Da der BSCW normalerweise ein eigener Bereich mit eigenen
> Zugriffsrechten ist,
> sollte dies nicht den Rest des Systems beeinflussen.

Ich habe einige Änderungen an den Konfigurationsdateien für Apache
vornehmen müssen, da bin ich mir über die Auswirkungen auf die
Sicherheit nicht im Klaren.

-- 
Gruss, Thomas Litsch        tlitsch@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Nell-Breuning-Berufskolleg  http://www.su.shuttle.de/su/bfsrheinfrieden
53604 Bad Honnef            Privat: mailto:tlitsch@xxxxxx
>From ???@??? Sat Apr 01 18:26:16 2000
Return-Path: <owner-schan-user@xxxxxxxxxxxxxxxxx>
Received: from www02.heise.de ([193.100.232.130]) by mailin02.sul.t-online.de
        with esmtp id 12bQV3-1bk4sSc; Sat, 1 Apr 2000 18:11:49 +0200
Received: (from majordomo@localhost)
        by www02.heise.de (8.9.2/8.9.2-listserv_004) id RAA15404
        for schan-user-list; Sat, 1 Apr 2000 17:52:31 +0200 (MET DST)
X-Authentication-Warning: www02.heise.de: majordomo set sender to 
owner-schan-user@xxxxxxxxxxxxxxxxx using -f
Received: from leer2.shuttle.de (leer2.shuttle.de [194.95.224.17])
        by www02.heise.de (8.9.2/8.9.2-listserv_004) with ESMTP id RAA15399
        for <schan-user@xxxxxxxxxxxxxxxxx>; Sat, 1 Apr 2000 17:52:30 +0200 (MET 
DST)
Received: from shuttle.de (p10.h.shuttle.de [194.95.230.10])
        by leer2.shuttle.de (8.9.3/8.9.3) with SMTP id RAA28175
        for <schan-user@xxxxxxxxxxxxxxxxx>; Sat, 1 Apr 2000 17:52:28 +0200 (MET 
DST)
Received: by TECHNIKERSCHULE.bs.ni.schule.de (CrossPoint v3.12d.mAx R/A2180);
Date: 01 Apr 2000 14:58:00 +0200
From: HHullen@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (Helmut Hullen)
To: schan-user@xxxxxxxxxxxxxxxxx
Message-ID: <7b1ZjpGOMWB@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
In-Reply-To: <38D70AF5.EA39080B@xxxxxxxxx>
Subject: Re: schan-user: Hilfe!! Surfen geht nicht mehr
X-Mailer: CrossPoint v3.12d.mAx R/A2180 via NOS-BOX 2.05
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
Organization: Hullen
Sender: owner-schan-user@xxxxxxxxxxxxxxxxx
Precedence: bulk
Reply-To: schan-user@xxxxxxxxxxxxxxxxx

Hallo, Reiner,

Du meintest am 21.03.00 zum Thema Re: schan-user: Hilfe!! Surfen geht nicht 
mehr:

> Heise ermittelt mit einem Script und einem kurzen C-Programm die
> Gesamtgroesse der Platte. Offenbar stimmt dort die Parameteruebergabe
> nicht immer. Ergebnis ist dann eine leere Ausgabe oder voellig
> unsinnige Angaben.
> Ich habe nur keine Lust, dort noch zu basteln, weil ich den
> C-Code nicht habe. Koennte man sicher auch anders loesen...

Fuer alle, die helfen wollen:

========================= Datei 1 ==================================

(Skript "partitioniere")

# c't/ODS-Kommunikationsserver V2.2
# (c) Klaus F³ller & Redaktion c't 1997
# Nutzung gemS  der GNU Public License

dialog  --title "Suche Informationen zum Partitionieren" \
        --backtitle "c't/ODS Kommunikationsserver" \
        --infobox "
Ich identifiziere nun die Festplatten " 5 72

fdisk -l | fgrep -q "/dev/sd"
if [ $? != 0 ]; then
        eval `fdisk -l | awk ' /^Disk/ {
                        sub(":", "", $2)
                        sub("/dev/", "", $2)
                        disk=$2
                        disks=disks " " disk
                        zyl=$7
                        print $2 "_zylinder=" zyl
                        next
                        }
                /^Units/ {
                        print disk "_bpz1=" $5
                        print disk "_bpz2=" $7
                        next
                        }
                END     {print "disks=\"" disks "\""}'`
else
        eval `fdisk -l | awk '/^Disk \/dev\/sd/ {
                        sub(":", "", $2)
                        sub("/dev/", "", $2)
                        disk=$2
                        disks=disks " " disk
                        zyl=$7
                        print $2 "_zylinder=" zyl
                        next
                        }
                /^Units/ {
                        print disk "_bpz1=" $5
                        print disk "_bpz2=" $7
                        next
                        }
                END     {print "disks=\"" disks "\""}'`
fi

# Hier wird nur EINE Platte partitioniert.

set -- $disks
disks=$1

dialog  --title "Erzeuge ODS-Partitionierung" \
        --backtitle "c't/ODS-Kommunikationsserver" \
        --yesno "

OK. Ich m÷chte jetzt die Partitionierung herstellen.
Dieser Rechner kann dann als Kommunikations-, Datei-
und Druck-Server genutzt werden.

DABEI GEHEN ALLE DATEN AUF DER FESTPLATTE $disks VERLOREN!!!

SOLLEN DIE DATEN  *E*R*H*A*L*T*E*N  bleiben?

" 15 72

if [ $? != 1 ]; then
        exit 1
fi

f=$disks                                # Historisch
zyl=$(eval echo \$${f}_zylinder)        # Anzahl der Zylinder
bpz1=$(eval echo \$${f}_bpz1)           # Byte per Zylinder, Teil 1
bpz2=$(eval echo \$${f}_bpz2)           # Byte per Zylinder, Teil 2

# Da die Shell nur mit signed long integer arbeitet, muessen
# die Berechnungen in ein C-Programm ausgelagert werden.

antwort=`calcpart $zyl $bpz1 $bpz2`

# Festplatte gro  genug?
volumen=$[`echo $antwort | cut -d: -f1`]
if [ $volumen -lt 500 ]; then
        dialog  --title "Das hat keinen Zweck" \
                --backtitle "c't/ODS-Kommunikationsserver" \
                --msgbox "
Die Festplatte \"$f\" ist kleiner als 500 MByte und reicht
f³r die Installation des Kommunikationsservers nicht aus.

Ich gebe daher auf." 10 68
        exit 1
fi

# Linux-Partition anlegen mit 180 MB
rootende=$[`echo $antwort | cut -d: -f2`]
part1gr=$[`echo $antwort | cut -d: -f3`]

# Swap-Partiton anlegen, 32 MB
swapende=$[`echo $antwort | cut -d: -f4`]
part2gr=$[`echo $antwort | cut -d: -f5`]

# Var-Partition anlegen mit 2/3 des Rests (Schlimmster Fall: 190 MB)
# Dieser Bereich dient auch f³r den Proxy-Cache.
varende=$[`echo $antwort | cut -d: -f6`]
part3gr=$[`echo $antwort | cut -d: -f7`]

# Auf dem Rest die Home-Partition anlegen (Schlimmster Fall: 90 MB)
homeende=$[`echo $antwort | cut -d: -f8`]
part4gr=$[`echo $antwort | cut -d: -f9`]

        dialog  --title "Partitioniere" \
                --backtitle "c't/ODS-Kommunikationsserver" \
                --infobox "
Ich lege jetzt auf der Platte \"$f\" Partitionen an. Und zwar:

  bis Zylinder $rootende        f³r das Betriebssystem ($part1gr MByte)
  bis Zylinder $swapende        f³r virtuellen Speicher ($part2gr MByte)
  bis Zylinder $varende u.a. f³r Proxy ($part3gr MByte)
  bis Zylinder $zyl     f³r Anwenderdaten ($part4gr MByte)" 10 72

# Zerschiessen der Partitionstabelle.
dd if=/dev/zero of=/dev/$f bs=1k count=1 >/dev/null 2>&1
        fdisk /dev/$f << EOF >/dev/null 2>&1
n
p
1
1
$rootende
t
1
83
a
1
n
p
2
$[$rootende+1]
$swapende
t
2
82
n
p
3
$[$swapende+1]
$varende
t
3
83
n
p
4
$[$varende+1]
$zyl
t
4
83
w
EOF

boot=/dev/$disks
root=/dev/${disks}1
swap=/dev/${disks}2
partitionen="/dev/${disks}1 /dev/${disks}3 /dev/${disks}4"
cat << EOF >/tmp/fstab
/dev/${disks}1  /       ext2            defaults                1 1
/dev/${disks}2  swap    swap            defaults                1 1
/dev/${disks}3  /var    ext2            defaults                1 1
/dev/${disks}4  /home   ext2            defaults                1 1
EOF


========================= Datei 2 ==================================

(C-Programm "calcpart.c")

/* c't/ODS-Kommunikationsserver V2.0     */
/* (c) Klaus F³ller & Redaktion c't 1997 */
/* Nutzung gemS  der GNU Public License  */

/* Aufruf:      calcpart (zylinder, bpz1, bpz2)
                zylinder:       Anzahl der Zylinder der Platte
                bpz1, bpz2:     mit "fdisk -l" ermittelte Werte
                                f³r Bytes pro Zylinder
   Ausgabe:     Gr÷ e der Festplatte in MByte
                die Endzylinder der Partitionen 1-4
                die Gr÷ e der Partitionen 3 und 4
*/

#include <stdio.h>
#include <string.h>

#define part1gr 180     /* Partition 1 (root) immer 180 MByte */
#define part2gr 32      /* Partition 2 (swap) immer  32 MByte */

main(int argc, char *argv[])
{ unsigned long zylinder, bpz1, bpz2;
  unsigned long bpz, volumen, part[5], mbyte[5];
  float hilf;

  if (argc != 4)  exit (-1);

  zylinder=strtoul(argv[1], NULL, 0);
  bpz1=strtoul(argv[2], NULL, 0);
  bpz2=strtoul(argv[3], NULL, 0);
  bpz=bpz1*bpz2;

  /* Festplattegr÷ e */
  hilf=((float)zylinder*(float)bpz)/1024/1024;
  volumen=(long)hilf;

  /* Linux-Partition anlegen mit 180 MByte     */
  part[1]=(part1gr*1024*1024)/bpz;
  hilf=((float)part[1]*(float)bpz)/1024/1024;
  mbyte[1]=(long)hilf;
  if(mbyte[1] < part1gr)
  { ++part[1];
    hilf=((float)part[1]*(float)bpz)/1024/1024;
    mbyte[1]=(long)hilf;
  }

  /* Swap-Partiton anlegen mit 32 MByte        */
  part[2]=part[1] + ((part2gr * 1024 * 1024) / bpz);
  hilf=(((float)part[2]-(float)part[1])*(float)bpz)/1024/1024;
  mbyte[2]=(long)hilf;
  if(mbyte[2] < part2gr)
  { ++part[2];
    hilf=(((float)part[2]-(float)part[1])*(float)bpz)/1024/1024;
    mbyte[2]=(long)hilf;
  }

  /* Var-Partition anlegen mit 2/3 des Rests   */
  /* (mindestens 190 MB)                       */
  /* Diesen Bereich nutzt u.a. der Proxy-Cache */
  part[3]=part[2] + ((zylinder - part[2]) * 2 / 3);
  hilf=(((float)part[3]-(float)part[2])*(float)bpz)/1024/1024;
  mbyte[3]=(long)hilf;

  /* Auf dem Rest die Home-Partition anlegen   */
  /* (mindestens 96 MByte)                     */
  part[4]=zylinder;
  hilf=(((float)part[4]-(float)part[3])*(float)bpz)/1024/1024;
  mbyte[4]=(long)hilf;

  printf("%ld:%ld:%ld:%ld:%ld:%ld:%ld:%ld:%ld",volumen,part[1],mbyte[1],
          part[2],mbyte[2],part[3],mbyte[3],part[4],mbyte[4]);
  exit (0);
}

========================= Datei Ende ==================================

Vorsicht: sind beides eigentlich Unix-Dateien, ich habe sie hier mit  
"crlf" versehen, damit sie unter DOS lesbar bleiben.

Die Definition der Groesse der Stammpartition (hier: 180 MB) hat Reiner  
schon seit laengerer Zeit auf 400 MB geaendert.

Viele Gruesse!
Helmut

 « Vorige im Thread  Dieser Thread  Nächste im Thread » 

 

seitenanfang


 

news about wissen files archive hilfe suchen  
kontakt letzte änderung: 01.04.2000