BSDForen.de  

Zurück   BSDForen.de > FreeBSD > FreeBSD - Allgemein

Antwort
 
Themen-Optionen Thema bewerten Ansicht
Alt 28.03.2012, 22:54   #1
Errorsmith
Kompiliertier
 
Registrierungsdatum: Apr 2006
Beiträge: 197
Fileflags (noschg et al) widerherstellen?

Moin!

Ich hab gerade ein System mit make installworld upgegradet. Das ging jedoch insofern schief als das ich den Fehler "Operation not permitted" bekommen hab.
Die Lösung war ein beherztes chflags -R / auf der Konsole.

Gibt es einen Weg die Flags nun - nach dem Upgrade - wieder in den Ursprungszustand zu versetzen oder muss ich nun damit leben? Ist nur ne Desktop Kiste und ein Backup hab ich auch, aber irgendwie hätte ich meine Flags schon gern wieder.

Grüße,
Errorsmith
Errorsmith ist offline   Mit Zitat antworten
Alt 29.03.2012, 14:51   #2
Rakor
Moderators
 
Registrierungsdatum: Sep 2009
Beiträge: 697
Wenn du den Zustand vorher nicht gesichert hast war es das. Es gibt keine Historie für die Bits.
__________________
Meine Installationsmitschrift
Rakor ist offline   Mit Zitat antworten
Alt 29.03.2012, 15:56   #3
Elwood
Naiver Mutmaßlicher
 
Benutzerbild von Elwood
 
Registrierungsdatum: May 2004
Ort: Berlin
Beiträge: 1.780
Beim nächsten make installworld sollte m.E. das Wichtigste wieder korrekt gesetzt werden.
__________________
BLUES, ELWOOD
ILLINOIS LICENSE : B263-1655-2187
CURRENTLY UNDER SUSPENSION
WARRANTS OUTSTANDING : PARKG. 116
MOVING VIOLATIONS : 56
ARREST DRIVER ... IMPOUND VEHICLE
Elwood ist offline   Mit Zitat antworten
Alt 29.03.2012, 22:39   #4
Errorsmith
Kompiliertier
 
Registrierungsdatum: Apr 2006
Beiträge: 197
@Rakor:
Danke, das hatte ich vermutet. Mein Gedanke war ob es irgendwo eine Art "Standard-Setup" gibt in dem festgehalten ist welche Files standardmäßig das Flag gesetzt haben. Ein Backup habe ich natürlich, aber eben vom Zustand vor dem Upgrade. Und das Upgrade kann ich nicht machen solange die Flags gesetzt sind.

@Elwood:
Das ist genau mein Problem. / und /usr/home liegen auf NFS. make installworld läuft durch, setzt aber natürlich die Flags nicht.

Wie gesagt, ist nicht so wichtig, das ist ein Desktop Bastelrechner. Beim Nächstenmal passe ich mehr auf und gut ists.

Danke für Eure Hilfe

Grüße,
Errorsmith
Errorsmith ist offline   Mit Zitat antworten
Alt 30.03.2012, 07:11   #5
mousaka
getting older
 
Benutzerbild von mousaka
 
Registrierungsdatum: Sep 2004
Ort: Region Bern, Schweiz
Beiträge: 759
Von wo nimmt den installworld die Information welche Flags wo zu setzten sind? Irgendwo müssen Sie ja definiert sein.
__________________
I thought of that while riding my bicycle.
--- Albert Einstein
mousaka ist offline   Mit Zitat antworten
Alt 30.03.2012, 07:38   #6
Errorsmith
Kompiliertier
 
Registrierungsdatum: Apr 2006
Beiträge: 197
Ich nehme an es ist in der Makefile? Oder so?
Hm... Bin übers WE weg, wäre aber ne interessante Frage. Setz mich da nächste Woche mal dran.

