Pagina 1 di 3

[SOLVED] Slax su chiavetta con più partizioni

Inviato: gio 18 feb 2010, 18:10
da joe
Ho una chiavetta usb che era partizionata in fat e non aveva tabella delle partizioni (per capirci la montavo con mount /dev/sda /media/sda per esempio).
Ho provato a mettervi slax seguendo le indicazioni sul sito. È andato tutto liscio e mi sono ritrovato due dir /boot e /slax poi ho lanciato lo script per il mbr ecc ecc. alla fine tutto funzionava.
Siccome la chiavetta tiene 16 GB vorrei provare slax sul filesystem xfs, ma al contempo vorrei mantenere la compatibilità con "sistemi che usano solo ntfs o fat nativamente"... somma, ci siamo capiti...
Allora ho dato in pasto a fdisk la chiavetta creando due partizioni:
  • sda1 da circa 6GB formattata in ntfs con mkfs.ntfs
    sda2 da circa 10GB formattata in xfs con mkfs.xfs
Ho messo la partizione ntfs per prima perchè avevo letto da qualche parte che vi erano problemi di riconoscimento (sempre da arte di alcuni sistemi operativi) se fosse stata messa in una posizione successiva...
Alla fine ho scompattato la "slax.tar" in "sda2" e vi sono le solite due directories /boot e /slax.
Poi leggendo nella documentazione dice:
Se il tuo supporto o disco è formattato con un filesystem diverso (è vivamente consigliato usare un filesystem nativo in Linux, come XFS), dovrai invece usare lo script 'liloinst.sh'. Al momento, liloinst non presenta lo stesso elegante menu di syslinux, ma questo sarà prossimamente implementato.
Quindi sta volta ho lanciato quello script...

Codice: Seleziona tutto

Flushing filesystem buffers, this may take a while...
Updating MBR to setup boot record...
Warning: /dev/sda is not on the first disk
Warning: The initial RAM disk is too big to fit between the kernel and
   the 15M-16M memory hole.  It will be loaded in the highest memory as
   though the configuration file specified "large-memory" and it will
   be assumed that the BIOS supports memory moves above 16M.
Added Slax ? *
Disk /dev/sda should be bootable now. Installation finished.

Read the information above and then press any key to exit...
Ok.
Ora, i warning sopracitati, l'altra volta non erano saltati fuori.
Ho provato comunque a riavviare, ma sta volta non riesco a far avviare la macchina dalla chiavetta, scegliendo l'usb poi parte l'avvio da HD. In partica penso che non venga visto il blootloader, immagino perchè non è stato instalato correttamente. E quei warnings sopracitati mi sanno tanto di bruciato...

Qualcuno ha esperienza simile con slax?

Re: Slax su chiavetta con più partizioni

Inviato: gio 18 feb 2010, 18:34
da erio
quando parte la chiave hai il boot testuale di lilo?

Re: Slax su chiavetta con più partizioni

Inviato: gio 18 feb 2010, 19:23
da tgmx
Io ho fatto più o meno la stessa cosa mettendo però slax sulla prima e come seconda ho messo un fat32 ed è andato tutto liscio.
Addirittura un volta ne ho creata anche una terza ext2 ma comunque senza problemi.

Re: Slax su chiavetta con più partizioni

Inviato: gio 18 feb 2010, 19:50
da joe
Innanzitutto grazie per le risposte.

A) No, la chiavetta all'accensione della macchina proprionon parte:

- accendo

- premo esc per far apparire il prompt del bios dove mi chiede da dove far partire:
1- "removable dev"
2- HDD ecc ecc
3- CD/DVD

- Seleziono la 1 che corrisponde alla chiavetta.

- Parte comunque la 2, ovvero il mbr dell'HD interno.

Maneggiando con fdisk ho notato il seguente monito:

Codice: Seleziona tutto

# fdisk /dev/sda

