WinFuture-Forum.de: Chmod Rückgängig Machen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Linux
  • 2 Seiten +
  • 1
  • 2

Chmod Rückgängig Machen


#1 _deen_

  • Gruppe: Gäste

  geschrieben 08. Oktober 2006 - 00:56

Ich habe unter Gentoo (2006.1) ausversehen einen Teil meines / mit chmod überschrieben. (Eigentlich wollte ich nur die Berechtigungen für eine Verknüpfung, die auf / zeigt, ändern, das hat jedoch nicht so ganz geklappt...) Als ich gemerkt habe, was da gerade passiert, habe ich sofort abgebrochen, doch es war schon zu spät: Beim nächsten Neustart kam sofort ein "Kernel Panic: No init found.". Über die Gentoo-CD konnte ich einige Berechtigungen wieder zurücksetzen, jedoch startet Gnome immer noch nicht und ich kann mich nicht mal über die Konsole einloggen (PW wird nicht akzeptiert).
Hat jemand eine Ahnung wo genau ich welche Rechte setzen muss, damit ich das von Hand wieder ausbaden kann? Oder gibt es in Gentoo eine automatisierte Möglichkeit, wie das "rpm --setperms $(rpm -qa)"?
Wenn ich die wichtigsten Pakete neuinstallieren würde, würden sich dann die Rechte wieder zurechtbiegen?

Und eigentlich wollte ich nur noch ein wenig Gentoo optimieren und dann ein Backup machen... :imao:
0

Anzeige



#2 Mitglied ist offline   Stefan_der_held 

  • Gruppe: Offizieller Support
  • Beiträge: 14.339
  • Beigetreten: 08. April 06
  • Reputation: 888
  • Geschlecht:Männlich
  • Wohnort:Dortmund NRW
  • Interessen:Alles wo irgendwie Strom durchfließt fasziniert mich einfach weswegen ich halt Elektroinstallateur geworden bin :)

geschrieben 08. Oktober 2006 - 12:59

Deen: Bietet das Setup von Gentoo nicht eine "Reperatur Installation" an? bei SuSE isses nämlich der Fall
0

#3 _deen_

  • Gruppe: Gäste

geschrieben 08. Oktober 2006 - 16:24

In Gentoo gibt es kein Setup in der grafischen Art. Da gibt's ein Handbuch und man arbeitet alles durch und kompiliert...
0

#4 Mitglied ist offline   ph030 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.132
  • Beigetreten: 14. Juli 04
  • Reputation: 36
  • Geschlecht:unbekannt

geschrieben 08. Oktober 2006 - 16:39

Also, sowas wie ein "un-chmod" gibt's logischerweise nicht, wäre auch wenig sinnvoll bzw. teils gefährlich.

Wenn du nur die Rechte im /, also z.B. /, /etc, /usr, usw. geändert hast und das ganze nicht rekursiv, dann
drwxr-xr-x  2 root root	 4096  2. Okt 05:34 bin
drwxr-xr-x  2 root root	   16 14. Feb 2006  boot
drwxr-xr-x 17 root root	 3560  8. Okt 17:17 dev
drwxr-xr-x 98 root root   225280  8. Okt 17:16 etc
drwxr-xr-x  3 root root	   24 21. Mai 03:25 home
drwxr-xr-x 11 root root	 8192  4. Okt 04:40 lib
drwxr-xr-x  4 root root	   16 27. Aug 06:32 man
drwxr-xr-x  2 root root	   16 17. Sep 22:33 media
drwxr-xr-x  9 root root	   64  7. Okt 10:26 mnt
drwxr-xr-x 20 root root	 4096 28. Sep 23:29 opt
dr-xr-xr-x 71 root root		0  8. Okt 2006  proc
drwx------ 38 root root	12288  5. Okt 05:06 root
drwxr-xr-x  2 root root	 4096  4. Okt 20:12 sbin
drwxr-xr-x 11 root root		0  8. Okt 2006  sys
drwxrwxrwt 55 root root 11038720  8. Okt 17:25 tmp
drwxr-xr-x 17 root root	 4096 28. Sep 22:04 usr
drwxr-xr-x 16 root root	 4096 28. Sep 14:24 var
wären dass die richtigen Settings.

Wenn du das allerdings rekursiv gemacht hast, sieht's eher übel aus -> ein tragischer Fall von sds ("Selbst dran Schuld").
0

