# "No space on device" aggiornando il kernel...[risolto]

## mrl4n

Ciao, ho aggiornato il kernel alla versione 2.6.34-r1 e mi sono ritrovato davanti ad un'errore inaspettato come da topic.

Una volta creata l'immagine, cercando di copiarla in /boot/ mi da il messaggio della mancanza di spazio, quando in realtà ci sono oltre 170 GB.

Non so quali info posso postare per esservi d'aiuto.Last edited by mrl4n on Fri Jul 16, 2010 3:09 pm; edited 1 time in total

----------

## darkmanPPT

non è che hai la /boot/ montata su un'altra partizione?

----------

## mrl4n

L'avevo su sda1 mentre tutto il sistema è su sda3...ho messo tutto insieme visto che sda1 non raggiunge i 50 MB.

Ora sto controllando gli inode (grazie table)

----------

## mrl4n

Gli inode non c'entrano, sapevo che non mi sbagliavo quello più "pieno" è utilizzato al 7%...

Brancolo nel buio più profondo.   :Confused: 

----------

## oRDeX

controllato con 

```
# df -i 
```

?

----------

## mrl4n

si...non conosco altro modo per controllare gli inode...  :Sad: 

----------

## cloc3

controlla in /proc/mounts di non avere caricato su boot qualche partizione non voluta.

cosa ti restituisce un df -h?

----------

## table

 *cloc3 wrote:*   

> controlla in /proc/mounts di non avere caricato su boot qualche partizione non voluta.
> 
> cosa ti restituisce un df -h?

 

posta

```
df -h
```

```
fdisk -l
```

e le impostazioni di grub relative a quel kernel

----------

## mrl4n

df -h mi restituisce un risultato che non mi aspettavo proprio

```

Filesystem      Size    Used    Avail      Use %     Montato su

rootfs            184G     27G    148G       16%               /

/dev/root       184G     27G    148G       16%               /

rc-svcdir         1,0M     84K    940K        9%      /lib/rc/init.d 

udev               10M    232K     9,8M       3%           /dev

shm                1,5G       0      1,5G        0%        /dev/shm

/dev/sda1        38M     38M       0        100%         /boot

/dev/sdb1       932G   314G    618G      34%     /media/dati1 

/dev/sdc1         75G     52G     24G      69%     /media/dati2

/dev/sdd1       373G    7,4G    366G       2%     /media/dati3

/dev/sde1       280G   265G      15G     95%     /media/dati4

```

Ora ho smontato /dev/sda1 e sono riuscito a copiare bzImage in /boot/kernel-2.6.34-gentoo-r1 su /dev/sda3.

Chiaramente non funziona; tutti i precedenti kernel sono in /boot su /dev/sda1.

Non so come uscirne...

Il mio grub.conf

```
default 0

timeout 30

splashimage=(hd0,0)/boot/grub/splash.xpm.gz

title Gentoo 2.6.34

root (hd0,0)

kernel /boot/kernel-2.6.34-gentoo-r1 root=/dev/sda3 ahci.marvell_enable=0 mtrr:3,ywrap 

title Gentoo r10

root (hd0,0)

kernel /boot/kernel-2.6.31-gentoo-r10 root=/dev/sda3 ahci.marvell_enable=0

title Finester (la` giu` in ditta)

map (hd0) (hd3)

map (hd3) (hd0)

rootnoverify (hd3,0)

chainloader +1

```

----------

## oRDeX

cancellando qualcosa da /dev/sda1?

----------

## mrl4n

E' quello che avevo pensato...

Anche qui un problema.

Se cerco di rimuovere qualche vecchio kernel 

```
# emerge -C gentoo-sources
```

ottengo un "invalid atom package" qualunque sia il kernel che cerco di rimuovere.

Rimuovere a mano, significa peggiorare una situazione già tragica, e come se non bastasse ora devo entrare da shell perchè se cerco di avviare uno qualsiasi dei kernel X e kde si inchiodano avvisandomi che il driver nvidia e il modulo del kernel non sono della stessa versione.

Mi serve un'esorcista.

Il mio fstab 