The number of cylinders for this disk is set to 15424.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)
Non so se possa centrare qualcosa e come fare a risolvere eventualmente.
In ogni caso chiedo a tgmx se nel suo caso si trattava di una chiavetta partizionata o, come per me di un supporto privo di tabella di partizioni.
In ogni caso ora riprovo a ripartizionare mettendo come prima partizione la xfs.

PS.
Noto solo ora che il device /dev/sda2 si rifiuta di essere smontato:

Codice: Seleziona tutto

# umount /dev/sda2
umount: /media/kingstone2: device is busy
umount: /media/kingstone2: device is busy
A sentimento mi viene da incolpare il filesystem xfs

Codice: Seleziona tutto

3112 ?        S<     0:00 [xfslogd/0]
 3113 ?        S<     0:00 [xfslogd/1]
 3114 ?        S<     0:00 [xfsdatad/0]
 3115 ?        S<     0:00 [xfsdatad/1]
 3116 ?        S<     0:00 [xfs_mru_cache]
 3117 ?        S<     0:00 [xfsbufd]
 3124 ?        S<     0:00 [xfssyncd]
Bo, magari non è colpa sua...
kernel huge ricompilato da me, xfs l'ho messo come modulo: 2.6.24.5-fb2

Re: Slax su chiavetta con più partizioni

Inviato: gio 18 feb 2010, 20:42
da joe
Strano...
Non funziona neanche così.
- Ho ricompilato il kernel mettendo statico xfs... non so a quanto serva in generale ma va bè
- ripartizionato la chiavetta invertendo le due partizioni
- formattato la prima partizione in xfs, la seconda l'ho lasciata non formattata per provare più velocemente (formattare in ntfs è molto più lento che in xfs).
- scompattato slax nella prima partizione, poi da dentro la dir "boot" che viene creata ho lanciato lo script liloeccecc.
- riavvio... come prima. Nessun cambiamento.

Adesso m'è venuto in mente che magari, non si sa mai, potrebbe non essere sufficiente lo script che mette lilo nel mbr... allora voglio provare prima con dd a fare tabula rasa del mbr. Vediamo un po' cosa succede...
Se nel frattempo avete idee...

Re: Slax su chiavetta con più partizioni

Inviato: gio 18 feb 2010, 20:54
da erio
potresti usare gparted per fare le cose che devi , puoi dare anche il flag boot alla partizione che userai per slax.xfs non ha niente che non va caso mai e ntfs che su usb è problematico, io sulle chiavi usb ho messo grub su tutte quelle che uso e ti assicuro che è collaudato al massimo,ci faccio partire anche i sistemi sul fisso con la chiave.che dire metti a posto le partizioni e riprova ma con fat 32,sulla condivisa

Re: Slax su chiavetta con più partizioni

Inviato: gio 18 feb 2010, 23:48
da joe
Le uniche differenze tra prima quando funzionava e adesso che non funziona più era una partizione unica prima e due ora

situazione iniziale