#5 _deen_

  • Gruppe: Gäste

geschrieben 08. Oktober 2006 - 17:42

 Zitat (ph030: 08.10.2006, 17:39)

Also, sowas wie ein "un-chmod" gibt's logischerweise nicht, wäre auch wenig sinnvoll bzw. teils gefährlich.

Wenn du nur die Rechte im /, also z.B. /, /etc, /usr, usw. geändert hast und das ganze nicht rekursiv, dann
drwxr-xr-x  2 root root	 4096  2. Okt 05:34 bin
drwxr-xr-x  2 root root	   16 14. Feb 2006  boot
drwxr-xr-x 17 root root	 3560  8. Okt 17:17 dev
drwxr-xr-x 98 root root   225280  8. Okt 17:16 etc
drwxr-xr-x  3 root root	   24 21. Mai 03:25 home
drwxr-xr-x 11 root root	 8192  4. Okt 04:40 lib
drwxr-xr-x  4 root root	   16 27. Aug 06:32 man
drwxr-xr-x  2 root root	   16 17. Sep 22:33 media
drwxr-xr-x  9 root root	   64  7. Okt 10:26 mnt
drwxr-xr-x 20 root root	 4096 28. Sep 23:29 opt
dr-xr-xr-x 71 root root		0  8. Okt 2006  proc
drwx------ 38 root root	12288  5. Okt 05:06 root
drwxr-xr-x  2 root root	 4096  4. Okt 20:12 sbin
drwxr-xr-x 11 root root		0  8. Okt 2006  sys
drwxrwxrwt 55 root root 11038720  8. Okt 17:25 tmp
drwxr-xr-x 17 root root	 4096 28. Sep 22:04 usr
drwxr-xr-x 16 root root	 4096 28. Sep 14:24 var
wären dass die richtigen Settings.

Wenn du das allerdings rekursiv gemacht hast, sieht's eher übel aus -> ein tragischer Fall von sds ("Selbst dran Schuld").

Afaik war's nicht rekursiv, mal schauen ob ich's so hinbekomm. Danke schon mal!
0

#6 Mitglied ist offline   ph030 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.132
  • Beigetreten: 14. Juli 04
  • Reputation: 36
  • Geschlecht:unbekannt

geschrieben 08. Oktober 2006 - 17:45

Wenn das nicht reichen sollte und du nicht um eine ordentliche Neu-Installation drum herum kommst(was ich grad befürchte), dann meld dich nochmal, dann kann ich dir ev. ein paar kleine Scripts geben, die dir die Sache erleichtern.

EDIT:
Ich füge mal direkt ein paar Befehle an, diedir helfen sollten, das System schnell wieder in den letzten "guten" Zustand zu versetzen.

1. Sichere dir sämtliche (für dich) wichtigen Einstellungen, also alles wichtige in /etc und alle wichtigen in /home/user/.blatöff.
Am einfachsten wäre wohl die Erstellung von zwei Tar-Archiven -> wichtig, den Parameter "p" nicht vergessen, damit die Berechtigungen erhalten bleiben!
Solltest du /home auf einer eigenen Partition haben, brauchst du nur /etc zu sichern, z.B. auf nem Stick oder via SSH auf einem anderen Rechner.

2. Du brauchst "eix" und "quickpkg". Solltest du diese nicht installiert haben, aber noch emergen können, dann
emerge eix gentoolkit
.

3. Wenn du beides hast, dann (als root!)
update-eix
eix -Ic --format-compact '<category>/<name>' | grep -v Found | grep -v "/usr" >> ~/installed.txt
cat ~/installed.txt | xargs quickpkg


Der erste Befehl schreibt dir sämtliche installierten Pakete in die Datei "installed.txt" im /root-Verzeichnis.
Der zweite Befehl baut dir aus allen installierten Anwendungen fertige Pakete, damit du später nicht alles neu-compilen musst(ist dann wie .deb oder .rpm, also wesentlich schneller).

4. Die fertigen Pakete findest du im "Packages"-Verzeichnis, wo das liegt, steht in der /etc/make.conf. Geh in das entsprechende Verzeichnis und dort in das Unterverzeichnis "All". Alle dort liegenden Pakete musst du dann irgendwie "backupen", sei es auf die /home-Partition, auf eine DVD(wenn du noch brennen kannst) oder per SSH sonstwohin, hauptsache du kommst nach einer Neu-Install wieder dran!
EDIT: nach dem das eben wohl leider nicht klar wurde - unbedingt auch die "installed.txt" irgendwohin sichern, so dass man nach der Neu-Installation darauf zugreifen kann!

