[ubuntu] ubuntu boot niet meer na script usb automount

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Orcie
  • Registratie: Maart 2001
  • Laatst online: 29-09 16:54
Voor mijn ubuntu htpc heb ik dit script geïmplementeerd. Na de reboot start mijn systeem echter niet meer op. Ik denk dat bij de eerste reboot de usbstick is gemount en opgenomen is in fstab. Ik kom er echter met geen mogelijkheid meer omheen. Ook recovery mode boot niet meer.

Gelukkig heb ik in de afgelopen tijd niet lopen klooien met mijn installatie. Het script weghalen, fstab goed instellen en grub rebuilden is dus geen probleem. Ik kom alleen niet meer geboot.

Iemand een idee hoe ik mijn installatie kan redden? Dat is namelijk echt een hels karwei :)


Op deze pagina staat een vrij goeie beschrijving van het programma dat het probleem veroorzaakt (blkid).

[ Voor 15% gewijzigd door Orcie op 08-04-2014 10:12 ]


Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:30

Hero of Time

Moderator LNX

There is only one Legend

Het commando blkid doet niets verkeerds. Het laat alleen zien wat de UUID van een schijf is. Je script is het werkelijke probleem. Verwijder de udev regel en alles moet weer fatsoenlijk werken. Maak dus alle wijzigingen ongedaan die je hebt gedaan.

Nu om toch in je systeem te kunnen, start je op van een installatie disc. Van daaruit heb je een mooie live omgeving waarmee je alles op je HDD kan uitlezen en veranderen. Wil je grub fixen, dan moet je een chroot uitvoeren naar je eigen omgeving, maar dat is het probleem niet.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • Orcie
  • Registratie: Maart 2001
  • Laatst online: 29-09 16:54
Hero of Time schreef op dinsdag 08 april 2014 @ 12:47:
Het commando blkid doet niets verkeerds. Het laat alleen zien wat de UUID van een schijf is. Je script is het werkelijke probleem. Verwijder de udev regel en alles moet weer fatsoenlijk werken. Maak dus alle wijzigingen ongedaan die je hebt gedaan.

Nu om toch in je systeem te kunnen, start je op van een installatie disc. Van daaruit heb je een mooie live omgeving waarmee je alles op je HDD kan uitlezen en veranderen. Wil je grub fixen, dan moet je een chroot uitvoeren naar je eigen omgeving, maar dat is het probleem niet.
Chroot naar mijn eigen omgeving? Elaborate please!?

Ik download nu even de image en maak een bootdisk..

Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:30

Hero of Time

Moderator LNX

There is only one Legend

Image had je toch al? Hoe heb je 'm anders geïnstalleerd? Maar voor chroot is er een prima Wikipedia artikel over en de Arch Linux Wiki legt je netjes uit wat je ervoor moet doen. Het stelt je in staat om dingen op je installatie uit te voeren als deze kapot is, bijvoorbeeld niet meer start, om 'm zo weer te repareren.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • jan99999
  • Registratie: Augustus 2005
  • Laatst online: 01-10 15:01
Wil je de usb harde schijf bij booten automatisch mounten?
Dit moet je via de fstab doen, zoek voorbeelden met google, en test.

Acties:
  • 0 Henk 'm!

  • Rainmaker
  • Registratie: Augustus 2000
  • Laatst online: 14-07-2024

Rainmaker

RHCDS

Als ik even kijk naar "het script" wat je geimplementeerd hebt, zie ik daar ook weinig verkeerds aan.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# Start at sdb to avoid system harddrive. 
KERNEL!="sd[b-z][0-9]", GOTO="media_by_label_auto_mount_end"

# Import FS infos
IMPORT{program}="/sbin/blkid -o udev -p %N"

# Get a label if present, otherwise specify one
ENV{ID_FS_LABEL}!="", ENV{dir_name}="%E{ID_FS_LABEL}"
ENV{ID_FS_LABEL}=="", ENV{dir_name}="usbhd-%k"

# Global mount options
ACTION=="add", ENV{mount_options}="relatime"
# Filesystem-specific mount options
ACTION=="add", ENV{ID_FS_TYPE}=="vfat|ntfs", ENV{mount_options}="$env{mount_options},utf8,gid=100,umask=002"

# Mount the device
ACTION=="add", RUN+="/bin/mkdir -p /media/%E{dir_name}", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/%E{dir_name}"

# Clean up after removal
ACTION=="remove", ENV{dir_name}!="", RUN+="/bin/umount -l /media/%E{dir_name}", RUN+="/bin/rmdir /media/%E{dir_name}"

# Exit
LABEL="media_by_label_auto_mount_end"


Wat je hier eigenlijk zegt is; doe op sda (alles wat niet sdb of hoger heeft, mij een raadsel waarom je dan niet sda zou specificeren) niets, en op de rest de volgende acties.

Dit "script" (eigenlijk is het simpelweg een configuratie, en geen script) gaat er zo te zien vanuit dat je 1 interne harde schijf hebt. Heb je er meerdere (dus een /dev/sdb o.i.d.), waar root partities opstaan (of een volume manager ala LVM of BTRFS die de 2e schijf nodig heeft), dan gaat dit problemen geven.

Verder doet dit niets anders dan USB drives (sdb en hoger dus) mounten onder /media/<label>/ met een paar specifieke mount opties.

Dit ter achtergrond, verder sluit ik me aan bij hierboven; willekeurige livecd booten, partities mounten, /dev, /sys en /proc en chrooten maar.

We are pentium of borg. Division is futile. You will be approximated.


Acties:
  • 0 Henk 'm!

  • Orcie
  • Registratie: Maart 2001
  • Laatst online: 29-09 16:54
Heb inmiddels van de mini.iso geboot. Schijf gemount en het script verwijdert.

@Rainmaker Ik weet door jouw verhaal ook waarom de boel op z'n bek ging. Ik heb wel een sdb (tweede schijf). Hierdoor errort de boel. Ga dit weekend het script eens aanpassen en dan nog eens testen. Weet nu iig hoe ik er weer in kom. Na booten weer even een sudo update-grub en de boel werkt weer als hiervoor.

Was weer leerzame exercitie! Dank voor de hulp iedereen!

Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:30

Hero of Time

Moderator LNX

There is only one Legend

Als je 2 schijven hebt, dan pas je de eerste regel aan van sd[b-z] naar sd[c-z]. Het is een shell expansion wat wordt toegepast. Omdat je 2 schijven hebt, wil je sda EN sdb overslaan. Let echter wel op met dit, als je een interne schijf al onder /media hebt gemount en je geeft een USB stick dezelfde naam als een bestaand mount point, gaat het mis.

Wat is je uiteindelijke doel hiervoor? Als ik een externe schijf aansluit krijg ik 'm netjes in /media/<user>/<label> zonder iets te hoeven doen. Zolang ik maar een GUI heb draaien die 't regelt, dat wel. Voor andere zaken kan je /dev/disk/by-label of by-uuid gebruiken om 'm bij boot op te laten starten via fstab. Als-ie in fstab komt, moet je wel zorgen dat de schijf altijd aanwezig is als je 't systeem opstart, anders wil 't niet doorstarten en moet je wat handmatige handelingen doen om dat voor elkaar te krijgen.

Commandline FTW | Tweakt met mate

Pagina: 1