```

/dev/sda1               /boot           ext2            noatime         1 2

/dev/sda3               /               ext3            noatime         0 1

/dev/sda2               none            swap            sw              0 0

/dev/cdrom              /mnt/cdrom      auto            noauto,ro       0 0

/dev/fd0                /mnt/floppy     auto            noauto          0 0

/dev/sdb1               /media/dati1  ntfs-3g        default,umask=000  0 0

/dev/sdd1               /media/dati3  ntfs-3g        default,umask=000  0 0

/dev/sde1               /media/dati4  ntfs-3g        default,umask=000  0 0

/dev/sdc1               /media/dati2  ntfs-3g    default,umask=000  0 0
```

Last edited by mrl4n on Fri Jul 16, 2010 8:29 pm; edited 1 time in total

----------

## oRDeX

bhe sono due cose separate. Il tuo errore è relativo ad un uso errato di portage. Epoi non è importante cancellare un kernel installato, ma bensì in questo caso devi rimuovere LE VECCHIE IMMAGINI CHE NON USI PIÙ presenti un /boot (ovviamente intendo in /dev/sda1) per liberare lo spazio

----------

## mrl4n

 *oRDeX wrote:*   

> Epoi non è importante cancellare un kernel installato, ma bensì in questo caso devi rimuovere LE VECCHIE IMMAGINI CHE NON USI PIÙ presenti un /boot (ovviamente intendo in /dev/sda1) per liberare lo spazio

 

Cancellare qualsiasi cosa servirebbe solo a mettere un [risolto] nel titolo di questo post, ma non far ripartire gentoo.

----------

## cloc3

 *mrl4n wrote:*   

> 
> 
> Se cerco di rimuovere qualche vecchio kernel 
> 
> ```
> ...

 

 :Question: 

non ti serve rimuovere il pacchetto dei sorgenti, ma le immagini del kernel installate da genkernel nella boot.

io lo ho sempre detto che genkernel è un programma diseducativo. prima o poi ci posto un baco su bugzilla   :Cool:  .

un vero gentoista, i kernel se li dovrebbe spostare a manina con cp, nella /boot.

guarda il tuo stesso df -h. hai riservato alla partizione di boot appena 38M. i sorgenti del kernel ne occupano centinaia.

ha ragione Ordex, dicendo che devi solo fare un po' di pulizia.

----------

## mrl4n

 *cloc3 wrote:*   

>  *mrl4n wrote:*   
> 
> Se cerco di rimuovere qualche vecchio kernel 
> 
> ```
> ...

 

A parte che genkernel non lo uso da un pezzo e forse è proprio per quello che il mio sistema funziona alla c***o, proprio perchè sto cercando un'errore dopo l'altro di perfezionarlo secondo la mia macchina.