5. Schnapp dir die Minimal-LiveCD, lösche alle Partitionen und lege sie neu an(bis auf die /home natürlich!).

6. Mach eine Stage3-Installation wie im Handbuch beschrieben.

7. Reboote und logge dich als root ein.

8. Kopiere die installed.txt in das /root-Verzeichnis und die gebackupten Pakete wieder in das /pfad/zu/den/packages/All/

9.
emerge --sync
cat ~/installed.txt | xargs emerge -K

Das installiert dir alle deine Pakete wieder.

10. Lege deinen User neu an und lass sein /home auf das entsprechemde Verzeichnis auf der /home/partition verweisen.

11. Entpacke deine gesicherten Configs wieder nach /etc (und, so vorher geschehen, deine Configs in /home).

12. Ausloggen und als User wieder einloggen.

13. Wenn alles gut ging, hast du zwar ~1h verschwendet, dafür ist das Sys wieder wie vorher und mit den richtigen Rechten ausgestattet.

14. Das nächste mal genau schauen, wenn du als root unterwegs bist :)

hth,
ph

Dieser Beitrag wurde von ph030 bearbeitet: 08. Oktober 2006 - 23:21

0

#7 _deen_

  • Gruppe: Gäste

geschrieben 08. Oktober 2006 - 18:11

Hmm, sieht wohl so aus als hätte ich das ganze tatsächlich rekursiv gemacht. (Ich kann mich aber nicht an ein -R erinnern...) Wäre wirklich nett wenn die Scripts die Neuinstallation erleichtern.
Edit: Vielen Dank, werde ich mich gleich an die Arbeit machen! Da ich mich aber nicht mal mehr einloggen kann, muss ich den ersten Teil wohl auch über die Mini-Live-CD machen.
Ich bin dann ca. eine Stunde weg. =)

Dieser Beitrag wurde von deen bearbeitet: 08. Oktober 2006 - 18:15

0

#8 Mitglied ist offline   ph030 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.132
  • Beigetreten: 14. Juli 04
  • Reputation: 36
  • Geschlecht:unbekannt

geschrieben 08. Oktober 2006 - 18:17

Dann mal viel Glück, wenn du Pech hast, wirst du's brauchen.

und dann heisst's immer, ich wär' so böse...
0

#9 Mitglied ist offline   ichbines 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.725
  • Beigetreten: 06. Oktober 02
  • Reputation: 0
  • Wohnort:Parndorf (Österreich)
  • Interessen:Computer, Linux

geschrieben 08. Oktober 2006 - 18:46

ja, mir ist das auch mal passiert, dass ich / rekursiv auf 777 gesetzt habe.
Man kommt da kaum mehr ohne eine neuinstallation davon. Ich habe damals auch wieder formatieren müssen. Recht ärgerlich!

Und falls du einen selbsterstellten Kernel hast, unbedingt die Config datei sichern!
0

#10 _deen_

  • Gruppe: Gäste

geschrieben 08. Oktober 2006 - 22:37

ph030, du hättest vielleicht erwähnen sollen, dass ich die installed.txt auch sichern sollte... Argh, ich hab's vergessen zu machen. Kann ich jetzt irgendwie aus dem gesicherten packages/All-Ordner eine neue erstellen?
Edit: Habe gerade durch probieren rausgefunden, dass es mit echo | ls >> installed.txt (oder so ähnlich...) funktioniert. Bin dann beim weiterinstallieren, eine Stunde hat bei mir wohl nicht ganz gereicht...

Dieser Beitrag wurde von deen bearbeitet: 08. Oktober 2006 - 22:57

0

#11 Mitglied ist offline   ph030 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.132
  • Beigetreten: 14. Juli 04
  • Reputation: 36
  • Geschlecht:unbekannt

geschrieben 08. Oktober 2006 - 22:57

Mh, sorry, hab ich wohl übersehen, aber ich dachte das wäre offentsichtlich, wenn man die Anleitung erst komplett liest und dann umsetzt - sorry :wink:

Die einfachste Variante wäre wohl, sich nach /pfad/bla/All/ zu begeben, dort ein
ls -l > installed.txt
einzugeben und die Datei dann schnell von Hand anzupassen, dass nur noch der Name ohne die Version und .tbz2 da steht, also z.B. nur noch mplayer statt mplayer-1.0.XXX.tbz2.

Ansonsten müßtest du nen Moment(oder auch zwei warten), dann schau ich mal, wie man das automatisieren kann.
0

#12 _deen_

  • Gruppe: Gäste

geschrieben 08. Oktober 2006 - 23:03

 Zitat (ph030: 08.10.2006, 23:57)

Mh, sorry, hab ich wohl übersehen, aber ich dachte das wäre offentsichtlich, wenn man die Anleitung erst komplett liest und dann umsetzt - sorry :wink:

Die einfachste Variante wäre wohl, sich nach /pfad/bla/All/ zu begeben, dort ein
ls -l > installed.txt
einzugeben und die Datei dann schnell von Hand anzupassen, dass nur noch der Name ohne die Version und .tbz2 da steht, also z.B. nur noch mplayer statt mplayer-1.0.XXX.tbz2.

Ansonsten müßtest du nen Moment(oder auch zwei warten), dann schau ich mal, wie man das automatisieren kann.

Ich hab's mir schon komplett durchgelesen und ich hatte auch vor die Datei zu sichern, aber da ich währenddessen Last Samurai angeschaut habe, habe ich's komplett vergessen...
Geht denn mein echo | ls >> installed.txt nicht auch? Muss ich unbedingt die Version entfernen?

Edit: Die xorg-server kann nicht installiert werden...

Dieser Beitrag wurde von deen bearbeitet: 08. Oktober 2006 - 23:15

0

#13 Mitglied ist offline   ph030 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.132
  • Beigetreten: 14. Juli 04
  • Reputation: 36
  • Geschlecht:unbekannt

geschrieben 08. Oktober 2006 - 23:16

Ha, ging doch schneller als gedacht :wink:

Ein
for i in *.tbz2; do echo "=`basename $i .tbz2`" | xargs emerge -K; done

als root im /packages/All-Verzeichnis funktioniert hier einwandfrei :cool:

hth(wenn nicht, dann nochmal melden),
ph

EDIT:
Hab das mit dem sichern der Datei noch oben angefügt, falls das nochmal jemand brauchen sollte.

Dieser Beitrag wurde von ph030 bearbeitet: 08. Oktober 2006 - 23:21

0

#14 _deen_

  • Gruppe: Gäste

geschrieben 09. Oktober 2006 - 15:24

Irgendwie klappt das ganze immer noch nicht so ganz:
Beim Booten kommen immer Sachen wie

Zitat

lm_sensors failed to start
und

Zitat

ERROR: avahi-daemon failed to start
ERROR: cannot start avahi-dnsconfd as avahi-daemon could not start
ERROR: avahi-dnsconf failed to start

Dann startet xdm (Maus ist bewegbar), bricht jedoch sofort wieder ab und ich bin in der Konsole, wo ich mich als root nicht einloggen kann. Und das obwohl das PW sicher stimmt. Ich habe es auch schon mit der Mini-Live-CD geändert, bringt nichts.
Edit: Wenn ich mich als user einloggen will, bekomme ich die Meldung, dass das ausführen von "/bin/bash not permitted" ist.

Dieser Beitrag wurde von deen bearbeitet: 09. Oktober 2006 - 16:51

0

#15 Mitglied ist offline   ph030 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.132
  • Beigetreten: 14. Juli 04
  • Reputation: 36
  • Geschlecht:unbekannt

geschrieben 09. Oktober 2006 - 16:55

Mh, sehr strange...

Passwort geändert bevor oder nachdem du /etc zurückgespielt hast(schließlich liegen da die PWDs drin) und /etc hast du auch wieder richtig chmod'/chown'ed?

Zitat

Wenn ich mich als user einloggen will, bekomme ich die Meldung, dass das ausführen von "/bin/bash not permitted" ist.


Mh, dann schau mal die Berechtigungen für bash nach und ob du dich mit deinem User auch in der richtigen Gruppe befindest.

(Ich hab das ganze heute nacht noch in einer VM getestet, da lief das reibungslos :) )

Dieser Beitrag wurde von ph030 bearbeitet: 09. Oktober 2006 - 16:57

0

Thema verteilen:


  • 2 Seiten +
  • 1
  • 2

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0