1- /dev/sda (partizione coincidente con device, non c'era tabella delle partizioni. La partizine era in fat)
2- /dev/sda con /dev/sda1 e /dev/sda2 (quindi come un qualunque disco con tabella partizioni e partizioni "non coincidenti" col device)

Non mi resta che provare a fare un'unica partizione xfs /dev/sda1 e provare a vedere se la digerisce.
Oppure infine ritornare alla situazione originale cioè formattare direttamente /dev/sda, sta volta non in fat ma in xfs.

Mi sono capitate diverse chiavette di amici ecc, alcune sempre della kingstone come questa erano però partizionate normalmente con un unica partizione /dev/sda1, mentre come ho già detto questa era organizzata diversamente (se n'era parlato forse anche qui sul forum si parlava di formato superfloppy o qualcosa del genere ma non ricordo bene).

Intanto farò le prove di cui sopra.

Re: Slax su chiavetta con più partizioni

Inviato: ven 19 feb 2010, 8:13
da joe
Allora, ho provato a creare anche un unica partizione sul device sda:

- /dev/sda con /devsda1 formattata in xfs

Niente, all'accensione vedo sempre "Removable dev" (anche se stacco la chiavetta e a ccendo poi premo esce, vedo quella stessa scritta) e se lo seleziono parte comunque dall'hd.

- Poi ho provato a cancellare di nuovo la prima parte della chiavetta con dd:

Codice: Seleziona tutto

# dd if=/dev/zero of=/dev/sda bs=512 count=1
Quindi ho formattato in xfs direttamente il device /dev/sda in xfs

Codice: Seleziona tutto

# mkfs.xfs /dev/sda
In questo caso però quando lancio lo script ./liloinst.sh, questo si lamenta dicendomi proprio che vuole una partizione classica e non un "whole device" formattato.

- E allora... Non m'è rimasto che riportare la chiavetta all'origine.
Ho formattato l'intero device in fat:

Codice: Seleziona tutto

mkdosfs /dev/sda
poi ho lanciato ./bootinst.sh invece di liloinst.sh e non ci sono stati errori.
Al riavvio della macchina premendo esc ottengo un elenco dei devices di boot differente.
Infatti la chiavetta ora risponde al nome di "Kingstone DataTraveler" e non di semplice "Removable dev."

Quindi il problema immagino che stia unicamente nella chiavetta che è uscita di fabbrica con questo strano formato superfloppy.
Mi documenterò un po' in quanto avevo letto che in alcuni casi, occorreva (non ricordo a che pro) "convertire" una normale chiavetta in modo da farla apparire come un floppy facendo proprio ricorso a questo formato... Quindi forse c'è una procedura inversa e software che mi permette di rendere quella chiavetta una normale chiavetta partizionabile e farla digerire anche così al bios del mio portatile (portatile che ha ormai più di 5 anni).

Bene, come alsolito se con queste nuove informazioni avete nuove idee...
Mi era statopoco sopra consigliato di usare gparted... ma nel mio caso mi sa che non c''entra tanto il software utilizzato.
Ho usato:

- fdisk per partizionare
- dd per cancellare mbr e tabella partizioni
- mkfs.xfs, mkfs.ntfs, mkdosfs per formattare

Va bè, grazie nuovamente a chi è intervenuto.
Un saluto. :)

Re: Slax su chiavetta con più partizioni

Inviato: ven 19 feb 2010, 8:29
da tgmx
A me non è mai capitata una cosa del genere è mi sono sempre limitato a partizionare e lanciare lo script.
Considerà però che ho sempre usato delle sandisk senza quegli autorun strani di windows.

Re: Slax su chiavetta con più partizioni

Inviato: ven 19 feb 2010, 10:07
da joe
Bo, a quanto ne so la mia chiavetta era vuota, solo non conteneva partizioni, tant'è che appena acquistata avevo tentato di montarla aspettandomi almeno un /dev/sda1. Poi in rete avevo trovato diverse discussioni e casi ugauali al mio in cui appunto queste chiavette riportavano il filesystem direttamente spalmato sull'intero device senza partizioni ne tantoomeno tabella.
Infatti guarda che bello se do fdisk adesso che vi è una vfat sull'intero disco:

Codice: Seleziona tutto

# fdisk -l /dev/sdb

Disk /dev/sdb: 16.1 GB, 16173236224 bytes
64 heads, 32 sectors/track, 15424 cylinders
Units = cylinders of 2048 * 512 = 1048576 bytes
Disk identifier: 0xb0bcd68e

This doesn't look like a partition table
Probably you selected the wrong device.

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   ?     1573910     1694359   123339962   78  Unknown
Partition 1 does not end on cylinder boundary.
/dev/sdb2   ?      211363      590115   387841909+  10  OPUS
Partition 2 does not end on cylinder boundary.
/dev/sdb3   ?      912873     1849997   959615034   8b  Unknown
Partition 3 does not end on cylinder boundary.
/dev/sdb4   ?      879169      883233     4161539    a  OS/2 Boot Manager
Partition 4 does not end on cylinder boundary.

Partition table entries are not in disk order
Insomma anche il povero fdisk non sembra più tanto lucido... :)