Sinnvoller m.E. aber die Frage wie ich ein FreeBSD ohne dieses Problem upgraden kann. Das heißt ... hm... den Server kann ich nicht nehmen um die Welt zu bauen, da läuft ja ein anderes FreeBSD (8.0) als auf dem Desktoprechner (8.3). Außerdem ist er leistungsmäßig nicht wirklich zum kompilieren gedacht.

Grüße,
Errorsmith
Errorsmith ist offline   Mit Zitat antworten
Alt 30.03.2012, 08:23   #7
Yamagi
Possessed With Psi Powers
 
Benutzerbild von Yamagi
 
Registrierungsdatum: Apr 2004
Ort: Schleswig-Holstein
Beiträge: 6.603
Yamagi eine Nachricht über ICQ schicken
Die Flags kommen aus den Makefiles und werden an install(1) übergeben. Das setzen der Flags bei "installworld" kann man mit der undokumentierten src.conf Einstellung "NO_FSCHG=" unterdrücken.
__________________
Eure Tastatur verfügt nicht umsonst über zwei Shift-Tasten! Benutzt sie bitte, denn sonst ist es mir fast unmöglich euere Posts zu entziffern.

Yamagi ist offline   Mit Zitat antworten
Alt 30.03.2012, 08:29   #8
Elwood
Naiver Mutmaßlicher
 
Benutzerbild von Elwood
 
Registrierungsdatum: May 2004
Ort: Berlin
Beiträge: 1.780
Auf die Schnelle weiss ich nicht, ob man "nur" die chflags setzen kann. Aber ein grep über die Makefiles in /usr/src sollte darüber Aufschluß geben. Die paar Dinger kannste auch per Hand setzen.

Probier mal, ob in /usr/src ein make hierarchy eventuell auch die chflags setzt, sofern Ordner davon betroffen sind. (Gibt es chflags-getaggte Ordner?!?!).

Code:
# find /usr/src -name "Makefile*" -exec grep chflags \{\} \; -print -chflags noschg ${DESTDIR}${BINDIR}/$i -chflags schg ${DESTDIR}${BINDIR}/chpass /usr/src/usr.bin/chpass/Makefile -@chflags noschg ${DESTDIR}${BINDIR}/cu /usr/src/usr.bin/tip/tip/Makefile chflags noschg ${DESTDIR}${BINDIR}/$i || true -chflags schg ${DESTDIR}${BINDIR}/passwd /usr/src/usr.bin/passwd/Makefile chflags noschg ${DESTDIR}${BINDIR}/$i || true -chflags schg ${DESTDIR}${BINDIR}/passwd /usr/src/release/picobsd/tinyware/passwd/Makefile -chflags -R 0 ${CHROOTDIR}/. -chflags -R noschg ${_R}/. (find ${OTHER_DISTS} -path '*/var/empty' | xargs chflags noschg; \ chflags -R noschg ${RD}/trees/$${i} || true ; \ chflags -R noschg ${RD}/trees/$${i} || true ; \ /usr/src/release/Makefile.sysinstall chflags -R noschg ${.OBJDIR} /usr/src/release/Makefile CRUNCH_PROGS_bin= cat chflags chio chmod cp date dd df echo \ /usr/src/rescue/rescue/Makefile priv_vfs_chflags.c \ /usr/src/tools/regression/priv/Makefile bind.2 brk.2 cap_enter.2 cap_new.2 chdir.2 chflags.2 \ MLINKS+=chflags.2 fchflags.2 chflags.2 lchflags.2 /usr/src/lib/libc/sys/Makefile.inc # $FreeBSD: src/bin/chflags/Makefile,v 1.19.28.1 2011/09/23 00:51:37 kensmith Exp $ PROG= chflags /usr/src/bin/chflags/Makefile chflags \ /usr/src/bin/Makefile -chflags noschg ${DESTDIR}/usr/libexec/${PROG} /usr/src/libexec/rtld-elf/Makefile ITOOLS= [ awk cap_mkdb cat chflags chmod chown \ chflags noschg "${DESTDIR}/$${file}" 2>/dev/null || true; \ chflags noschg "${DESTDIR}/$${file}" 2>/dev/null || true; \ /usr/src/Makefile.inc1 # because 'chflags' will need to operate on fewer files afterwards. -chflags -R 0 ${BW_CANONICALOBJDIR} -chflags -R 0 ${.OBJDIR} /usr/src/Makefile
__________________
BLUES, ELWOOD
ILLINOIS LICENSE : B263-1655-2187
CURRENTLY UNDER SUSPENSION
WARRANTS OUTSTANDING : PARKG. 116
MOVING VIOLATIONS : 56
ARREST DRIVER ... IMPOUND VEHICLE
Elwood ist offline   Mit Zitat antworten
Alt 30.03.2012, 12:44   #9
mousaka
getting older
 
