Speicherung von Datenblättern

Lutz Schulze schrieb:

Ein Hardlink ist ein gleichberechtigter weiterer Name einer Datei, während ein Symlink auf den Namen einer anderen Datei zeigt. Wenn eine Datei mehrere Dateinamen hat, kann ein Name gelöscht werden, ohne dass die Daten verschwinden (der Datenbereich wird gelöscht, wenn der letzte Dateiname gelöscht wurde). Hardlinks werden daher häufig verwendet, wenn eine Kopie[1] einer Datei gewünscht ist, aber der Speicherplatz eingespart werden soll.

Wenn die Datei, auf die ein Symlink zeigt, gelöscht wird, bleibt der Symlink im Dateisystem erhalten, ist aber ab diesem Zeitpunkt ungültig, und die Daten sind weg. Wenn unter dem Namen, auf den der Symlink zeigt, eine neue Datei angelegt wird, zeigt der Symlink anschließend auf diese neue Datei.

Bye Rudi

[1] Wobei beachtet werden muss, das ein Hardlink aufgebrochen werden muss, wenn der Inhalt nur einer der Dateien verändert werden soll.
Reply to
Rüdiger Ranft
Loading thread data ...

Am 07.12.2011 09:27, schrieb Rüdiger Ranft:

Hallo,

"Auf dem Desktop liegen ungültige Verknüpfungen - möchten Sie diese Löschen?

Bernd Mayer

Reply to
Bernd Mayer

Am 07.12.2011 09:27, schrieb Rüdiger Ranft:

Hallo,

IIRC; "Auf dem Desktop liegen ungültige Verknüpfungen - möchten Sie diese löschen?

Gerade nachgesehen:

"Fehler beim Laden von C:/DOKUME~1/HRNE~/LOKALE~1/temp/123456789.exe. Das angegebene Modul wurde nicht gefunden."

Bernd Mayer

Reply to
Bernd Mayer

Am Wed, 07 Dec 2011 09:27:22 +0100 schrieb Rüdiger Ranft:

Danke, jetzt wird es klarer.

Lutz

--
Mit unseren Sensoren ist der Administrator informiert, bevor es Probleme im 
Serverraum gibt: preiswerte Monitoring Hard- und Software-kostenloses Plugin 
auch für Nagios - Nachricht per e-mail,SMS und SNMP: http://www.messpc.de
Messwerte nachträgliche Wärmedämmung http://www.messpc.de/waermedaemmung.php
Reply to
Lutz Schulze

Oder neue schaffen:

formatting link

--
Gruesse, Joerg

http://www.analogconsultants.com/
Reply to
Joerg

zu

n Namen

be

Nein. Ein Hardlink hat etwas mit Inodes und Zeigern auf Sektoren der Festplat= te=20 zu tun. Innerhalb von Office-Dokumenten ist immer alles rein symbolisch= .=20 Genau genommen sind die Verweise dort noch nicht einmal das, was man al= s=20 "symbolischer Link" versteht.=20

Microsoft betreibt allerdings mit dem Wort "Link" in den Benutzeroberfl= =C3=A4chen ein subtiles Verwirrspiel. Kurzfassung: Das, was dort "Link" genannt wi= rd,=20 ist nicht wirklich das, was der Rest der Informatikwelt sich unter dies= em Begriff vorstellt. Der Unterschied zeigt sich, wenn man versucht, einen= =20 Link auf einen Link zeigen zu lassen. Es ist daher wahrscheinlich, dass Du bisher weder mit symbolischen Link= s noch mit Hardlinks direkt zu tun hattest.

------

--=20 Kai-Martin Knaak tel: +49-511-762-2895=

Universit=C3=A4t Hannover, Inst. f=C3=BCr Quantenoptik fax: +49-51=

1-762-2211=09 Welfengarten 1, 30167 Hannover
formatting link

GPG key:

formatting link
get

Reply to
Kai-Martin Knaak

Mach mal einen Link auf einen Link und benutze diesen statt dem Origina= l.

------

--=20 Kai-Martin Knaak tel: +49-511-762-2895=

Universit=C3=A4t Hannover, Inst. f=C3=BCr Quantenoptik fax: +49-51=

1-762-2211=09 Welfengarten 1, 30167 Hannover
formatting link

GPG key:

formatting link
get

Reply to
Kai-Martin Knaak

Ok, diese Definition ist mir neu aber Du hast da mit Sicherheit mehr Ahnung von als ich. Sektor heisst ja schon richtig physikalische Adresse. D.h. theoretisch muesste das nach Defragmentierung alles kaputt sein wenn es dabei keine Link-Updates gaebe.

Ist ewig her, aber in Word 2000 musste man den Link dazu (IIRC) zum Object machen damit das funktionierte.

Das ist in der Tat wahrscheinlich :-)

Mit Sektorzugriffen allerdings schon.