Il problema però, a questo punto, sta nel bios che non riesce a riconoscere la chiavetta quando questa è partizionata... ommeglio partizionata nel modo in cui ho descritto nelle diverse prove che ho fatto.
Cerchiamo un attimo di vedere i diversi casi per capire qual è il discriminante:
  • 1- formattazione intero device in fat: riconoscimento bios OK

    2- partizionata con prima partizione xfs oppure prima partizione ntfs: riconoscimento bios NO

    3- partizione intero device in xfs: riconoscimento UNKNOWN (non avevo provato a riavviare in quanto lilo non voleva giustamente installarsi se non trovava un disco canonico con tabella delle partizioni ecc)
Si tratta di capire cosa voglia il bios. Penso di dipanare qualche dubbio con le seguenti prove:

1- partizionamento con prima partizione fat (magari il bios si stupisce se non è così)
2- spalmare il filesystem xfs sull'intero device (ok, lilo non funziona, ma il bios potrebbe riconoscere meglio la chiavetta)

Con queste prove si capisce se il discriminante di riconoscimento al bios sta nel filesystem fat sulla prima partizione oppure la presenza o meno del partizionamento, o ancora entrambe le cose.

In ogni caso vorrei sottolineare che comuqnue la chiavetta funziona come storrage normalmente indipendentemente da come viene partizionata o non partizionata.

Re: Slax su chiavetta con più partizioni

Inviato: ven 19 feb 2010, 11:24
da joe
Niente, le prove di cui sopra falliscono entrambe.
Sembra che l'unica sia:

- niente partizioni
- filesystem fat

In particolare ho provato a partizionare mettendo la prima partizione come FAT16 (codice "6" dalla lista di fdisk).

Codice: Seleziona tutto

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1        5424     5554160    6  FAT16
/dev/sda2            5425       15424    10240000   83  Linux
Ho quindi messo la slax nella prima partizione in fat e poi avviato bootinst.sh (in pratica come se la seconda partizione non ci fosse, avrei potuto fare la stessa cosa mettendo un unica partizione in fat, ovviamente con tabella delle partizioni normale).
Al riavvio, nisba, la chiavetta non viene riconosciuta come device di boot.

Quindi a quanto pare il bios riconosce solo devices usb che non abbiano tabella delle partizioni?
Almeno per la mia chiavetta pare proprio di sì e inoltre il filesste spalmato direttamente sul device fa anche la differenza in quanto per ora ha funzionato solo con vfat. Con xfs no.
Con altri filesystem non ne ho idea, potrei fare qualche altra prova...

Però a me sta storia non torna...

Come ho detto il mio portatile è di qualche anno fa (asus-z81g) ma non pensavo il bios potesse avere di questi problemi...
Se qualcun'altro avesse avuto a che fare con chiavette uscite di fabbrica non partizionate e fosse comunque riuscito nell'intento magari su una macchina simile alla mia faccia pure sapere. Grazie in ogni caso per le risposte. :)

Re: Slax su chiavetta con più partizioni

Inviato: ven 19 feb 2010, 13:37
da erio
mi sembra inpossibile che tu formatti una chiave usb e il portatile non la veda,solo windows fa lo gnorri per i file system linux,guarda solo se la chiave ha un device name diverso non la carica mi spiego,se fstab è in fila e la chiave ha sdc1 come nome se ti cambia per qualche motivo sdc1 con sde1 non parte,con i lettori multipli di schede è uguale ,se tu hai una sd e lo slot non è subito dopo gli hd slax non parte,esperienza diretta.fdisk -l che dice

Re: Slax su chiavetta con più partizioni

Inviato: ven 19 feb 2010, 13:39
da erio
ps: fat 16 outdate non fat 16, fat 32

Re: Slax su chiavetta con più partizioni

Inviato: ven 19 feb 2010, 15:54
da joe
Caro erio, devi scusarmi ma non ti riesco a seguire... non capisco quanto hai scritto sopra.