Benutzerbild von mousaka
 
Registrierungsdatum: Sep 2004
Ort: Region Bern, Schweiz
Beiträge: 759
Zitat:
Zitat von Elwood Beitrag anzeigen
(Gibt es chflags-getaggte Ordner?!?!).
Gemäss Handbuch (4.3.2 FreeBSD Datei-Flags) nicht.
__________________
I thought of that while riding my bicycle.
--- Albert Einstein
mousaka ist offline   Mit Zitat antworten
Alt 30.03.2012, 14:58   #10
Elwood
Naiver Mutmaßlicher
 
Benutzerbild von Elwood
 
Registrierungsdatum: May 2004
Ort: Berlin
Beiträge: 1.780
Ah, Danke für die Info... aber wie heisst es so schön:

Vertrauen ist gut, Kontrolle besser:

Zitat:
# cd /tmp
# mkdir bla
# chflags schg bla
# rmdir bla
rmdir: bla: Operation not permitted
__________________
BLUES, ELWOOD
ILLINOIS LICENSE : B263-1655-2187
CURRENTLY UNDER SUSPENSION
WARRANTS OUTSTANDING : PARKG. 116
MOVING VIOLATIONS : 56
ARREST DRIVER ... IMPOUND VEHICLE
Elwood ist offline   Mit Zitat antworten
Alt 14.05.2012, 17:33   #11
Errorsmith
Kompiliertier
 
Registrierungsdatum: Apr 2006
Beiträge: 197
Ist schon ne Weile her, aber ich bin vorhin über die Lösung gestolpert:

Das Zauberwort heißt mtree

In meinem Fall also so:
Code:
sol# cd /usr/data/tftpboot/clients/fbsd-amd64 sol# mtree -deU -f /usr/data/tftpboot/clients/fbsd-amd64/etc/mtree/BSD.root.dist sol# cd /usr/data/tftpboot/clients/fbsd-amd64/usr sol# mtree -deU -f /usr/data/tftpboot/clients/fbsd-amd64/etc/mtree/BSD.usr.dist sol# cd /usr/data/tftpboot/clients/fbsd-amd64/usr/include sol# mtree -deU -f /usr/data/tftpboot/clients/fbsd-amd64/etc/mtree/BSD.include.dist sol# cd /usr/data/tftpboot/clients/fbsd-amd64/usr/local sol# mtree -deU -f /usr/data/tftpboot/clients/fbsd-amd64/etc/mtree/BSD.local.dist sol# cd /usr/data/tftpboot/clients/fbsd-amd64/var sol# mtree -deU -f /usr/data/tftpboot/clients/fbsd-amd64/etc/mtree/BSD.var.dist
Falls jemand mal das selbe Problem hat. Hilft auch beim einspielen von Backups via tar oder ähnlichen Problemen

Grüße,
Errorsmith
Errorsmith ist offline   Mit Zitat antworten
Antwort


Dieses Thema betrachten zurzeit 1 Personen. (0 registrierte Benutzer und 1 Gäste)
 
Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An
[IMG] Code ist An
HTML-Code ist Aus
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:37 Uhr.


Powered by vBulletin (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.