--
Gruesse, Joerg

http://www.analogconsultants.com/
Reply to
Joerg

s/soll/kann/ - sofern das betreffende Unixoid auch nur halbwegs vernünfig ist.

Man liest sich, Alex.

--
"Opportunity is missed by most people because it is dressed in overalls and
 looks like work."                                      -- Thomas A. Edison
Reply to
Alexander Schreiber

Nicht das gleiche. Bei Unix-Filesystemen haben Inodes einen link count, der die Anzahl der Hardlinks auf den Inode mitzählt. Bei einer gerade angelegten Datei ist dieser 1, da es nur einen Link darauf gibt, kommt ein Hardlink dazu 2 usw. Entfernen von Links zählt wieder runter und erst wenn der link count bei 0 ist und kein Prozess die Datei mehr offen hält wird der Inode (und damit die Datei gelöscht). Allerdings sind bei Unix- Filesystemen Datei (Inode) und Dateiname separat. Dank Hardlinks kann eine Datei eine Vielzahl beliebiger Namen haben und auch sowas geht:

echo "hello" > original # datei anlegen ln original anderer_name # Hardlink anlegen ln original fast_original # noch ein Hardlink rm original anderer_name # originalen Dateinamen & ersten Hardlink löschen cat fast_original # Inhalt ausgeben hello rm fast_original # Datei endgültig löschen

Die verschiedenen Namen der Datei sind dabei absolut äquivalent und verweisen - komplett transparent - auf den gleichen Inode, d.h. die gleiche Datei.

Sehr nützlich wenn man mehrere identische Kopien der gleichen Datei in einem Filesystem braucht, aber den Platz dafür nicht verbraten will. Wird so z.B. auch von cleveren Backupprogrammen genutzt. Statt für n Backupgenerationen n Kopien einer unveränderten Datei vorzuhalten wird nur eine echte Kopie erzeugt und die anderen n-1 Instanzen sind Hardlinks.

Was auch geht, ist eine von einem Prozess offen gehaltene Datei zu löschen. Der Dateiname verschwindet sofort und beim Schließen des offenen File- descriptors wird dann auch die Datei gelöscht. Bis dahin kann man aber mit dem Filedescriptor ganz normal arbeiten: lesen, schreiben, seek ...

Genutzt wird dieser Trick u.a. für temporäre Dateien, die beim Ende des Prozesses auf jeden Fall verschwinden sollen, auch wenn der Prozess crasht und zum Löschen gar nicht mehr in der Lage wäre.

Man liest sich, Alex.

--
"Opportunity is missed by most people because it is dressed in overalls and
 looks like work."                                      -- Thomas A. Edison
Reply to
Alexander Schreiber

Solange noch Links auf den Inode (== Datei) existieren, existiert der Inode weiter. Erst wenn die Anzahl von Links auf den Inode 0 erreicht wird er gelöscht[0]. Es gibt im Unix-Dateisystem keinen Unterschied zwischen dem "originalen" Dateinamen und einem Hardlink - schon deshalb nicht weil beide wirklich dasselbe sind: Ein Name (Verzeichniseintrag) der den Inode (Datei) referenziert.

Man liest sich, Alex. [0] Und wenn kein Prozess den Inode mehr offen hat.

--
"Opportunity is missed by most people because it is dressed in overalls and
 looks like work."                                      -- Thomas A. Edison
Reply to
Alexander Schreiber

Nein, denn: - die Zeiger auf "Sektoren"[0] stehen im Inode - ein Inode definiert als solcher eine Datei als Datencontainer, d.h. enthält Informationen über Zugriffsrechte und wo im Filesystem die Datenblöcke der Datei liegen (obige Zeiger auf "Sektoren"), er definiert aber keinen _Namen_ für die Datei - in Inode ist - allein für sich genommen - also erstmal nur ein anonymer Datenblock im Dateisystem, nur bekannt durch seine Inode-Nummer - einen Name bekommt die Datei durch einen oder mehrere (Hardlinks genannt) Verzeichniseinträge die diesen Inode referenzieren - kann man sich vorstellen als: Dieser Dateiname lautet "foobar" und verweist auf den Inode 2342 - für die Lebensdauer des Inodes ist die Inodenummer unveränderlich - Defragmentierung ist bei Unix-Dateisystemen nicht üblich da diese aufgrund ihres Design im Normalbetrieb kaum fragmentieren[1] - dies tritt eigentlich erst in pathologischen Situationen wie 95+% Füllstand und viel Schreib-/ Löschaktivität ein

Man liest sich, Alex. [0] Streng genommen wird da auch nicht mit Sektoren gearbeitet, sondern mit Dateisystemblöcken. Und diese sind meist mehrere physische Platten- sektoren groß (typisch sind 4K bei Linux-Dateisystemen). [1] Im Sinne von: Blöcke einer Datei quer übers ganze Filesystem verstreuen