Ti sembra impossibile che il pc riconosca o meno una chiave usb a seconda del filesystem con cui è formattata e a seconda se è o non è partizionata.
Siamo d'accordo, ma devo limitarmi a dire sembra parecchio strano anche a me... sul fatto che sia impossibile... a quanto pare rilevo invece che è ahimè un dato di fatto...

Quando parli di device name diverso mi sa che vai già oltre, nel senso che il problema si ha al bios: una cosa è riconoscere ed utilizzare la chiavetta come storage, allora sì che entra in ballo il device name che linux da alla chiavetta.
Altra cosa è avviare la macchina dalla chiavetta e allora lì in gioco dovrebbe esserci bios e "quello che sta" nella chiavetta, ovvero, fstab dovrebbe essere tirato in ballo succesivamente, dopo che il bios avrà già riconosciuto la presenza di un bootloader. Insomma la questione fstab dovrebbe dare problemi nella comunicazione bootloader-partiziooni o anche bootloader-/dev/sda.

Forse tu intendevi dire quanto segue:
- metto slax nella partizione della chiavetta vista come /dev/sda1
- lancio lo script per mettere il bootloader
- riavvio ma mettiamo con anche un altro device usb attaccato che voglia il caso venga visto come /dev/sda, mantre alla nostra chiavetta con bootloader venga dato /dev/sdb

Ecco, tu dici in quel caso il bootloader che sta sempre sulla cihiavetta non riuscirebbe ad avviare sda1, in quanto in tal caso starebbe quella partizione ammesso che esistesse, starebbe nel secondo device usb che malauguratamente ci siamo ritrovati attacccato al PC all'accensione.
Non è il mio caso in quanto pur avendo anche un HD esterno attaccato in usb, devo staccarlo ogni volta all'accensione altrimenti la macchina no parte... Potrebbe essere un problema di riconoscimento anche lì da parte del bios visto che parliamo di un HD da 1TB, oppure un calo di tensione... in ogni caso è un'altra storia.
Per cui la chiavetta specie ora che l'ho tenuta costantemente attaccata, è sempre "sda".

Aggiungo anche l'esitoalcunealtre prove:

1- chiavetta formattata interamente, non partizionnata e con filesystem ntfs (mkfs.ntfs).
all'accensione viene riconosciuta perchè nell'elenco dei device bootabili appare Kingstone DataTraveler (e non Removable dev).
Se la seleziono appare una schermata d'errore perchè non c'è alcun bootloader, infatti non vi avevo messo slax.
Ho provato a mettervi slax e a lanciare bootinst.sh, ma bontà sua funziona solamente con FAT quindi ne deduco che slax ha qualche problema con ntfs in generale. Per completezza ho provato anche con liloinst.sh, ma solito problema... lilo vuole stare nel mbr creato canonicamente non in un filesystem spalmato sull'intero device.

2- Chiavetta formattata interamente in fat con mkdosfs
Viene riconosciuta all'accensione.
Se selezionata non parte perchè non vi avevo messo slax per cui non viene trovato il bootloader ovviamente.
In questo caso però mettendo slax funziona tutto.
E alla fine della favola è anche l'unico caso in cui posso usare la chiavetta con slax. Almeno stando alle prove fatte fin'ora.

EDIT.
Rileggendo meglio, vedo che parli di slot sd.
In effetti dentro lo slot del mio portatile c'è una schedina sd.ma da quello non penso sia neanche possibile avviare la macchina. Almeno nel caso del mio portatile.
In ogni caso come ho detto sopra ci sono casi in cui la chiavetta viene riconosciuta bene all'accensione ed altri no e questo, dalle prove che ho fatto dipende dalla modalità di partizionamento e dal filesystem con cui è formattata.

Re: Slax su chiavetta con più partizioni

Inviato: ven 19 feb 2010, 17:44
da erio
ciao ti avevo chiesto fdisk -l che dice con tutti i device che usi abitualmente connessi,avevo detto del fat 16 perchè si usava su chiavi fino a un giga e non oltre,per i propi limiti fisici,una domanda, la kingston ha il software u3 dentro se si bisogna che lo rimuovi