Chi conosce gentoo, ti consiglia di seguire l'handbook durante l'installazione (l'handbook non ti dice di creare una partizione di boot più grande, ma questo lo scopri solo dopo che ti sei trovato in una situazione come la mia).

Rimuoviamo solo le immagini e poi rimaniamo in situazioni dove un semplice comando 

```

# eselect kernel list

Available kernel symlink targets:

  [1]   linux-2.6.30-gentoo-r8

  [2]   linux-2.6.31-gentoo-r6

  [3]   linux-2.6.31-gentoo-r10

  [4]   linux-2.6.32-gentoo-r7

  [5]   linux-2.6.34-gentoo-r1 *

```

ci da una lista sterminata di cose inutili che "sporcano" il sistema.

Probabilmente non sono ancora in grado di spostarmi un kernel a mano, ma di certo se è vero che ogni situazione è unica, è altrettanto vero che è difficile trovare qualcuno in grado di darti indicazioni veramente utili.

Voglio rispondere a tono all'affermazione senza nessuna intenzione polemica.

Grazie dell'aiuto.Last edited by mrl4n on Fri Jul 16, 2010 8:29 pm; edited 1 time in total

----------

## cloc3

 *mrl4n wrote:*   

> 
> 
> Chi conosce gentoo, ti consiglia ...

 

ok. scusa. forse ho esagerato con qualche espressione.

ma il problema è un'altro.

tu hai la partizione /dev/sda1 piena perché è stata creata volutamente molto piccola (e questo, per lo più, è un bene), ma non è stata mantenuta con la dovuta pulizia.

pensavo che tu installassi il kernel con qualche automatismo. se non è genkernel, potrebbe essere make install.

quelli sono comandi che copiano il bzImage in /boot (e qualche altra cosa), ma successivamente ne perdono la traccia.

al contrario, quando aggiorni un programma con emerge, viene fatta una pulizia automatica della versione precedente.

quando si compila un nuovo kernel e si ripete il comando, viene aggiunta una nuova immagine, ma non viene rimossa la precendente.

di questo passo, si fa prima a riempire 38M.

per fare pulizia non esistono comandi di sistema, perché gentoo non offre questo tipo di servizio.

bisogna fare ls /boot, guardare le cose cose servono e non toccarle, per spostare quelle che non servono.

----------

## mrl4n

Un'ultima cosa prima di rischiare l'OT.

Ho eliminato tutte le immagini tranne quelle degli ultimi due kernel da /boot. 

Se guardo la lista dei kernel disponibili vedo ancora tutti quelli che ho cancellato; come faccio a eliminare con certezza tutti i sorgenti e tutte le tracce rimaste in giro per il sistema?

----------

## cloc3

 *mrl4n wrote:*   

> come faccio a eliminare con certezza tutti i sorgenti e tutte le tracce rimaste in giro per il sistema?

 

i sorgenti si eliminano con emerge -C pacchetto.

nel sistema non deve restare proprio nulla.

salvo che tu sia intervenuto manualmente per qualche motivo.

in ogni caso, i sorgenti del kernel sono esclusivamente contenuti in /usr/src .

si sta  un attimo a controllare con un ls.

----------

## mrl4n

Come ho già detto con emerge -C pacchetto non mi rimuove assolutamente nulla...vedrò di fare a manina sperando di evitare guai.

Grazie

P.S. rm -rf da root e pulizia è fatta

----------

## pingoo

 *mrl4n wrote:*   

> Come ho già detto con emerge -C pacchetto non mi rimuove assolutamente nulla...vedrò di fare a manina sperando di evitare guai.
> 
> Grazie
> 
> P.S. rm -rf da root e pulizia è fatta

 

Mi permetto di aggrapparmi alla documentazione http://www.gentoo.org/doc/it/kernel-upgrade.xml, in part. al paragrafo 9, prima di andare a letto mi sono impaurito un attimo col rm -rf da root  :Very Happy:  (anche se corretto)

----------

## oRDeX

vorrei dire due cose:

1) emerge -C pacchetto non ti stava funzionando perchè stavi dando male il comando!!

2) eselect ti mostra tutti quei kernel non per poter scegliere quale avviare, ma bensì per scegliere a quale kernel dovrà puntare il link /usr/src/linux

----------

## mrl4n

Qui con gli OT facciamo perdere la pazienza ai moderatori...  :Very Happy: 

 *oRDeX wrote:*   

> vorrei dire due cose:
> 
> 1) emerge -C pacchetto non ti stava funzionando perchè stavi dando male il comando!!

 

Vogliamo rendere la tua affermazione costruttiva? Qual'è la sintassi corretta?

 *oRDeX wrote:*   

> 
> 
> 2) eselect ti mostra tutti quei kernel non per poter scegliere quale avviare, ma bensì per scegliere a quale kernel dovrà puntare il link /usr/src/linux

 

A parte che se puntiamo /usr/src/linux e grub/lilo su uno di quei link il sistema partirà con uno di quei kernel....comunque dubito possano servirci 5 kernel sulla macchina.

----------

## oRDeX

 *mrl4n wrote:*   

> Qui con gli OT facciamo perdere la pazienza ai moderatori... 
> 
>  *oRDeX wrote:*   vorrei dire due cose:
> 
> 1) emerge -C pacchetto non ti stava funzionando perchè stavi dando male il comando!! 
> ...

 

Forse devi specificargli lo slot..

```
# emerge -C gentoo-sources:2.6.34
```

per esempio.

Con 

```
#eix -s gentoo-sources
```

vedrai gli slot in rosso tra parentesi

[quote=]

 *oRDeX wrote:*   

> 
> 
> 2) eselect ti mostra tutti quei kernel non per poter scegliere quale avviare, ma bensì per scegliere a quale kernel dovrà puntare il link /usr/src/linux

 

A parte che se puntiamo /usr/src/linux e grub/lilo su uno di quei link il sistema partirà con uno di quei kernel....comunque dubito possano servirci 5 kernel sulla macchina.[/quote]

Occhio perchè grub non punta a nulla! Qualunque sia la destinazione di /usr/src/linux, grub userà la sua configurazione e le immagini contenute in /boot per far partire il sistema

----------