--
"Opportunity is missed by most people because it is dressed in overalls and
 looks like work."                                      -- Thomas A. Edison
Reply to
Alexander Schreiber

Am 07.12.2011 23:25, schrieb Alexander Schreiber: ...

Auf diese Weise konnte ich mal Log-Dateien retten, die ich^Wjemand versehentlich gelöscht hatte. Da die Dateien noch von einem Prozeß geöffnet waren, war es nicht weiter schwierig, auf die Datei über den (Hard-)Link /proc/$PID/$FD zuzugreifen und eine Kopie zu erstellen. Und das alles natürlich mit Bordmitteln...

Bei solchen Gelegenheiten merkt man erst, wie durchdacht und klar strukturiert Betriebssysteme sein können.

Falk

Reply to
Falk Willberg

Wie sieht das denn im Explorer aus? Ein Link unter Windows, den ein normaler Anwender erstellen kann, erscheint normalerweise mit einem kleinen Pfeil links unten auf dem Explorer und bei rechte Maustaste "Eigenschaften" steht dann "Dateityp: Verknüpfunk (.lnk)". Meinstest du das?

Hardlinks kann man nicht vom Explorer aus unter normalen Windows XP anlegen. Sofern du also kein Zusatzprogramm installiert hast, oder die Links von der DOS-Eingabeauffoderung per manueller Eingabe von "fsutil hardlink" erstellt hast, ist es wahrscheinlich kein Hardlink. Der Anwender hat meines Wissens auch keine Möglichkeit, auf dem Desktop oder im Explorer zu sehen, daß eine Datei ein Hardlink ist. Waren wohl die Programmierer vom NTFS nicht einig mit dem Marketing, was den Benutzern zuzumuten ist :-)

--
Frank Buss, http://www.frank-buss.de
piano and more: http://www.youtube.com/user/frankbuss
Reply to
Frank Buss

Habe mal nachgeguckt, da sind keine Pfeile im Explorer. Aber es scheint wohl so zu sein wie Kai-Martin und Alexander erklaert haben, dass es keine Hardlinks sind. Fuer mich ist es nur wichtig dass sie funktionieren, von mehreren Arbeitsplaetzen aus.

Ja, sind vermutlich technisch gesehen keine.

Ok, aber es funktioniert an sich mit Links alles recht brauchbar. Ausser bei docx Files, aber das war ja auch ein voller Schuss in den Ofen. So aehnlich wie Vista. Bei fast allen meinen Kunden gibt es eine stillschweigende Uebereinkunft nur Office-97 kompatible File Formate zu benutzen. Damit funzt es immer :-).

--
Gruesse, Joerg

http://www.analogconsultants.com/
Reply to
Joerg

Moin!

Was genau funzt da?

Wenn Du ein PDF-Datenblatt auf Deiner Festplatte aus Word verlinkst und die Word-Datei auf einen USB-Stick kopierst, hast Du dann das Datenblatt dabei oder einen toten Link?

Wenn Du im Projektordner eine Verknüpfung auf eine PDF in Deiner Datenblattsammlung hast, und Du kopierst den Projektordner auf den USB-Stick, hast Du dann das Datenblatt dabei oder eine tote Verknüpfung?

Gruß, Michael.

Reply to
Michael Eggert

Dass die Files ohne Fehlermeldungen von so gut wie allen aufgerufen werden koennen.

Das kommt darauf an. Man kann Files (bei PDF weiss ich es aber nicht, nie proboiert) entweder nur verlinken oder einbetten. Wenn man alles an einen Kunden weiterschickt bietet sich natuerlich letzteres an.

Dann ist die natuerlich tot.

--
Gruesse, Joerg

http://www.analogconsultants.com/
Reply to
Joerg

Moin!

Und kann der das dann auch wieder "ausbetten" und als Datei abspeichern?

Gruß, Michael.

Reply to
Michael Eggert

Nein, das wohl nicht. Vermutlich gibt es auch dafuer irgendeinen Hack aber da ich keinen Sinn darin sehe habe ich nie danach gesucht.

--
Gruesse, Joerg

http://www.analogconsultants.com/
Reply to
Joerg

Moin!

Der Sinn liegt zum Beispiel darin, die eingebettete Datei anders sortiert abzulegen oder nachzubearbeiten - letzteres ist gerade bei Bildern ein Krampf: Wenn ich ein hochaufgelöstes .jpg in Word einbinde, dann ist die .doc danach knapp größer als die Bilddatei. Anscheinend sind die Daten also noch vorhanden. Kopiere ich das Bild aus Word in die Zwischenablage und dann in meine Bildbearbeitung, ist es aber nur soviele Pixel groß, wie es in Word auf dem Bildschirm angezeigt wurde.

Gruß, Michael.

Reply to
Michael Eggert

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.