Re: Ancora sulle installazioni.

2023-09-20 Per discussione Alessandro Rubini
>> ps: banalizzando, lo spazio di swap si usa per spostarci le cose meno
>> importanti e liberare ram. E` come ram di riserva, ma "offline".

> mi sembra che lo swap (che è una partizione del disco) serva a
> prolungare la memoria ram, ovviamente è molto più lenta e
> sconsigliata con una ram abbastanza capiente

Quasi esatto. Lo swap e` memoria esterna, puo` essere una partizione
ma anche un file, o altro (network block device, almeno tempo fa).  Ha
senso avere un po' di swap anche se la memoria e` capiente, ma dipende
dal caso d'uso. Io ho sempre aperti decine di terminali ed editor e mi
va bene che i dati di chi non e` attivo vengano spostati per avere
piu` cache del disco sulle cose che sto usando in quel momento.

Mi hanno fatto notare, fuori lista e con modi molto sgarbati, che
usando il modulo zram si puo` creare spazio compresso su ram, visto
come un block device, quindi un disco, su cui si puo` mettere
qualsiasi cosa, anche lo swap.

Quindi ci sono situazioni in cui potrebbe aver senso togliere un po'
di ram vera per farla diventare swap compresso. Quindi tolgo ram
"online" per avere piu` ram "offline" (ma quanta di piu` non e`
prevedibile, perche` dati diversi si comprimono diversamente: se ho
tanti jpeg in memoria, per esempio, non si comprimono se li mando in
swap.

Dipende molto dal caso d'uso e dalle velocita` relative di processore
e disco (quello dove stanno programmi e dati).

Rimango scettico, e mi tengo lo swap su disco. Poi per fortuna ognuno
fa come vuole.



Re: Ancora sulle installazioni.

2023-09-19 Per discussione Alessandro Rubini
> sarebbe almeno auspicabile avere la swap in ram,

Questa e` una bestialita`. Oppure non ho capito. Si puo` avere un
riferimento? Stasera ho cercato ma non ho trovato niente in merito. Ho
trovato tante altri errori su memoria virtuale e spazio di swap, ma
non questo.

Chi sa fa, chi non sa insegna (si, lo dico anche ai miei studenti).
Quindi molti siti sono pieni di castronerie.

ps: banalizzando, lo spazio di swap si usa per spostarci le cose meno
importanti e liberare ram. E` come ram di riserva, ma "offline".



Re: [OT] Batteria portatile

2023-09-13 Per discussione Alessandro Rubini
>> Ci sono apparecchi che con i 1.2V delle nichel-cadmio non si accendono
>> neanche, per esempio i termostati delle caldaie (non alimentati).

Certo, dipende dall'utilizzatore. Comunque qui parliamo del 20% in meno.
Nel caso originale 11.1/10.8 = 2.8% in piu`. Decisamente trascurabile
per il caso d'uso.

> E molte vecchie console per videogiochi portatili. Che pero` spesso ne hanno
> quattro in serie, quindi la differenza non e` piccolissima: quattro batterie
> da 1.5 equivalgono a cinque da 1.2.

Sempre il 20%. Il valore assoluto non e` mai importante.
(poi le resistenze da 0R all'1% piuttosto che 5% di precisione mi fanno ridere).



Re: [OT] Batteria portatile

2023-09-13 Per discussione Alessandro Rubini
>> E` frequente chs le batterie orignali siano migliori dei ricambi. Mi sfugge
>> il motivo, ma posso immaginarne 5 o 6 diversi, quindi si accetta la cosa
>> senza troppa preoccupazione,
> 
> Grazie Alessandro, tutte cose molto interessanti... ma non avresti 
> voglia di dirci qualcosa in piu` sulle ipotesi che circolano sul motivo 
> per cui le originali siano sempre meglio delle compatibili?

Non conosco le ipotesi che circolano. Se qualcuno vuole cercare in
rete forse le trova. A un primo colpo io non le trovo pero`.

> Io ad esempio ero convinto fosse una sensazione, che quello che
> contava erano in mAh ma se mi dici cosi` mi stuzzichi la curiosita`.

I mAh contano, ma come al solito possiamo fidarci fino a un certo punto
di quello che dice il produttore. Numeri cosi` volatili (con le temperature,
l'usura, la variabilita` tra i singoli pezzi) rimangono solo indicativi.

I motivi che "posso immaginare" come dicevo dipendono da
considerazioni varie mettendomi dal punto di vista del produttore.

Partiamo dal fatto che esistono varie (tante?)  chimiche diverse per
le batterie, ciascuna con le sue tensioni nominali e curve di
carica. Normalmente la tensione nominale e` 3.7V ma ci sono variazioni
(nota: 3.7x3 = 11.1, 3.6x3 = 10.8).  Wikipedia (di cui ci fidiamo il
giusto) dice da 3.6 a 3.85.

La macchina nuova ha un prezzo tale da giustificare un investimento
maggiore. Il prezzo atteso dall'acquirente e` alto, metterci 5-6 euro
in piu` per una batteria migliore e pubblicizzare 8 o 10 ore di
autonomia senza essere sbugiardati dal primo altroconsumo che passa,
e` utile.  Sul ricambio nessuno si gioca l'immagine, e l'acquirente
spesso guarda solo il prezzo (in cui pochi euro contano di piu` in
percentuale).

Argomentazione simile: quando compri 1000 o 10mila pezzi imbancalati
che vanno direttametne in montaggio hai un prezzo diverso dai 10 o 100
impacchettati singolarmente di chi vende i ricambi. Se il pc costava
1000 e ora ne vale 300, pochi comprerebbero 150 euro di batteria,
mentre quella piu` scrausa ha un mercato. Cioe`, avendo fattore di
scala si possono ottenere prodotti migliori ammortizzando i costi.

Problemi di conservazione e spedizione: le grosse quantita`, gestite
dal produttore, possono avere una filiera di approvvigionamento piu`
diretta e controllata. Senza troppe botte o sbalzi termici. Questo
potrebbe permettere di acquisire una chimica migliore o un prodotto
piu` "fresco" (senza invecchiamento in magazzino) che arriva a
garantire, almeno sul prodotto appena uscito di fabbrica, prestazioni
migliori.  Il PC viene per forza trattato bene durante il trasporto.
Il ricambio sta sotto il sole nei piazzali dei porti o sbattuto a
destra e sinistra nei vari magazzini, e invecchia male perche` aspetto
l'acquirente che forse arriva forse no. Non mi aspetto piu` un
ricambio perfomante come il nuovo, anche a parita` di caratteristiche
iniziali.

Altri problemi relativi alla spedizione: ci sono norme di sicurezza sulle
batterie che cambiano con le varie chimiche. Molte non possono volare,
eccetera.  Non mi stupirebbe che i ricambi, che devono arrivare in
tempi "civili" (io aspetto da un mese, ma sono un pirla) preferiscano
essere fatti in modo da poter viaggiare, a scapito delle prestazioni.
Anche le macchine nuove devono arrivare in fretta (anche se qualche
giorno in piu` o in meno non cambia, data tutta la filiera a monte con
le incertezze sui ritardi accumulati). Ma queste essendo numerose
posso mandare via i miei mezzi senza grossi problemi.

Non ho simpatia per le grandi aziende, preferisco le piccole, ma se
vogliamo che le cose costino poco dobbiamo accettare tutti gli effetti
dei fattori di scala. Una conseguenza e` che spesso gli oggetti non
sono aggiustabili o manutenibili. Non penso sia un bene ma e` cosi`.

Opinioni e immaginazioni personali, posso essere sbugiardato senza
vergogna da chi ne sa di piu`.



Re: [OT] Batteria portatile

2023-09-12 Per discussione Alessandro Rubini
>> Come voltaggio viene riportato 10.8 V mentre sulla batteria da 4400mAh
>> 11.1 V. Puo` andar bene?

> Penso di si`, ma se te lo dessi per certo azzarderei conoscenza che non ho
> (sentiamo cosa dice anche Alessandro R.);

Oops! Promosso a super esperto di batterie...

Sul mio portatile non avrei alcuna paura a metterla.

La tensione nominale e`, appunto, nominale. Un'etichetta con poco
significato reale. La batteria ha una certa oscillazione di voltaggio,
sia da carica a scarica sia in base alla corrente che sta entrando o
uscendo.  Le pile stilo o mini-stilo sono da 1.5V, ma le ricaricabili
da 1.2V vanno bene quasi sempre. E se le misuriamo, le stilo normali
nuove sono a 1.8 e da scariche (ma funzionanti) arrivano senza
problemi a 1.0 o anche meno -- dipende dall'utilizzatore: la mia
fotografica e` esigente e con le ricaricabili fa poche foto prima di
lamentarsi.

Il litio ha un'oscillazione minore, ma si parla sempre del 20% almeno
(a memoria). Quindi 0.3V non e` una differenza significativa.
Ovviamente il circuito di ricarica del portatile deve essere pronto a
gestirla, ma se la vendono per compatibile sicuramente lo e`.  Per
male che vada, non verra` ricaricata proprio completamente (ma quasi).

Se si tratta di recuperare un portatile va benissimo. Se si vuole una
cosa al massimo delle prestazioni sicuramente non ci si arriva, ma
come dicevo raramente si trova come ricambio lo stesso prodotto che
era montato sull'originale, e ci si deve accontentare.  Sicuramente
non si rompe la macchina.  Certo se fosse da 9V invece che 10.8,
sarebbe sempre segnata come scarica (e potrebbe essere sovraccaricata,
con riscaldamento e danni) e se fosse da 15V invece che 10.8 potremmo
temere il portatile (e non verrebbe ricaricata). 0.3V non sono
significativi.

Il mio portatile, dopo 10 anni, ha bisogno della terza batteria, che
sto aspettando. La seconda ha durato meno della prima.  Ora sto
usandone uno di recupero (piu` potente del mio ma con le sue
stranezze), in attesa di sceglierne uno da comprare, che mi hanno dato
per "batteria da cambiare" ma per i miei usi non ha problemi. Tiene
molte ore in suspend-to-ram e quello basta, in particolare ora che
tutti i treni hanno la presa su ogni posto.



Re: [OT] Batteria portatile

2023-09-12 Per discussione Alessandro Rubini
> Sto cercando in rete ma trovo solo batterie a 4400mAh (dove viene
> riportato che è compatibile con il modello del portatile) mentre su
> quella originale viene riportato 5200mAh.

Nessun problema. Se consumi 1A quella orignale finisce in 5.2 ore e questa in 
4.4.
Se la danno per compatibile siamo a posto.

E` frequente chs le batterie orignali siano migliori dei ricambi. Mi sfugge
il motivo, ma posso immaginarne 5 o 6 diversi, quindi si accetta la cosa
senza troppa preoccupazione,



Re: Errore in dmesg di "task kworker"

2023-08-30 Per discussione Alessandro Rubini
Riparto dal messaggio originale. E` un po' che non metto mano in queste
cose quindi non volevo dire bestialita`, ma ho visto degli errori in
alcune altre risposte.

Prima di tutto, no, questa volta non dico sia colpa di systemd :)

> [3730483.156140]

Questo e` il tempo dall'accensione, in secondi. 43.17 giorni.  Il
sistema internamente non usa il tempo esterno perche` non e`
affidabile (se l'utente o ntp cambia l'ora che succede?)


> INFO: task kworker/0:2:32752 blocked for more than 120 seconds.

Dopo dice "task:kworker/0:2" a conferma che 32752 e` il pid
di kworker/0:2 . Quindi fare "ps" e` inutile.

Non e` "andato in timeout", espressione che indica il fallimento di
qualcosa. Ci ha messo piu` di 120 secondi a fare quello che doveva
fare. Se il messaggio e` per 120 secondi, e non 120ms, vuol dire che
e` abbastanza normale che ci metta un po'.

> "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.

Cercherei in rete o nei sorgenti "hung_task_timeout_secs", sapendo che
la prima fonte e` piena di falsi. Sono fuori sede e non ho un
linux.git sotto mano, ma prima o poi ci guardo per curiosita` mia.

> [3730483.156210] Workqueue: events_freezable mmc_rescan

Questa e` la coda di cose da fare per questo processo. Quindi immagino
stia facendo mmc_rescan, che potrebbe essere un'operazione lunga, in
particolare se la memoria e` in uso (quindi l'I/O di rescan va
intercalato con gli altri I/O). Ma non so cosa sia mmc_rescan, va
controllato.

> [3730483.156233] Call trace:
> [3730483.156237]  __switch_to+0xf8/0x1e0
> [3730483.156252]  __schedule+0x2a8/0x830
> [3730483.156260]  schedule+0x60/0x100

Qui si vede che il messaggio avviene durante un cambio di contesto
(switch_to, schedule), quindi non e` detto che quanto sta nello stack
trace sia significativo. Su un'altra macchina mi capita spesso e lo
stack trace non ha relazione col baco che genera il ritardo.

> [3730483.156269]  __mmc_claim_host+0xbc/0x208
> [3730483.156276]  mmc_get_card+0x3c/0x50
> [3730483.156283]  mmc_sd_detect+0x28/0x98
> [3730483.156290]  mmc_rescan+0xa0/0x2c8
> [3730483.156297]  process_one_work+0x208/0x480
> [3730483.156307]  worker_thread+0x50/0x428

In realta` sembra che la cosa sia significativa. Il processo che
subisce schedulazione sta facendo mmc_rescan (e non ha schedulato per
piu` di 120 secondi: non ci dice quanto perche` non e` ancora
successo). Andrebbe verificato cosa sia questa cosa. Non e` che la macchina
ha un secondo slot sd, non popolato, che viene erronemaente rilevato
per un bogone sul segnale di presenza ("card inserted")?

Comunque non e` nulla di fatale, tanto che si puo` disabilitare il
messaggio. Certo, la sdcard non e` eterna, in particolare se ci si
scrive molto.

> Mi dovrei preoccupare?

Il giusto, non di piu` non di meno.



Re: Errore in dmesg di "task kworker"

2023-08-30 Per discussione Alessandro Rubini
> le SD non hanno alcun sistema di monitoraggio ala-SMART, quindi
> muoiono di botto e basta.

In realta` alcuni vendo qualcosa offrono. Ho un cliente che usa una
libreria del vendor sulle eMMC dei suoi impianti sul territorio.
Ovviamente roba del vendor, fatta male e secretata.  Non ne so altro
per ora, e quando lo sapro` non portro` piu` parlarne.

Comunque la memoria a stato solido e` una brutta bestia, una volta il
cliente imputava un baco nel mio buildroot, mesi dopo e` uscito che
era un baco firmware nella chiavetta usb. C'e` un processore la`
sotto, e non sappiamo quello che fa.



Re: pdftk feature o bug?

2023-08-10 Per discussione Alessandro Rubini
> Sto eseguendo il comando "pdftk /home/paride/Documenti/wip/25/25.pdf 
> burst" per fare lo split di un documento pdf.
> il risultato è che non fa assolutamente nulla.

Dame funziona. I file di output vengono scritti nella directory in cui
viene eseguito il comando, non in quella del file originale.  E lo fa
silenziosamente.  Se non c'e` il permesso di scrittura da` quasi
correttamente errore:

   [...]
   Error: Failed to open output file: 
  pg_0094.pdf
  No output created.
   [...]

Vorrei tanto un "permission denied", perche` "Failed to open"
non vuol dire niente: potrebbe essere EROFS, ENOSPC o altrecose.

Quando sembra che non faccia nulla, consiglio di ripetere il comando
sotto "strace", cosi` si vede se davvero non fa niente, o cosa sta
facendo.

saluti
/alessandro



Re: Debian 12 - Messaggi dmesg

2023-07-24 Per discussione Alessandro Rubini
> [0.208536] ** This system shows unhashed kernel memory addresses   **

Vuol dire che i messaggi del kernel mostrano gli indirizzi interni
invece di una "hash" degli stessi (ma solo se il driver usa "%p" per
stampare il puntatore, invece che le normali stringhe testuali.
Per esempio in caso di oops o panic.

> [0.208536] ** via the console, logs, and other interfaces. This**

Appunto, i messaggi.

Questo quadratozzo di NOTICE sta in lib/vsprintf.c nei sorgenti del kernel,
da cui vedo che dipende dal parametro "no_hash_pointers".

Guardando /proc/cmdline si dovrebbe vedere la presenza di questa
opzione, che si puo` togliere nella configurazione del boot loader.

Io, che sono vecchio e rinco, non vedo 'sto gran problema di
sicurezza, e da sviluppatore preferisco di gran lunga i numeri
veri. Ma oggi non si possono minimizzare potenziali minacce senza
sembrare rinco (appunto!) quindi forse andrebbe tolta l'opzione.

Il dubbio che rimane e` perche` qualcuno ha messo quel parametro,
che serve solo a chi fa debug sul kernel. Da me non c'e` :)

Comunque tra ricerche in rete e/o "git blame" sui sorgenti, e` spiegato
tutto.

saluti
/alessandro



Re: samba e vecchi client

2023-07-24 Per discussione Alessandro Rubini
Se con '1.0' da` invalid argument e con 1.0 funziona, direi che il problema
sono gli apici, anche se non uso samba.

Aggiungere gli apici nel smbmount fatto a manina non avrebbe effetto, perche`
l'apice viene usato dalla shell, che non interviene nell'uso da fstab.

/alessandro



Re: sylpheed

2023-07-15 Per discussione Alessandro Rubini
> Che tipo di modifica?

Era indicato il baco:

   https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1037605

> Da molto tempo non leggevo di release del compilatore che "rompeva"
> codice esistente (e testato!)

E` comune. Io quando aggiorno ho le crisi di panico, perche` so che si
puo` rompere il mio codice, "esistente e gia` preso a testate" come dici.

In questo caso il problema e` nel c++, che come sappiamo e` un linguaggio
che cambia ogni volta che soffia il vento. Qui, a vedere il baco senza
conoscere il linguaggio, sembra qualche inclusione mancante e qualche
roba come dicevo su. "void" non e` piu` ammesso come tipo per certe
cose, forse perche` il default e` passato da -std=c11 a -std=c18
o cose del genere.

Ma anche il C, che cambia ogni morte di papa, ha gli stessi problemi:
ci sono bachi non esposti che appaiono quando il compilatore introduce
nuove forme di ottimizzazione diventano visibili.

C'e` ancora chi fa i ritardi con "for (i=0; i<1000; i++);", e
questa roba *deve* rompersi (la trovo ancora negli esempi dei vari
vendor, la faccio vedere agli studenti e parte il turpiloquio a
registratori spenti).



Re: Altra domanda da niubbio sulle reti.

2023-07-03 Per discussione Alessandro Rubini
> dotato di un nome; questo compare anche nella risposta al ping; se infatti
> eseguo da remoto "ping mioDominio.ddns.net" ottengo nella risposta "64
> bytes from host-xx-xx-xx-xx.retail.telecomitalia.it (xx.xx.xx.xx):

Il blocco di indirizzi e` stato comprato da telecom, e quindi la
risoluzione inversa dei nomi viene gestita da telecom. Dubito che
telecomp permetta di cambiarlo (cosa che, come gia` notato, ha senso
solo se e` un IP statico).

Il mio fonitore (da cui ho preso un IP statico) lo permette, quindi ho
un mio nome assegnato al mio indirizzo IP.  Cosa che faccio da sempre
anche con gli indirizzi interni alla mia rete: ogni macchina ha un
nome e il DNS sia diretto che inverso. Il mio server interno e` autorevole
per 192.16.16.x quindi mi resituisce i nomi che voglio io. Proprio come
telecom nel caso dell'IP della domanda originale.

saluti
/alessandro



Re: Siamo fottuti (dal 1998) [Era: Re: secure boot e TPM 2.0]

2023-05-10 Per discussione Alessandro Rubini
Grande Leandro, grande Fog. Non scherzo.

> e` un po' come dire che qualche centinaio di persone che mantengono
> qualche decina di distribuzioni Linux sono tutti degli idioti

No, non vuole esserlo, anche se capisco che possa sembrarlo.

> un sacco di funzionalita` desiderate dagli utenti (e dagli 
> sviluppatori/amministratori) nei sistemi moderni.

Lo capisco. Ma lavoro (o lavoravo) nell'embedded, dove le cose sono
(mi pare) un po' diverse.  Inutile mettersi a discutere qui, e` una
questione piu` politica che tecnica. E si, "e` troppo difficile" conta
non poco.  E mi ha buttato nel cesso anni di esperienza. Conta non
poco. Mi si sono rotte anche un tot di cose, perche` i miei sistemi
sono strani. Ovviamente sui vps lo tengo, li` e` tutto standard.

E ha trasformato il boot da procedurale a dichiarativo. Quindi o e`
previsto (e non ci sono bachi) o non si fa.  Sicuramente non ho capito
io, e qualche volta mi piacerebbe far due parole serie con te (fog).
Vieni all'esc? (endsummercamp.org) Mi trovi in cucina, perche`
tenicamente sono morto. Comunque proprio oggi sono stato da un cliente
non piccolo che non usa systemd, per gli stessi miei motivi (e no, non
sono stato io: non lavoravo per loro da 15 anni).

Sicuramente e` una via quasi senza ritorno, dove una persona, o il suo
datore di lavoro, ha in mano tutte le scelte tecniche di base del
sistema, e continua ad espandersi. "Come git" diranno alcuni :)

> systemd e` stato adottato perche` le persone a cui non piace non
> sono state in grado di proporre un'alternativa tecnicamente valida.

Vero.

> Chi non e` contento puo` contribuire ad una delle 
> tante (o poche?) distribuzioni che non usano systemd.

Giustissimo. Tecnicamente non riesco ma ho qualche donazione in canna,
discorso che cerco di fare anche con i colleghi. Ma nell'ultimo anno
le priorita` sono state altre e non c'era margine.



Re: secure boot e TPM 2.0

2023-05-09 Per discussione Alessandro Rubini
> Microsoft e` famosa per la sua pericolosita`.

> imho, siamo alla prima delle famose tre E. 

Siamo gia` alla seconda. Systemd e` di microsoft.

A parte che ci stiamo catafottendo da soli, ha ragione gerlos.  E
qualche tempo fa sembrava che pure la fsf lo avesse capito, con
la storia della "freedom ladder" (cioe` un passetto alla volta).

Poi sull'efficacia della loro e nostra comunicazione, mi taccio,
anche perche` sono il primo che non e` capace.



Re: PC Desktop nuovo: Stop job

2023-03-29 Per discussione Alessandro Rubini
> "A stop job is running for USER MANAGER for UID 1001"

systemd. Una gioia.

> Cioe` ogni volta che spengo devo attendere 2 minuti.
> Ho guardato ora in top ed atop ma non vedo processi con il numero 1001.

Identificativo utente, non processo. Di solito 1001 e` l'utente
definito in fase di installazione. Io sono 410 perche` sono
vecchio. Forse dipende dal non aver fatto logout e ci sono processi
dell'utente in giro. Ma se si fa logout come si dice al sistema di
spegnersi?

Va ancora bene: spegnere si puo` sempre. A me si fermava due minuti
all'accensione per qualcosa su /home e poi non lo montava.

/rubi che sta litigando con systemd su embedded, maledetto cliente



Re: rsync e link simbolici

2023-02-14 Per discussione Alessandro Rubini
> E` possibile far si` che rsync lasci i link simbolici se puntano a
> file o directory nel ramo che sta copiando, ma li trasformi in file e
> directory se sono esterni?

Spero di no. Fossi io il manutentore di rsync rifiuterei una patch
in tal senso. Se un file e` importante e voglio farne il backup,
lo conservo nel posto importante, e al limite il link simbolico lo
faccio da fuori. O tutti o nessuno, il resto e` arbitrario e` poco
affidabile.

Per il resto sono d'accordo ad usare rsync per il backup. Saro`
vecchio, ma i tanti strumenti troppo complessi e "faccio tutto io " mi
spaventano. Troppi programmi scompaiono in pochi anni: se devo
affidarci il mio lavoro, prendo uno strumento semplice e solido che
promette di durare nel tempo.

In particolare, rsync con i link fisici e` comodissimo. Ogni
giorno copio /home, ma se un file e` uguale al precedente backup
viene fatto un link fisico, Questo il mio disco di backup attuale:

home/ home-211210/  home-220730/  home-230105/  home-230125/
home-150201/  home-220110/  home-220810/  home-230106/  home-230126/
home-160210/  home-220120/  home-220820/  home-230107/  home-230127/
home-170210/  home-220130/  home-220830/  home-230108/  home-230128/
home-180210/  home-220210/  home-220910/  home-230109/  home-230129/
home-190210/  home-220220/  home-220920/  home-230110/  home-230130/
home-200210/  home-220310/  home-220930/  home-230111/  home-230131/
home-201010/  home-220320/  home-221010/  home-230112/  home-230201/
home-201110/  home-220330/  home-221020/  home-230113/  home-230202/
home-201210/  home-220410/  home-221030/  home-230114/  home-230203/
home-210110/  home-220420/  home-221110/  home-230115/  home-230204/
home-210210/  home-220430/  home-221120/  home-230116/  home-230205/
home-210310/  home-220510/  home-221130/  home-230117/  home-230206/
home-210410/  home-220520/  home-221210/  home-230118/  home-230207/
home-210510/  home-220530/  home-221220/  home-230119/  home-230208/
home-210710/  home-220610/  home-221230/  home-230120/  home-230209/
home-210810/  home-220620/  home-230101/  home-230121/  home-230210/
home-210910/  home-220630/  home-230102/  home-230122/  home-230211/
home-211010/  home-220710/  home-230103/  home-230123/  home-230212/
home-20/  home-220720/  home-230104/  home-230124/  home-yesterday/

E questo file, per esempio, non cambia da tempo, ha 72 link fisici:

   arcana% ls -l home/rubini/.inputrc 
   -rw-rw-r-- 72 rubini staff 134 Apr  3  2022 home/rubini/.inputrc

Alla fine ogni copia oltre la prima costa molto poco in spazio su disco,
poi dipende da come si usa il disco.

   arcana% du -s home home-yesterday
   48315512   home
4689680   home-yesterday

Lo script, in cron, usa "--link-dest":

   days2=$(/root/yesterday -2)
   mv $D/home-yesterday $D/home-$days2
   mv $D/home $D/home-yesterday
   rsync -av --link-dest=$D/home-yesterday /home/ $D/home

Dove "yesterday -2" ritorna la data di due giorni fa. L'ho fatto
il millennio scorso ed e` in C, oggi lo farei in /bin/sh tipo:

   delta=2 # o da commandline
   deltasec=$(expr $delta \* 24 \* 60 \* 60)
   date +%y%m%d --date=@$(expr $(date +%s) - $deltasec)  

Poi vanno cancellate le /home-* vecchie, ma anche questo si automatizza
facilmente: se quella di 30 giorni fa non finisce per zero cancellala,
se quella di 300 giorni fa non finisce per "10" cancellala, cose
cosi`.

Non mi aspetto che altri seguano il mio metodo, ma spero le informazioni
associate siano utili a qualcuno.



Re: /usr/lib in partizione separata

2023-01-24 Per discussione Alessandro Rubini
> Inoltre se usi una Debian moderna, probabilmente 
> hai gia` "usrmerge", ovvero /bin e /lib sono due link simbolici che 
> puntano a /usr/bin e /usr/lib.

Che brutta cosa. Ci spieghi il razionale[1]? Sulle mie macchine tendo a
non usare initrd e usare kernel compilati da me (anche se ammetto che
nelle ultime installazioni non l'ho fatto) e questa cosa da`
fastidio. Sono della vecchia scuola "/ piccolo e /usr grande per
limitare i danni quando il disco si rompera`, perche` i dischi si
rompono sempre, come tutto il resto".

> * per chi non lo conoscesse, il rubi ha sempre ragione.

ehe. Una volta. Ora il mondo e` troppo complesso e sono rimasto
indietro.  Per esempio quando ho detto che systemd non linka liberie
in /usr/lib era sbagliato, perche` sulla macchina (non mia) in cui
ho verificato c'e` proprio quel usrmerge che tu dici.

[1] si, e` vero, lo si trova in rete, ma sentirlo da chi ci lavora davvero
e` diverso

grazie, saluti
/alessandro



Re: /usr/lib in partizione separata

2023-01-23 Per discussione Alessandro Rubini
La cosa bella dei panic e` che contengono un sacco di
informazione.  Vedendo cosa dice il sistema sicuramente
qualcuno qui capisce cosa e` andato storto.

Escludo che sia "mount". E` possibile montare un albero su
una directory gia` popolata: semplicemente il nuovo albero
copre quello vecchio che non risulta piu` visibile (ma i file
gia` aperti restano aperti). Inoltre nessuna operazione normale
puo` dare panic, al massimo fallisce.

Mi aspetto, piuttosto, che manchi una delle librerie dinamiche
necessarie a /sbin/init per partire: se non si avvia init la cosa
e` fatale. E systemd ne usa tante, anche se nessuna sotto /usr
che puo` essere montato successivamenfe.

ps: /usr/lib non e` pensata per essere una parrizione separata: gli
eseguibili in /usr/bin usano librerie dinamiche che stanno in
/usr/lib, quindi separarle non e` una buona idea: durante l'avvio
abbiamo una fase in cui il sistema e` instabile.

/alessandro e devuan



Re: dpkg-reconfigure error

2023-01-16 Per discussione Alessandro Rubini
> sh: 0: getcwd() failed: No such file or directory

Il comando e` stato eseguito da una directory che e` stata cancellata.
Gli altri errori sono una conseguenza.

   laptopo$ mkdir /tmp/cancellata
   laptopo$ cd /tmp/cancellata
   laptopo$ rmdir /tmp/cancellata
   laptopo$ pwd
   pwd: error retrieving current directory: getcwd: cannot access parent 
directories: No such file or directory

> Use of uninitialized value $original_cwd in chdir at ...

Conseguenza del problema di cui sopra.

saluti
/alessandro



Re: OT: duplicazione di una finestra su due monitor distinti

2022-12-14 Per discussione Alessandro Rubini
Leggo solo ora il thread.

Io lo faccio sempre, a lezione. Lo schermo del portatile ha piu` pixel
e quello del proiettore vede solo un pezzo del mio schermo. Senza
grandi cose da terzo millennio (ho un sistema degli anni 90).

All'inizio usavo "lxranrd", poi ho copiato cosa dice a "xrandr"
e ora lo configuro da riga di comando, con uno script di una riga.

  xrandr --output DP-1 --mode 1920x1080 --rate 74.99 \
--output eDP-1 --mode 3200x1800 --rate 60.04 --same-as DP-1

Poi ovviamente dipende dalle risoluzioni a disposizione eccetera,
pero` e` facile e funziona (e si`, devo mettere un segnalino sullo
schermo del portatile per sapere fin dove vedono gli studenti: "xterm
-geometry +1920+1080".

Certo, e` un'impostazione vecchia, ma qui dentro mi sa che siamo
(quasi) tutti vecchi, i nomi che vedo sono gli stessi dal millennio
scorso :)



Re: Fetch mail debian 11

2022-11-01 Per discussione Alessandro Rubini
> message_size_limit = 1024

Quindi e` (era) 10MB. Purtroppo oggi girano anche messaggi piu`
grandi, colpa degli allegati.

> di seguito il main.cf

Ringrazio, ma non so leggerlo. Avevo solo guardato in rete cosa
dicono gli altri, per curiosita`.

> Messagi voluminosi non ce ne sono e non riesco a capire sinceramente
> cosa ci sia che non va.  se passo in fetchmailrc al server pop,
> continua a non andare.

Davvero strano. Se interessa investigare ancora (visto che con imap
funziona), userei il doppio-verboso di fetchmail: "-v -v". Questo
dovrebbe chiarire quando si genera il 522, potendo vedere cosa e`
successo prima e quindi stimare la dimensione che genera l'errore.

Poi pero` non posso aiutare, non uso fetchmail/pop/imap e quindi non
ne ho dimestichezza.

(a proposito di stranezze, oggi ho visto che un mio programma di test
di una scheda gira ogni volta a una velocita` diversa, alla faccia
del determinismo del mondo digitale -- poi ho trovato perche`).

saluti
/alessandro



Re: Fetch mail debian 11

2022-11-01 Per discussione Alessandro Rubini
>>> Spostando il protocollo dal pop all'imap, funziona tutto perfettamente

Cio` e` buona cosa.

Pero` e` utile comunque capire cosa e` andato storto. Passare
"-v -v" a fetchmail puo` essere di aiuto. 

> No, postfix e` configurato bene. Gli ho messo dimensione illimitata.

Qualcuno suggerisce di fare "postconf -d | grep size". I limiti
sono piu` di uno, e il 522 viene sicuramente da SMTP -- quindi la
consegna locale. Strano pero` che con imap funzioni. C'era poi
un messaggio particolarmente voluminoso?



Re: bash in at command

2022-10-05 Per discussione Alessandro Rubini
>>> strano... da shell at legge l'interprete da utilizzare dal file stesso
>>> mentre con l'opzione -f lo esegue con /bin/sh.

No. Il comportamento e` uguale: passare da stdin o con "-f" con cambia
niente: viene salvato da qualche parte per poi essere passato a /bin/sh.
Cosi` dice la documentazione, cosi` ho fatto vedere che si comporta
(dire se uno script asincrono ha fallito o no non e` banale, fargli
fare "ps $$ > /dev/tty" e` facile e da` risultati certi. Si veda
il mio messaggio.

> Comunque sia che si lanci lo script da shell at, con il comando at -f, 
> direttamente da shell sh o con il comando sh -c, viene utilizzata sempre 
> la stessa shell /bin/sh

Se faccio "sh -c" ovviamente parte sh. Se faccio "bash -c" parte bash.

> Probabilmente chiamare at con il parametro -f  [...]

Ragazzi, e` tutto *molto* piu` facile. "at" e` vecchio, e come tale
usa /bin/sh come interprete. Probabilmente niente, e` cosi` e basta.
Ricordiamo che le cose fatte bene sono facili, senza casi speciali.
"-f" non e` un caso speciale, e` *come* dare da stdin.

> [...] fara` direttamente una chiamata execve (che non so cosa sia ma
> riporto quel che hai scritto tu) al kernel che mi sembra di aver
> capito non va a leggere la shebang dello script...

Invece e` proprio l'opposto.

Se un eseguibile e` eseguibile, viene eseguito (che sia python o che,
se ha il suo #! o altri trucchi a posto, dopo "chmod +x" e` eseguibile
ed esegue).  Se invece qualcuno dichiara di volere un testo
da passare a /bin/sh, lo passa a /bin/sh. E "#!/bin/basta" e` un
commento, come e` giusto che sia.

> quindi non si potranno nemmeno chiamare script in altri 
> linguaggi (php, python etc...).

Tutto cio` che e` eseguibile puo` essere eseguito da /bin/sh.

E` semplice e lineare. Non inventiamo complicazioni che non ci sono.

saluti
/alessandro



Re: bash in at command

2022-10-04 Per discussione Alessandro Rubini
> Infatti se hai voglia di fare alcune prove ti accorgerai che se scheduli 
> ad esempio lo script che ho mandato[¹] da shell at (senza specificare 
> l'opzione -f di at per intenderci) non da errori, se lo scheduli con il 
> comando -f da errore. In entrambi i casi viene generato il warning 
> "commands will be executed using /bin/sh".

Preferisco il caso semplice, non "errore o non errore". Faccio "ps u $$"
per vedere che processo sta girando.  Con "at" interattivo parte sh,
che ignora #!/bin/bash come commento:

   laptopo% tty
   /dev/pts/10

   laptopo% at now; sleep 2
   warning: commands will be executed using /bin/sh
   at> #!/bin/bash
   at> ps u $$ > /dev/pts/10
   at> 
   job 6 at Tue Oct  4 14:50:00 2022
   USER   PID %CPU %MEMVSZ   RSS TTY  STAT START   TIME COMMAND
   rubini   14462  0.0  0.0   2420   528 ?SN   14:50   0:00 sh

Quindi gira sh. "sleep 2" l'ho messo per non avere il prompt in mezzo.
Con "-f" il risultato e` lo stesso:

   laptopo% cat > /tmp/at
   #!/bin/bash
   ps u $$ > /dev/pts/10

   laptopo% at now -f /tmp/at; sleep 2
   warning: commands will be executed using /bin/sh
   job 7 at Tue Oct  4 14:52:00 2022
   USER   PID %CPU %MEMVSZ   RSS TTY  STAT START   TIME COMMAND
   rubini   14469  0.0  0.0   2420   524 ?SN   14:52   0:00 sh

Gira sh. Il programma, se eseguito, va con bash. Ma "-f" usa un file
invece di leggere da stdin, e quello che legge lo manda a sh.

   laptopo% chmod +x /tmp/at

   laptopo% /tmp/at
   USER   PID %CPU %MEMVSZ   RSS TTY  STAT START   TIME COMMAND
   rubini   14475  0.0  0.0   3756  2804 pts/10   S+   14:54   0:00 /bin/bash 
/tmp/

   laptopo% at now; sleep 2
   warning: commands will be executed using /bin/sh
   at> /tmp/at
   at> 
   job 8 at Tue Oct  4 14:54:00 2022
   USER   PID %CPU %MEMVSZ   RSS TTY  STAT START   TIME COMMAND
   rubini   14481  0.0  0.0   3836  2932 ?SN   14:54   0:00 /bin/bash 
/tmp/

man bash:

   [...] For  both  at  and  batch, commands are read from standard input 
or the
   file specified with the -f option and executed. [...]

   -f file Reads the job from file rather than standard input.

Ma non parliamo troppo di questi strumenti, che poi ci si accorge che
esistono e vengono rotti. Come fgrep: sara` rimosso da una prossima
versione di grep, perche` "grep -F" fa la stessa cosa. Cosi` un tot
di vecchi script si romperanno, per risparmiare un inode e 28 byte in
sistemi peni di gigabyte dimm



Re: bash in at command

2022-10-04 Per discussione Alessandro Rubini
> In effetti parzialmente hai ragione anche tu; dalla mia esperienza se 
> usi la modalita` interattiva di at

"at", da specifica, esegue il suo stdin usando sh. Ovviamente
non puo` essere diversamente, perche` romperebbe molte cose.
E lo dice pure su stderr:

   laptopo% at now
   warning: commands will be executed using /bin/sh

> per schedulare un job funziona, viene 
> letto il commento iniziale #!/bin/bash ma se invece lo scheduli da 
> script con l'opzione -f non funziona.

non cambia. Semplicemente legge il file invece di leggere stdin.

> Purtroppo non credo sia possibile che uno script sappia quale sia 
> l'interprete che lo sta eseguendo

  ps u $$

Ma anche il C (o il python) non posso eseguirlo direttamente da "at".
La soluzione e` la stessa: dire a /bin/sh di eseguire un file esterno.
Che sara` eseguibile e in questo caso conterra` "#!/bin/bash".

Quindi at esiste ancora? Incredibile. Niente systemd-at? Non ditelo in
giro...



Re: Debian Finally Starts a General Resolution to Consider a Non-Free Firmware Image

2022-10-03 Per discussione Alessandro Rubini
> se la macchina deve far girare un sistema libero non deve richiederli,

Sembra lapalissiano, ma secondo me e` proprio sbagliato dentro.

Sia chiaro, vorrei firmware libero, ma non e` fondamentale come avere
un driver libero.

Il firmware e` parte dell'hardware. Se accetto che l'hardware non sia
libero non ha senso che la meni sul firmware.

In ogni caso l'hardware e` liberamente utilizzabile: la scheda wifi
(usb o pcix o altro) la monto su qualunque architettura, anche riscv;
basta portarmi dietro il binario del firmware.

E secondo me a menarla sul firmware ci facciamo anche la figura dei
fessi. Le poche periferiche che non richiedono un firmware esterno
semplicemente lo hanno dentro e costano di piu`. Quasi tutto ormai ha
un processore infilato da qualche parte su per il naso: sicuramente
tutte le schede wifi, tutte quelle usb e immagino molte schede
di rete pci di fascia alta, schede audio e chissa` cos'altro.
Ormai solo il gpio non ha firmware associato.

Insistere a non voler inviare un .bin alla periferica e` perdente, non
solo perche` in pratica vuol dire non poter usare quasi niente, ma
perche` quel poco che non lo richiede lo ha gia` precaricato, e
filosoficamente non cambia niente.

Discorso diverso per i driver, ovviamente. Per vari motivi che
non ha senso ripetere qui.

Ma so che sono parole al vento: chi e` convinto non ascolta ragioni.
Come conseguenza la fsf e` ormai irrilevante e noi siamo
dei falliti in una nicchia fuori dal mondo. Io per primo.



Re: execvp() e shell invalida...

2022-09-08 Per discussione Alessandro Rubini
>> Consiglio di guardarlo con "strace -f" per vedere cosa fa il processo
>> figlio e perche` termina male.
 
> OK, ma stiamo parlando di un binario eseguito all'interno di un servizio
> (bacula-sd): come posso 'strecciarlo'? ;-)

"-f" segue i fork. E "-p " si collega ad un processo gia` in
esecuzione. "man strace".

E` abbastanza comune, almeno nel mio mondo, collegarsi ad un servizio
con "-f -o ", fargli incorrere nell'errore che vogliamo
capire e poi aprire il file di output.  Usare "-t" aiuta,
cosi` si genera l'errore ad un'ora specifica e si cerca solo li` attorno.

> (non credo che Bacula sia l'unico software che esegue un
> altro software al suo interno, da utente senza shell...)

L'utente senza shell e` irrilevante. Come dicevo, "diagnosi sbagliata.
Nel dubbio, si puo` sempre regalare /bin/sh all'utente e vedere che
l'errore persiste. Per poi togliergli la shell come prima.



Re: execvp() e shell invalida...

2022-09-08 Per discussione Alessandro Rubini
Mi sembra sbagliata la diagnosi. execvp() funziona.

Il link iniziale mostra questo codice (corretto!)

  execvp(argv[0], argv);
  /* only gets here if execvp fails */
  return -1;

Perche` exec non ritorna. E se tornasse la funzione tornerebbe -1, non 1.
"rc" = return command.  Qui e` il processo figlio che fa exit(1).

Consiglio di guardarlo con "strace -f" per vedere cosa fa il processo
figlio e perche` termina male.

Ovviamente non si vedranno le sue if che sbagliano e generano l'errore,
ma spesso la sequenza di chiamate di sistema indica chiaramente cosa
e` andato storto.  Certo, se il codice fa solo:

   if (!getenv("VARIABILE_STRANA")) exit(1);

mica lo vediamo da strace, ma e` improbabile che non si noti niente
di sbagliato nei suoi accessi.



Re: [OT] Shell che accetta commenti multilinee

2022-08-09 Per discussione Alessandro Rubini
>> Il primo accrocchio ("<> [...] I commenti non devono avere effetti. Questo non e` un
>> commento.

> ma l'argomento sicurezza e`
> un'esagerazione. [...] essere exploitabili [...]

Mai parlato di sicurezza e di attacchi. E` pericoloso quando dici al
programmatore che un costrutto e` un commento e invece non lo e` (si
tratta di un costrutto che ha pochi effetti per motivi non spiegati
dall'autore dell'articolo). Perche` nei commenti puoi scrivere di
tutto, compreso codice.  Se io scrivo una cosa nel commento e questo
ha effetti mi faccio del male. O lo faccio ai miei utenti.

Piuttosto, se proprio si vuole scrivere roba con pochi effetti, meglio
fare

  echo 'non sono un commento ma potrei essere multi-riga' > /dev/null

Almeno tutti conoscono il costrutto, rispetto a << o :. Eviterei
comunque, ma spero di aver reso l'idea. E se non ci riesco amen.

Buona giornata e buone ferie passate o future a tutti.



Re: [OT] Shell che accetta commenti multilinee

2022-07-30 Per discussione Alessandro Rubini
>> farebbe comodo avere una shell, compatibile con bash, che
>> tramite qualche carattere particolare, accetta commenti su piu` righe.

Non sarebbe compatibile con bash.  Gia` bash non e` compatibile con sh
e non dovrebbe essere usata per gli script :)

Non vedo dove stia il problema nel mettere un "#" ad ogni riga di
commento.  Gli editor faranno vedere queste righe con il colore dei
commenti (mentre con altri accrocchi non succede).  E, sempre gli editor,
sono in grado di riallineare il paragrafo mantentendo i marcatori di
commento al posto giusto.

> Puoi farlo anche in bash. Per esempio:
> 
> https://www.geeksforgeeks.org/multi-line-comment-in-shell-script/

Il primo accrocchio ("< /tmp/file) creerei un file
   commento

Mi crea un file. I commenti non devono avere effetti. Questo non e` un
commento.

Il secondo accorcchio (": '") e` meno rischioso. "duepunti" e` il
comando interno che non fa niente ("does nothing beyond expanding
arguments and performing any specified redirections").  Quindi
duepunti-spazio-apice apre un argomento che puo` essere di piu` righe,
senza grossi rischi, a meno che non si infilino altri apici dentro il
"commento" stesso.

Rimane che non e` un commento, e chi guarda il codice (compresa la
colorazione di sintassi degli editor) non lo percepisce come un
commento.

Mi spiace, ma quella pagina e` sbagliata, sia perche` da` consigli
sbagliati sia (ed e` peggio) perche` non spiega cosa significano quei
caratteri strani -- che non sono commenti.

Se e` vero che il commento "helps in understanding the code, improves
code-readability, and also helps in enhancing the structure of the
program" quello che *non* bisogna fare e` seguire i consigli che
seguono.

saluti
/alessandro



Re: sincronizzare siti online e locali

2022-07-30 Per discussione Alessandro Rubini
>> rsync -av --delete https://www.xxx.it/dati/  Siti/xxx/dati/
>> ottengo il seguente output:
>> ssh: Could not resolve hostname https: Name or service not known

rsync usa come indicatore remoto :, quindi cerca di
risovere "https" come hostname. Si, si basa su ssh.  Per come funziona
rsync (interessante da leggere, e` ben spiegato) non puo` appoggiarsi
su https.

E comunque anche ftp permette copie quasi intelligenti ("solo i file
modificati"), perche` il cliente puo` vedere data e dimensione dei file
prima di decidere se scaricarli o meno.

Io uso lftp, che ha il comando "mirror" e fa questo, con varie
opzioni su dimensioni e date. "man lftp" per i dettagli. Un bel
"mirror" sul telefono e` una buona forma di backup (dopo aver installato
un server ftp sul telefono, per esempio da fdroid).

rsync resta meglio, ma serve ssh.

/alessandro



Re: ricerca pacchetti non presenti nei repository ufficiali (ERA: Re: Virus Symbiote)

2022-06-26 Per discussione Alessandro Rubini
Chiedo scusa per il tono che sembra ostile e seccato. Non vuole esserlo.
Errare e` umano, e chiedere in lista e` corretto.

Cerco di essere conciso, ma a volte esagero.

ri-scuse e saluti
/alessandro



Re: ricerca pacchetti non presenti nei repository ufficiali (ERA: Re: Virus Symbiote)

2022-06-26 Per discussione Alessandro Rubini
> Ora stavo cercando di capire come utilizzare e configurare le istruzioni 
> contenute in questa pagina ufficiale di Debian
> https://wiki.debian.org/DebianRepository/UseThirdParty

Qui parla di come fare un repository, non di come usarlo. E` sotto
il capitolo "DebianReposiroy":

   There are many different ways of configuring an unofficial APT
   repository on a machine. This document [...]

> The key SHOULD be served over HTTPS if possible.

Chi offre un repository con pacchetti firmati dovrebbe usare https.
E poi spiega come avere e gestire un certificato https sul proprio server.




Re: Directory con troppi file

2022-06-11 Per discussione Alessandro Rubini
> Ipotesi: usare xargs?

xargs invoca tanti comandi, ciscuno con una riga di comando separata.
Ve bene per grep, ma non per tar.

Pero` "man tar" mi dice che c'e` "--append" (-r). Ovviamente non va bene
per un file compresso, ma lo si comprime dopo.

Oppure "--files-from" (-T).  Si crea una lista di file (i 6k nomefile-*)
che anche se supererebbero la lungezza massima di riga di comand (128k? non
ricordo ma era qualcosa del genere) e poi si fa il tar relativo.
Come si diceva altrove, con find (che espande lui gli asterischi).

   mkdir ../out
   find . -name "basename1-*" > list1
   tar -T list1 -cvf ../out/basename1.tar
   find . -name "basename1-*" | xargs rm

e poi via con basename2 eccetera.

Pero` se poi l'utente estrae tutto siamo sempre li`. Forse
conviene fare subdir, cosi` se estrae ha varie dir da 6k file e non
140k file tutti insieme.

   mkdir basename1
   mv $(find . -name basename1-* | head -1000) basename1
   # ripetere finche` non si arrabbia che non ce ne sono piu`
   tar cf basename1.tar basename1



Re: Gli sviluppatori di Linux sono i più veloci a riparare i bug

2022-02-22 Per discussione Alessandro Rubini
>>> Gli sviluppatori di Linux sono i piu` veloci a riparare i bug
>>
>> Ma ne generano di piu`:
>>
>> https://madaidans-insecurities.github.io/linux.html
>
> ma...

Non ci credo nemmeno io. Su questi argomenti chiunque puo` dire
qualunque cosa. Anche se ben argomentate, sono sempre posizioni
di parte.



Re: strano comportamento di swapoff

2022-02-22 Per discussione Alessandro Rubini
> come faccio a dire che proprio non lo usi ?

/proc/sys/vm/swappiness

> E` possibile taggare un processo in modo che mai usi lo swap ?

No. Le pagine di memoria non sono direttamente collegate ai processi.



Re: [OT] Intel investe 1 miliardo di dollari in RISC-V

2022-02-21 Per discussione Alessandro Rubini
> scusate l'ignoranza ma RISC non era mica l'architettura di SUN

su chiamava "sparc"

> e mi
> pare anche silicon graphics almeno una trentina di anni fa?

"mips"

Risc e` un modo di pensare i processori, opposto a cisc. Anche arm e`
risc. Poi non e` che un mondo cosi` complesso possa essere classificato
in maniera netta.

> Il progetto parte da quella o e' solo un omonimia?

riscV (pronuncia "risk faiv") e` un progetto nella linea del "modo di
pensare" RISC, ma completamente nuovo. Molto molto molto bello.
Ho un collega che ha scritto il suo riscV in un fine settimana,
dopo aver letto il manuale dell'architettura ed essersi innamorato.

Allora l'ho letto anch'io e non sono riuscito a smettere: notte in
bianco, come i migliori romanzi.

Lettura consigliata: e` un processore gia` definito a 32 bit, 64 e
anche 128 (ma il silicio a 128 non c'e` ancora).



Re: Gli sviluppatori di Linux sono i più veloci a riparare i bug

2022-02-21 Per discussione Alessandro Rubini
> Gli sviluppatori di Linux sono i piu` veloci a riparare i bug

Ma ne generano di piu`:

https://madaidans-insecurities.github.io/linux.html

E` un mondo in cui si puo` dire tutto e il contrario di tutto, e avere
seguito comunque: c'e` ancora chi crede che non siamo andati sulla
luna e chi crede che gli aerei stiano su per l'effetto venturi.



Re: Per risparmiare energia elettrica

2022-02-21 Per discussione Alessandro Rubini
Gli anglofoni lo chiamano "greenwashing". Io lo chiamo stronzata
galattica.

> usare programmi in linguaggio C/Rust (o programmare con questi)
> e`piu` efficiente, dal punto di vista del consumo energetico,

Se e` piu` veloce a dare la stessa soluzione, e` piu` efficiente dal
punto di vista energetico. E quindi?

A risolvere un problema in C ci metto 100 volte il tempo che ci metto
in python. Se eseguo il programma meno di qualche milione di volte non
mi conviene comunque (nemmeno energeticamente, lasciando stare tutto
il resto).

E se viene eseguito milioni di volte vuol dire che qualcuno trovera`
allocazioni sbagliate e stack overflow, consumando *molta* piu`
energia elettrica di quanta ne ho risparmiata.

E` come chiudere l'acqua quando ci si lava i denti, mentre
l'innaffiatura automatica dell'aiuola allaga la pubblica via.

> Avevo letto che System76 stava rifacendo parte dell'interfaccia di
> Gnome3 in Rust

Se i grafici smettessero di aggiungere orpelli inutili, invece di
riscrivere le cose, il consumo globale migliorerebbe. O forse no,
visto che il numero di utenti e` trascurabile.

Il problema energetico sono i videogiochi, le criptovalute, le
tonnellate di video e foto inutili che conserviamo per sempre, alexa e
i suoi fratelli, la digitalizzazione imposta di tutta la carta (non
per forza in questo ordine).  Sparare numeri a caso su problemi
inesistenti non e` molto sensato. Io uso assembly sed e awk. Non li
vedo nell'articolo: ora mi frusto per espiare.

> https://greenlab.di.uminho.pt/wp-content/uploads/2017/10/sleFinal.pdf

lo candidiamo per ignobel?



Re: Strano comportamento schede di rete

2022-01-28 Per discussione Alessandro Rubini
A me e` capitato, su una installazione abbastanza standard, che
mi infilasse il mio IP del client in /etc/hosts.deny . Dopo due
accessi corretti il terzo falliva.

Ci ho trafficato un po' senza capire quale processo/servizio/configurazione
facesse sta cosa. Alla fine ho aggiunto il mio IP in hosts.allow e
abbandonato la cosa. Per fortuna entro solo io per un backup remoto,
senza accessi a studenti o colleghi dall'IP imprevedibile.

Ora ho 439 IP in hosts.deny, e non so da dove vengono.

Forse qui si parla dello stesso problema. Altrimenti ecco un nuovo
problema per chi ne sa: chi e` stato, oppure come posso trovarlo?
(ho provato i vari *notify senza riuscire ad avere il PID di chi apre
il file, forse limite mio).

grazie, saluti
/alessandro, utente debian nella sua incarnazione ripulita



Re: da root a utente normale

2022-01-20 Per discussione Alessandro Rubini
> come faccio a dire che ogni file che ha diritti di esecuzione 
> per il proprietario li deve avere anche per root, senza andare a cambiare 
> i gruppi ?

chmod -R a+X 

+x vuol dire aggiungi esecuzione, +X vuol dire aggiungi
esecuzione se e` gia` eseguibile per qualcuno.

e -R per ricorsivo su tutta la dir ("-r" invece toglie la
leggibilita`).



Re: da root a utente normale

2022-01-20 Per discussione Alessandro Rubini
> 1) copi tutto in /home/UTENTE
> 2) chown -R UTENTE:UTENTE /home/UTENTE

chown -R UTENTE:GRUPPO

Che poi il gruppo sia spesso identificato dalla stessa
stringa dell'utente, e` un caso, non la regola

  arcana% ls -ld /home/rubini
  drwxr-xr-x 150 rubini staff 20480 Jan 20 00:15 /home/rubini/

saluti
/alessandro



Re: Adattatore usb-wifi compatibile

2021-12-31 Per discussione Alessandro Rubini
> Oramai direi che e` quasi difficile trovarne di non compatibili, 
> soprattutto se stai nella fascia "non troppo vecchio-non troppo nuovo".

Direi *solo* se stai in quella fascia. Ne ho appena comprato uno,
la signora mi ha detto "non so se va con linux" ma io ero tranquillo.
No, non va.

C'e` un driver in rete, una roba enorme, fa paura a solo vederlo.
Comunque non compila sotto la mia distro, e siccome era per una persona
inesperta, lascio stare.

> Comunque verifica she ci sia indicato il supporto Linux sulla confezione 
> e stai molto piu` tranquillo.

Non c'e` indicato mai, nella mia esperienza. Non so se non vogliono
prendersi la responsabilita` perche` linux e` troppo variegato o se
zio bill paga qualcosa per non faglierlo dire.

Sicuramente siamo troppo pochi: i costruttori non hanno alcun
vantaggio a dichiarare supporto, come non c'e` mai stato e mai ci
sara` il diavoletto bsd.

saluti, e auguri a chi e` ancora nel 2021 ma anche a chi e` gia` nel
2022.

ps: se c'e` un terrapiattista qui, ci spiega i fusi orari?



Re: Aggiornamento doppio ?

2021-12-02 Per discussione Alessandro Rubini
> Ho la macchina con stretch ( 9 ) quindi posso passare in sucurezza a 11 
> direttamente  o debbo passare a 10 prima ?

Secondo me e` meglio fare un passo alla volta. Ultimamente ho fatto
il doppio salto su un paio di macchine, ma con due dist-upgrade separati.

Da come leggo il documento qui citato, vuol dire che uno puo` tenere
la LTS verione N (con gli aggiornamenti di sicurezza) finche` non esce la
N+2.  Chi passa da 9 a 11 vuol dire che per un po' non ha avuto
gli aggiornamenti di sicurezza sulla 9. Tutto qui.

Meno male che il buon Jaromil chiama le distribuzioni in ordine
alfabetico.  Questa storia dei personaggi di Toy Story e` veramente
insopportabile.

/rubi felicemente devuan



Re: [OT] voltaggio automobile

2021-11-19 Per discussione Alessandro Rubini
> E` normale che un auto fornisca 14volt ad automobile accesa 
> invece dei soliti 12?

Certo. I 12V sono "nominali". Di solito una batteria carica e` a 13.5V.
La differenza tra motore acceso e spento e` la presenza dell'alternatore.

Se il motore e` acceso la batteria e` in carica, quindi la tensione
che si vede sul filo e` maggiore.  

Quando gira il motorino di avviamento invece la tensione crolla fino a
circa meta`, data la notevole corrente in uscita. Si vedeOA benissimo
dall'intensita` dei fari, se si avvia a fari accesi (non si dovrebbe).

Non si tratta di mettere filtri, ma un alimentatore che accetti 5-20V
in ingresso (o solo 12-20 se si accetta la caduta durante l'accensione
del motore).



Re: console con caratteri grandi

2021-11-02 Per discussione Alessandro Rubini
>> a me funziona questo
>> export COLUMNS=200
>> in .bashrc

> Dubito,

Correttamente. Le variabili di ambiente servono ai vari programmi
per sapere qualcosa dell'ambiente (appunto) in cui girano. Di solito
COLUMNS viene assegnato automaticamente, o non assegnato. Forzare
un valore da` solitamente risultati sbagliati (oppure viene ignorato).
Una volta si usava il comando "resize" per cambiare COLUMNS e LINES
in base alle caratteristiche del terminale corrente.

> https://lists.debian.org/debian-user/2017/12/msg00961.html e
> 
> https://forums.debian.net/viewtopic.php?t=52934
> 
> Entrambe dicono di dare parametri a grub, di solito in /etc/default/grub 
> o similari

Che vuol dire passare parametri al kernel (al driver, specificatamente) in
modo che configuri la risoluzione video desiderata prima che l'utente
interagisca col sistema.

saluti
/alessandro



Re: Come limitare temporalmente i log nel journal di systemd e avere journalctl più reattivo [ Spazio disco esaurito ]

2021-11-01 Per discussione Alessandro Rubini
> L'ultimo file che inizia con tmptniz.., sembra che
> sia grande 15 Giga.

E, quasi sicuramente, lo scaricamento si e` interrotto per fine dello
spazio libero.

> Allora è questo il problema. Ma si può cancellare
> senza avere problemi nel sistema ?

Sicuramente. Inizia con "tmp" e abita in .cache: non puo` essere imporante.
Giusto per curiosita`, guarderei col comando "file" di cose si tratta.

> Se provo a cancellarlo mi dice che non esiste.
> File o directory non esistente

E` un problema di caratteri speciali e/o strani nel nome. Quanto
divgitato (copiato col mouse) non corrisponde al nome.

Piu` che far completare a bash stessa usando  (che probabilmente
funziona), io preferisco

   rm -i /mnt/tmp*

Cosi` il comando "rm" mi chiede conferma di ogni file, e posso verificare
che il mio asterisco mi abbia scelto solo quello che intendevo. In questo
caso sara` solo lui, ma una conferma e` comunque utile.

Se anche cosi` non trova niente, c'e` qualcosa di strano prima di
tmp, allora

 rm -i /mnt/*tmp*

sicuramente funziona.

saluti
/alessandro, uso a file sbagliato con nomi strani



Re: Come limitare temporalmente i log nel journal di systemd e avere journalctl più reattivo

2021-10-31 Per discussione Alessandro Rubini
> Infatti ho un problema sul disco B. La partizione di Root (da 20 GB)
> risulta piena. Ma se vado a vedere con l'analizzatore di spazio disco,
> risultano solo 6 GB di spazio usato.

Cos'e` questo "analizzatore di spazio disco"?

Io faccio "du -x / | sort -n". Ovviamente da amministratore, perche`
alcune directory non sono leggibili come utente, e se lo spazio
occupato e` li` non lo si vedrebbe (ma ci sarebbero dei "permission denied"
durante la scansione).

Utile anche, magari prima de "du", un "df -h" e "df -i" per vedere
se e` davvero piena, e se non lo e` se per caso non sono finiti gli
inode (cioe` ci sono troppi file).

saluti
/alessandro



Re: Filesystem che passa in sola lettura

2021-10-25 Per discussione Alessandro Rubini
> Concordo sull'uso di badblocks, in modalità di lettura/scrittura non 
> distruttiva.

Davvero? Gli SSD sono brutte beste.

> il firmware stesso del disco potrebbe rilevare i blocchi 
> guasti, e riallocarli automaticamente altrove,

Appunto. Il disco e` un computer, che fa quello che vuole (e quello che
puo`) con i blocchi di flash. Che, come sappiamo, e` fatta per scoppiare.

Sono contento di avere SSD sul portatile, per i problemi delle vibrazioni,
ma non metterei i miei dati importanti su SSD. Appena posso faccio
push verso dischi veri.

Ora, il firmware, questo sconosciuto, cosa sa del mio filesystem?
Nulla. Pero` vede quali blocchi vengono scritti e quali no. Se un
blocco viene scritto, lo considera in uso. E` suo dovere preservarlo,
perche` una rilettura successiva deve ritornare lo stesso contenuto.

Un disco nuovo di fabbrica parte vuoto (dal punto di vista del
processore del disco, del "firmware"), un disco che ha passato un
badblocks r/w e` pieno al 100%. Il lavoro del micro diventa piu`
pesante, le prestazioni peggiorano e le scritture (= consumo di flash)
aumentano per preservare tutti quei blocchi di cui in realta` non ci
interessa.

Dove sbaglio? Esiste un trim globale per ripulire un disco dopo
badblocks? (https://en.wikipedia.org/wiki/Trim_(computing)) Se si, mi
aspetto che anche questo debba girare a bocce ferme, conoscendo la
struttura del filesystem in uso.

In ogni caso, la mappatura dei blocchi del "disco" su quelli della
flash e` aleatoria, fatico a capire come badblocks possa aiutare.

> quindi 5 blocchi danneggiati trovati al primo "giro" di badblocks
> potrebbero diventare "automagicamente" invisibili in eventuali
> controlli successivi.

Appunto. E` compito dell'altro microprocessore far vedere tutto a
posto.  Se nemmeno lui ci riesce, e quando scrivo mi fa rileggere dati
differenti, il disco e` da buttare. Lo controllassimo noi, con un
UBIFS, non sarebbe da buttare, ma per noi e` una scatola nera, e se
inizia a comportarsi male non possiamo piu` fidarci.

Qualcuno piu` competente mi dica dove sbaglio: io ormai faccio solo
pcb, il resto e` troppo complesso.

/alessandro



Re: eseguire software di un'architettura hardware diversa da quella del proprio sistema (ERA: Re: Ancora CIE e middleware)

2021-10-19 Per discussione Alessandro Rubini
> notably 64bit kernels often support running 
> 32bit software (but most probably not the converse)" che non sembra 
> escludere definitivamente

Se il mondo non e` cambiato nel frattempo, mi sentirei di escluderlo.
Un eseguibile a 64 bit usa puntatori a 64 bit e vuole una memoria
virtuale a 64 bit (non ricordo quanti, ma piu` di 32). Se il kernel
e` a 32 bit, offre una memoria virtuale a 32.

> "or a qemu-user instance is configured 
> to act as an on-the-fly emulation layer, see QemuUserEmulation"

Questo funziona come un gioiellino. Ma ovviamente il codice viene
interpretato (da qemu), non eseguito, quindi va piu` lento. Qemu e`
straordinariamente efficente (e` Fabrice Bellard, mica l'ultimo
pistola) ma comunque siamo circa 10x piu` lento del nativo.

> La cosa è molto interessante e, ad avere tempo, sarebbe da sperimentare

E' banale. Si prende un eseguibile arm e si esegue. E` uno dei primi
esempi che faccio ai miei studenti, partendo da PC per andare su
micretto.

Certo, se e` un eseguibile "serio" occorrono anche le librerie dinamiche
dell'architettura eccetera. Io lo faccio vedere senza libreria,
implementando le 2 chiamate di sistema che mi servono (write e exit):

   laptopo% make hell-arm
   arm-none-eabi-gcc-c -o syscalls-arm.o syscalls-arm.S
   arm-none-eabi-gcc -Wall -static -ffreestanding   -c -o hell.o hell.c
   arm-none-eabi-ld -e main -o hell-arm syscalls-arm.o hell.o

   laptopo% ./hell-arm
   Hello

   laptopo% file hell-arm
   hell-arm: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), statically 
linked, not stripped

   laptopo% uname -m
   x86_64

Il trucco sta in binfmtmisc, che definisce interpreti per vari formati
di file, in base al contenuto del file (il "magic number"):

   laptopo% ls /proc/sys/fs/binfmt_misc/
   cli  qemu-aarch64 qemu-mipsqemu-sh4
   jar  qemu-alpha   qemu-mipsel  qemu-sh4eb
   llvm-3.1.binfmt  qemu-arm qemu-ppc qemu-sparc
   python2.6qemu-armeb   qemu-ppc64   qemu-sparc32plus
   python2.7qemu-crisqemu-ppc64abi32  qemu-sparc64
   python3.2qemu-m68kqemu-ppc64le register
   python3.4qemu-microblaze  qemu-s390x   status



Re: smartphone da pc

2021-09-16 Per discussione Alessandro Rubini
[ho gia` letto le altre risposte, mi pare che questa non ripeta]

> Da decenni uso il computer con un copritastiera con i fori in 
> corrispondenza dei tasti

Il touch-screen e` uno strumento del demonio, capisco il problema.

L'utenza cellulare per le autenticazioni normalmente richiede la
ricezione di SMS: tutti cercano di infilarti la loro app, ma per
adesso si puo` ancora fare senza.

Esistono ancora in commercio degli stupidofoni, la cui tastiera e`
ancora meccanica. Non comoda come una tastiera vera (o una con i
fori), ma molto meglio del touch screen.  Probabilmente per l'sms
occasionale questa e` una soluzione accettabile, e a basso costo.

Se invece bisogna proprio prendere un androide o un melacoso, segnalo
che lo spinotto USB, di solito usato come slave, e` un "OTG", e puo`
anche fare da master.  Personalmente ho comprato un adattatore che
mi presenta un USB-A, dove collego una normale tastiera USB,
quella che di solito ho sul mio PC.

Purtroppo non tutto si puo` fare da tastiera, molte attivita`
richiedono comunque di toccare lo schermo, ma potrebbe essere un aiuto.

saluti
/alessandro



Re: tcl/tk manca winfo?

2021-08-12 Per discussione Alessandro Rubini
> $ man winfo
> winfo(3tk)Tk Built-In Commands 

Tutti i comandi tcl/tk sono del linguaggio tcl (e del toolkit tk che
aggiunge comandi al linguaggio).

Il capitolo "3tk" del manuale winfo indica quello.

La shell tk si chiama wish (windowing shell). Si puo` usare
interattivamente o per eseguire script, come tutti gli altri linguaggi
interpretati.

Allego un mio programmino della palla che rimbalza.  Amo tcl/tk, mi spiace
che sia passato di moda.

/alessandro
#!/usr/bin/wish
set w 240; set h 320
wm geometry . ${w}x${h}
wm overrideredirect . true
pack [canvas .c -width $w -height $h]
set maxx [expr $w-10]
set maxy [expr $h-10]
set I [.c create oval 0 0 10 10 -fill red]

# parameters
set sx 100.0; set sy 0.0;
set ela 0.9
set acc 1000.0
set attr 4.0
set x 0.0
set y 0.0

#speed x, speed x increment
set prevt [clock clicks -milliseconds]
update
# press
bind .c <1> {
set sx [expr $sx + $attr * (%x - $x +5)]
set sy [expr $sy + $attr * (%y - $y +5)]
}

# calc
while 1 {
set t [clock clicks -milliseconds]
set deltat [expr ($t-$prevt)/1000.0]

# horizontal
set x [expr $x + $sx*$deltat]
if {$x > $maxx} {
set x [expr 2*$maxx - $x]
set sx [expr -$ela*$sx]
set sy [expr $ela*$sy]
}
if {$x < 0} {
set x [expr -$x]
set sx [expr -$ela*$sx]
set sy [expr $ela*$sy]
}

# vertical
if $y!=$maxy {set sy [expr $sy+$acc*$deltat]}
set y [expr $y + $sy*$deltat]
if {$y > $maxy} {
set y [expr 2*$maxy - $y]
set sx [expr $ela*$sx]
if $sy>$acc*$deltat {
set sy [expr -$ela*$sy]
} else {
set sy 0.0; set y $maxy
}
}
if {$y < 0} {
set y [expr -$y]
set sx [expr $ela*$sx]
set sy [expr -$ela*$sy]
}

#puts "($deltat) $x $sx$y $sy"
.c coords $I $x $y [expr $x+10] [expr $y+10]
update
after 10
set prevt $t
}


Re: installazione driver proprietari

2021-07-16 Per discussione Alessandro Rubini
> Il problema che non ho chiaro come installarlo, nel senso che non basta
> solo copiare i file udrive nella directory, ma bisogna fare qualcos'altro.

"firmware-iwlwifi" e` un pacchetto debian.

Il mio portatile ha lo stesso modello e funziona benissimo.
Ovviamente va aggiunto non-free in /etc/apt/sources.list,
dopo di che "apt update" e "apt install firmware-iwlwifi".
Ovviamente richard non e` contento:

   laptopo% vrms | grep iwl
   firmware-iwlwifiBinary firmware for Intel Wireless cards

saluti
/alessandro



Re: confronto stringhe

2021-06-02 Per discussione Alessandro Rubini
> allora la soluzione è stata eliminare tutti gli spazi bianchi con sed e
> confrontarlo con una stringa senza spazi bianchi

Ma tale stringa non e` molto leggibile da chi mette le mani nello script.
La soluzione gia` indicata qui era migliore: la stringa viene scritta
in forma leggibile, e poi si remuovono gli spazi prima del contronto.

L'esempio con "tr" di Marco Bodrato era calzante.

Ma anche "echo e` una forma di normalizzazione" e` un bel suggerimento
(sempre Marco):

A=$(echo $A)

sostituisce gli spazi (e i tab!) multipli con uno solo.

saluti
/alessandro



Re: Che ne pensate della lettera per licenziare RMS?

2021-04-14 Per discussione Alessandro Rubini
>> Che poi wikipedia e` stata cosi` ingenua da prendere la fdl (come me,
>> stessi anni) e la fsf sapendo di aver sbagliato ha permesso di
>> cambiare. Brutta storia, meglio non rivangare, meglio.

> guarda che la FSF non può permettere il cambio di licenza.

Ma tramite "or any later version" ha il potere assoluto su chi ha
scelto questa clausola. E ha permesso a wikipedia di fuggire da GFDL.
Rivanghiamo, visto che non mi si crede.

> Nel caso di wikipedia è stato possibile fare il cambio di licenza, o 
> meglio permettere una doppia licenza, perché il detentore del copyright 
> è wikipedia stessa ai contributori è chiesto di cedere tutti i diritti 
> alla fondazione per poter contribuire.

All'inizio non era cosi`, gli autori mantenevano il copyright.  Adesso
non lo so, posso credere che sia ceduto (che non e` bellissimo).
Consiglio di leggere il buo corbet:

   https://lwn.net/Articles/305892/

Cito la parte importante:

   On November 3 [2008], the FSF and the Wikimedia Foundation jointly
   announced the release of version 1.3 of the GFDL. This announcement
   came as a surprise to many, who had no idea that a new GFDL 1.x
   release was in the works. This update does not address any of the
   well-known complaints against the GFDL. Instead, it added a new
   section:

  An MMC [Massive Multiauthor Collaboration Site] is "eligible for
  relicensing" if it is licensed under this License, and if all works
  that were first published under this License somewhere other than
  this MMC, and subsequently incorporated in whole or in part into
  the MMC, (1) had no cover texts or invariant sections, and (2) were
  thus incorporated prior to November 1, 2008.

   The operator of an MMC Site may republish an MMC contained in the site
   under CC-BY-SA on the same site at any time before August 1, 2009,
   provided the MMC is eligible for relicensing.

   In other words, GFDL-licensed sites like Wikipedia have a special,
   nine-month window in which they can relicense their content to the
   Creative Commons attribution-sharealike license. This works because
   (1) moving to version 1.3 of the license is allowed under the "or any
   later version" terms, and (2) relicensing to CC-BY-SA is allowed by
   GFDL 1.3.

   Legal codes, like other kinds of code, have a certain tendency to pick
   up cruft as they are patched over time. In this case, the FSF has
   added a special, time-limited hack which lets Wikipedia make a
   graceful exit from the GFDL license regime. This move is surprising to
   many, who would not have guessed that the FSF would go for
   it. Lawrence Lessig, who calls the change "enormously important,"
   expresses it this way:

  Richard Stallman deserves enormous credit for enabling this change
  to occur. There were some who said RMS would never permit Wikipedia
  to be relicensed, as it is one of the crown jewels in his movement
  for freedom. And so it is: like the GNU/Linux operation system,
  which his movement made possible, Wikipedia was made possible by
  the architecture of freedom the FDL enabled. One could well
  understand a lesser man finding any number of excuses for blocking
  the change.

   For whatever reason, Stallman and the FSF chose to go along with this
   change, though not before adding some safeguards. The November 1
   cutoff date (which precedes the GFDL 1.3 announcement) is there to
   prevent troublemakers from posting FSF manuals to Wikipedia in their
   entirety, and, thus, relicensing them.

Questi sono fatti, anche se conditi con qualche opinione. La FSF ha
permesso il cambio di licenza a Wikipedia (credo sia perche`
altrimenti il danno di immagine sarebbe stato peggiore).

Il cambio di licenza di OSM, invece, ha richiesto la rimozione di un
po' di materiale perche` non tutti i detentori dei diritti lo hanno
accettato.

Brutte storie i cambi di licenza, ma ancora piu` brutto e` rifiutare
di assegnare il diritto d'autore per poi scrivere "or any later
version", che ha quasi lo stesso effetto, ma piu` nascosto.  Si,
queste sono opinioni, immagino non tutti siano d'accordo.



Re: Che ne pensate della lettera per licenziare RMS?

2021-04-14 Per discussione Alessandro Rubini
> Se devo essere sincero io non sapevo che FSFE fosse indipendente da FSF.

Lo e` da sempre. Non ha senso andare al parlamento europeo se non sei
europeo.  Che poi la FSF non vada nel suo parlamento e` un altro
problema.

La FSF non ha mai cercato di creare una rete. Una volta c'era
un link "other organizations", adesso non c'e` nemmeno piu`.

> Se come dici tu sei un rappresentante di FSFE

Marco Ciampa non e` un rappresentante di FSFE. Al limite un
sostenitore.  Non mi sembra lo abbia detto (ha detto di essere
debian-leader mi pare, ma era un esempio poco calzante).

> FSFE non avra` mai il mio appoggio

Pace. Pero` forse conviene dare un'occhiata a fsfe.org per decidere.
Comunque no, nemmeno FSFE e` democratica. Lo e` tra i suoi soci, che
sono pochini, come FSF e tante altre organizzazioni. Il "member" di
FSF non e` affatto socio. Almeno FSFE li chiama sostenitori.

saluti
/alessandro



Re: Che ne pensate della lettera per licenziare RMS?

2021-04-14 Per discussione Alessandro Rubini
>> Uno a caso, il kernel Linux. Sta di fatto che molte aziende non vogliono
>> vedere la GPL3 nemmeno col telescopio, e se Linux fosse GPL3 vedrebbe
>> un'adozione minore.
 
> più che la GPL3 non vogliono la AGPL3.

Per quanto ne so io [citation needed] nemmeno la GPL. Qualcuno ha
inviato un link alla pagina di wikipedia sulla tivoizzazione, senza
dire perche`, ma sicuramente nel mondo embedded (che contiene il
mercato automobilistco) la gpl3 viene evitata proprio per quello (che
e` il motivo per cui la gpl3 e` nata.

> Il problema qui è che se si vuole portare tutto in licenza GPL 3.0

Ma non si vuole proprio. E per quanto conta sono d'accordo.

Riguardo alla minore o minore adozione, sono d'accordo che sarebbe
meglio avere piu` adozioni libere, che dell'adotto-e-poi-ti-blocco ne
facciamo anche a meno. Ma, che piaccia o no, l'adozione in generale ha
effetti positivi per noialtri softwareliberisti, piu` driver, piu`
coscienza che ci siamo anche noi, eccetera. Poi sono opionioni, e come
tali valgono meno di zero, ma non sarei cosi` negativo sull'adozione
in quanto tale.

> guarda che se tu sei l'unico detentore del copyright su quel software 
> puoi cambiare licenza quando vuoi. Puoi fare un rilascio oggi cambiando 
> solo la licenza d'uso.

Lo sa anche lapalisse. Sta di fatto che (1) sappiamo tutti che non e`
mai vero e (2) la vecchia versione resta comunque fruibile con i
vecchi termini.  Comunque il pacchetto e` gpl2+ e forse diventera`
gpl3 se il nuovo manutentore decide cosi`, mentre io avrei preferito
lgpl, ma l'ho capito dopo.

>> Ho anche usato la GNU FDL. Altro errore madornale (non a caso la
>> documentazione GNU e` in non-free in debian).  Non e` facile, e non
>> sempre rms ha ragione.
> Vale lo stesso discorso di sopra.

Vale che quando hai un contratto con un editore che dice "ok fdl"
il testo rimane fdl. 
 
> Tieni conto che, secondo me, qui ha sbagliato Debian

Opionioni. Secondo me invece ha ragione, e ha sbagliato FSF.
Si sa che ci sono entrambi i fronti.

Che poi wikipedia e` stata cosi` ingenua da prendere la fdl (come me,
stessi anni) e la fsf sapendo di aver sbagliato ha permesso di
cambiare. Brutta storia, meglio non rivangare, meglio.

> Il poter mettere parti non 
> modificabili nella FDL è stato inteso per poter indicare scritti che 
> sono relative all'autore e che altri non dovrebbero modificare.

Buone intenzioni, pessima implementazione. Consiglio di rileggere le
motivazioni di Debian. Se a qualcuno interessa cerco i riferimenti.

> sono state messe in non-free anche documentazioni FDL 
> che non hanno nessuna parte non modificabile

Certo. A ragione. Potrebbero apparire nella prossima versione, mica
si puo` rivalutare tutto ogni volta, se non cambia licenza.

> Questo significa che se, come me, consideri la FDL documentazione
> valida e la vuoi avere sei costretto a mettere sempre non-free.

Sono "costretto" a mettere non-free anche per altri motivi. Non e` che
installare la documentazione gnu mette a rischio il mio PC.  Mi da`
molto piu` fastidio essere costretto a mettere systemd e tutte le sue
metastasi.



Re: Che ne pensate della lettera per licenziare RMS?

2021-04-12 Per discussione Alessandro Rubini
> Una cosa sentita più volte, invece, è che alcuni non si fidano della FSF 
> e per questo, pur scegliendo di usare la GPL, evitano la dicitura "or 
> any later version".
> 
> Di progetti inchiodati ancora oggi sulla GPL2, perché all'epoca decisero 
> di non fidarsi, purtroppo ce ne sono tanti. Alcuni cercano anche di 
> rivendicare la superiorità della licenza vecchia rispetto alla nuova, 
> per giustificare oggi di aver fatto bene ieri.

Uno a caso, il kernel Linux. Sta di fatto che molte aziende non vogliono
vedere la GPL3 nemmeno col telescopio, e se Linux fosse GPL3 vedrebbe
un'adozione minore.

Scegliere la licenza giusta per i propri scopi (che siano interesse
personale o "il bene del mondo") non e` facile.  E non sempre le
argomentazioni che valevano in un momento storico sono ancora valide
piu` tardi.  Quand'ero giovane ho seguito la bibbia: gpl 2 or any
later version e "don't use lgpl for your library".  Mah.

Ho anche usato la GNU FDL. Altro errore madornale (non a caso la
documentazione GNU e` in non-free in debian).  Non e` facile, e non
sempre rms ha ragione.

/alessandro



Re: Che ne pensate della lettera per licenziare RMS?

2021-04-08 Per discussione Alessandro Rubini
> Mi piacerebbe sapere cosa penseranno di noi fra qualche centinaia di 
> anni: per cose di poco valore noi arriviamo a lavorare gratis rubando 
> tempo a tutto il resto

Gia`. Noi del software libero. Non serve aspettare tanto, ho gia`
colleghi e clienti che mi trattano da coglione (ma poi gli serve il
mio aiuto, ogni tanto). Ho imparato a riconosceli, ma non so come
difendermi. Dai colleghi e` piu` facile che dai clienti, comunque.



Re: bullseye

2021-04-05 Per discussione Alessandro Rubini
> nella cache di apt si sono accumulati tutti i pacchetti che ho
> installato. C' erano anche triple e quadruple versioni degli stessi
> pacchetti .deb. totale circa 6 giga
> 
> Nonostante ogni volta che faccio un upgrade faccia sempre anche un
> autoremove

autoremove toglie i pacchetti *installati* che non servono (perche`
autoinstallati per dipendenze, se chi li ha richiesti e` stato rimosso).

Io faccio "apt-get clean" (ma si puo` anche cancellare a mano
il contenuto di /var/cache/apt/archives).

/alessandro



Re: RISC-V: quanta parte del processore ha licenza libera?

2021-03-10 Per discussione Alessandro Rubini
>> La differenza e` che riscV e` stato pensato tenendo in
>> considerazione tutta l'esperienza del settore, prendendo il meglio di
>> tutte le idee precedenti e scartando gli errori (per esempio, se
>> ricordo bene, non ha un registro "flags", e il manuale spiega
>> perche`).
> 
> Questa è interessante, dove la trovo?

riscv-spec-20191213.pdf pagina 23 (ricordavo bene):

   The conditional branches were designed to include arithmetic
   comparison operations between two registers (as also done in PA-RISC,
   Xtensa, and MIPS R6), rather than use condition codes (x86, ARM,
   SPARC, PowerPC), or to only compare one register against zero (Alpha,
   MIPS), or two registers only for equality (MIPS). This design was
   motivated by the observation that a combined compare-and-branch
   instruction fits into a regular pipeline, avoids additional condition
   code state or use of a temporary register, and reduces static code
   size and dynamic instruction fetch traffic. Another point is that
   comparisons against zero require non-trivial circuit delay (especially
   after the move to static logic in advanced processes) and so are
   almost as expensive as arithmetic magnitude compares. Another
   advantage of a fused compare-and-branch instruction is that branches
   are observed earlier in the front-end instruction stream, and so can
   be predicted earlier. There is perhaps an advantage to a design with
   condition codes in the case where multiple branches can be taken based
   on the same condition codes, but we believe this case to be relatively
   rare.

   [...]

saluti
/alessandro



Re: RISC-V: quanta parte del processore ha licenza libera?

2021-03-06 Per discussione Alessandro Rubini
> Sì, ma mi sembra che l'argomentazione sia, se mi permettete la metafora, 
> che è come avere il kernel libero senza il sistema operativo libero.

Esatto. Ma c'e` anche chi ha fatto il resto.

> E qui mi dichiaro semplicemente incompetente, cioè: ci sono tante 
> alternative libere alle altre componenti?

Tante no, ma ci sono alcune realta` (anche italiane) che ci lavorano.
Ho partecipato a due conferenze di opern risc (orconf) -- un'altra
achitettura libera -- ma alla fine si parlava piu` di riscV che di
ORsoc. Adesso non so fare nomi, ma ce ne sono una dozzina in cui le
parti chiuse sono veramente limitate (per esempio la RAM o altri
blocchi "standard" del produttore di silicio da cui si va).

L'altro uso interessante e` nelle FPGA, in cui puoi avere un sistema
completamente libero, col "solo" limite che sei inchiodato mani e
piedi (e corona di spine) al chi fa le tue FPGA.  I sistemi "white
rabbit" del cern per esempio, sono completamente liberi (software
gateware e hardware) ma l'fpga e` un po' un paletto.  Ormai ci sono
solo due venditori importanti di fpga, e il laboratorio che usa white
rabbit sull'altra marca ha avuto le sue non piccole difficolta`
iniziali. [nessun riferimento, wikipedia mi flagellerebbe] Anche qui,
la ram e altri blocchi standard (PLL e cose cosi`) si prendono a
scatola chiusa dai moduli nella FPGA in uso.

Si, l'autore del video parla di fpga, solo che non e` un settore di
nicchia come lo dipinge.  E lo stesso codice che prima compili per
fpga poi lo compili per fare il silicio con modifiche marginali(lo
dice anche lui, mi sono accorto).

Poi, come si diceva, per fare il silicio serve l'azienda. Anche i PCB
li disegno con kicad ma poi devo pagare per produrli, e i costi fissi
si vedono; quelli per il silicio sono enormi.


[128 bit]

> Beh, qualche processore ha almeno la somma a 128 (l'architettura Z dei 
> processori dei mainframe)...

Non e` come avere l'archiettura a 128 bit. 

> vedo che state tenendo in considerazione soprattutto
> l'indirizzamento della memoria,

Per numero di bit dell'architettura solitamente si intende la
dimensione "naturale" dei registri macchina e dei bus interni al
micro.  Quinti atmega (arduino) e PIC sono 8 bit, come lo z80 e il
6502, anche se hanno alcune operazioni a 16 bit.  Il motivo per cui
oggi si preferisce il 64 bit e` esclusivamente la memoria: con i
puntatori a 32 bit vedi solo 4GB, infatti il PC ha fatto l'accrocchio
chiamato PAE (page address extension), che e` solo una rivisitazione
del vecchio "high memory" del dos, dove un processore con 20 bit di
indirizzamento esterno non bastava piu`.

Io preferisco il 32 bit, personalmente, perche` gli eseguibili sono
piu` piccoli e il sistema piu` veloce. Dopo di che il mondo PC e`
obeso e installo anch'io a 64.

> ma per la crittografia non guasterebbe una bella istruzione per
> calcolare in una botta sola il prodotto di due registri a 128 bit
> :-)

Non lo metto in dubbio. Cosi` come chi ha la virgola mobile in
hardware solitamente implementa IEEE-754 a 80 bit, ma questo non ne fa
processori "a 80 bit".
 
> Comunque, di insiemi di istruzioni per una CPU che siano libere, ne 
> esistono anche altre, oltre a Risc-V...

open-risc, lm32, zpu, anche sparc e` stato liberato (e di sparc32
esistono implementazioni libere), piu` sicuramente mille altri che non
conosco. La differenza e` che riscV e` stato pensato tenendo in
considerazione tutta l'esperienza del settore, prendendo il meglio di
tutte le idee precedenti e scartando gli errori (per esempio, se
ricordo bene, non ha un registro "flags", e il manuale spiega
perche`).

grazie, saluti
/alessandro



Re: RISC-V: quanta parte del processore ha licenza libera?

2021-03-05 Per discussione Alessandro Rubini
> io lo vedo l'articolo, ma è davvero stringato

Ok, anch'io. Non lo chiamo articolo, per me e` l'occhiello del video.

> purtroppo io conosco poco di hardware e non ho capito cosa intendi per 
> "rema contro".

Tutti sono entusiasti di risc-V perche` e` libero, mentre la tesi di
Andreas Speiss e` che la parte libera e` trascurabile sul totale e i
chip li trovi fatti dai soliti vendor che prendono un pezzo libero e
lo blindano nel loro mondo proprietario.

E` vero, ma non ci sono solo loro.

>> Inoltre riscV e` l'unica architettura gia` definita nella sua versione
>> a 128 bit.
> 
> questo lo avevo visto e mi ero stupito... ma non avevo indagato oltre

Cito sotto.

> A 128-bit port is simply not realistic at this time.
> https://wiki.debian.org/RISC-V

Certo. Non e` un problema di risc-V, e` il mondo che non e` pronto.

Sull'idea di avere un 128 bit gia` definito, cito la specifica
dell'architettura:

   Although 64-bit address spaces are a requirement for larger systems,
   we believe 32-bit address spaces will remain adequate for many
   embedded and client devices for decades to come and will be desirable
   to lower memory traffic and energy consumption. In addition, 32-bit
   address spaces are sufficient for educational purposes. A larger flat
   128-bit address space might eventually be required, so we ensured this
   could be accommodated within the RISC-V ISA framework.

E piu` avanti:

   The primary reason to extend integer register width is to support
   larger address spaces. It is not clear when a flat address space
   larger than 64 bits will be required. At the time of writing, the
   fastest supercomputer in the world as measured by the Top500 benchmark
   had over 1 PB of DRAM, and would require over 50 bits of address space
   if all the DRAM resided in a single address space. Some
   warehouse-scale computers already contain even larger quantities of
   DRAM, and new dense solid-state non-volatile memories and fast
   interconnect technologies might drive a demand for even larger memory
   spaces. Exascale systems research is targeting 100 PB memory systems,
   which occupy 57 bits of address space. At historic rates of growth, it
   is possible that greater than 64 bits of address space might be
   required before 2030.  History suggests that whenever it becomes clear
   that more than 64 bits of address space is needed, architects will
   repeat intensive debates about alternatives to extending the address
   space, including segmentation, 96-bit address spaces, and software
   workarounds, until, finally, flat 128- bit address spaces will be
   adopted as the simplest and best solution.  We have not frozen the
   RV128 spec at this time, as there might be need to evolve the design
   based on actual usage of 128-bit address spaces.

Non ho parole. Chapeau.

saluti
/alessandro



Re: RISC-V: quanta parte del processore ha licenza libera?

2021-03-05 Per discussione Alessandro Rubini
> Leggendo questo articolo: 
> https://hackaday.com/2021/02/27/exploring-the-open-source-that-really-goes-into-a-risc-v-chip/

Non ho trovato l'articolo, solo il filmato. Qualcuno mi aiuta?
 
> e guardando il filmato indicato (purtroppo è in inglese):
> https://www.youtube.com/watch?v=VdPsJW6AHqc
> 
> è possibile capire molto di più cosa sia RISC-V e come sono distribuite 
> le sue componenti.

Non dice nulla di sbagliato (e meno male che si puo` guardare a 2x),
ma chiaramente vuole far passare il suo punto di vista, che non e` per
forza oggettivo.  Anche perche` remare contro oggi e` l'unico modo non
cruento o volgare per avere visibilita` -- poi, ripeto, rema contro
molto correttamente.

> Leggendo vari articoli mi ero fatto l'idea che l'intero RISC-V più tutto 
> quello che gli gira attorno fosse distribuito con licenze libere...

Ci sono dei mondi liberi, e dei mondi meno.  Anche linux sta dentro
android, ma senza tutta la fuffa sopra non puoi usarlo.

> ...vedendo però il filmato si capisce che non è affatto così, anche se 
> vi sono degli spunti positivi che potrebbero di avere in un futuro, 
> purtropo non troppo vicino, un hardware con licenze completamente libere.

Ci sono, ci sono. Sono prodotti di nicchia, ma qualcuno che ha fatto
il silicio bene c'e`.  Certo, non puoi metterlo nel portatile di tutti
i giorni.

Le potenzialita` sono enormi. Anche se "riscV" e` *solo* la ISA, e`
fatta molto molto molto bene: un mio collega ha scritto un riscV in un
fine settimana, passando tutti i test (no, non e` nella media dei
progettisti).

Invece non condivido questo entusiasmo per le fpga: sara` anche tutto
libero il gateware che ci gira, ma il contentitore e` blindatissimo e
si e` comunque dipendenti da un'unica azienda e dalle sue politiche di
prezzi e produzione (si, il riscV del collega e` per fpga, e per farlo
andare ci sono tante dipendenze dal vendor e modello specifico di chip
in cui viene istanziato).

Inoltre riscV e` l'unica architettura gia` definita nella sua versione
a 128 bit.  Consiglio caldamente a chi si interessa di ISA di passare
una serata a leggersi quella riscV, magari poi ne scrive uno il fine
settimana dopo, come il mio collega.

Ah, quando l'ho conosciuto, stava scrivendo un cortex-M3. Peccato che
sia piu` vietato dell'omicidio.  Tutto il codice, e tutti i
compilatori, che abbiamo scritto per ARM dipendono pesantemente
dall'invidia di ARM.

Sono profondamente convinto che riscV sia la strada giusta, ma non
possiamo seguirla senza grossi investimenti sul silicio per i quali
e` necessaria una pesante collaborazione aziendale.  Ma il rischio
del monopolio e` molto minore che in tutte le altre strade.



Re: RDP

2021-01-03 Per discussione Alessandro Rubini
> Le mie macchine erano dei 486/pentium di prima generazione (12/15 pc) [...]
> Il server, se non ricordo male aveva 2 o 4 Gb di ram e non ho mai avuto
> problemi da quel punto di vista,

Anch'io avevo un 386 con 8M di RAM che era una bomba, mentre con 2M
di RAM facevo andare un server web con i cgi e qualche attuatore locale.

> considera pero` che adesso le pagine web sono cambiate.

Esatto.  Oggi tutto quel materiale e` RAEE, ed e` un errore
riutilizzarlo nelle scuole.  Faremo sempre e solo la figura dei
pezzenti che propongono software lento e inadeguato. Bene l'approccio
LTSP che semplifica la manutenzione, ma per favore con macchine recenti.

Ovviamente dispiace buttare tutto quel ben di dio che ci viene
offerto, ma facendolo funzionare [male, anche se non per colpa nostra]
aiutiamo solo i nostri concorrenti.

So che la mia posizione e` poco di moda nel nostro mondo pauperista e
masochista, e non di rado mi attira gli strali dei duri e puri, ma
chiederei a tutti, prima di continuare sulla propria strada, di
porsi almeno dei dubbi su come muoversi.

/alessandro



Re: [OT] Usare Jitsi-Meet con Chromium su Debian 8

2020-12-31 Per discussione Alessandro Rubini
> Il problema � che usando Chromium su Debian 8 e seguendo le stesse 
> procedure ottengo una pagina completamente grigia al posto di una pagina 
> iniziale di benvenuto. Ottengo la stessa cosa anche con Firefox.

Strano. Confermo che non servono estensioni.

Ricordo inoltre che oltre al sito dell'azienda che supporte jitsi,
l'applicativo puo` essere anche installato sul proprio server. Notevole
il servizio iorestoacasa.work, inizialmente solo-jitsi poi affiancato
da edu-meet (si puo` scegliere un server di uno o dell'altro tipo.
Si puo` anche aggiungere il proprio server alla lista.

Oltre alla pagina di benvenuto, in cui "scegliere il nome di una stanza"
si puo` anche indicare direttamente la stanza.

Per esempio https://jitsi.cedrc.cnr.it/debian-italian

(sono dentro, se si vuole provare).

Saluti
/alessandro



Re: Smartphone Open Source [Semi OT]

2020-12-26 Per discussione Alessandro Rubini
> Visto che ne capisci ti posso chiedere ancora un paio di cose ?

Non ne capisco poi molto, ho letto qualcosa perche` sto facendo una
scheda con dentro una sim e un altro lettore di carte. Oltre a vedere
i mugugni miei e dei familiari quando un telefono si rompe.

Giuliano grandi ha ragione:
>> Se cambi operatore puoi chiedere di mantenere il numero, ma la SIM te
>> la cambiano con una loro.



> Ho visto che i nuovi telefoni hanno quasi tutti la dualsim. Quindi se
> prendo un telefono nuovo inserisco la Sim attuale, e magari faccio un
> backup della Sim, con i dati che si sono salvati, perché quelli che
> erano sul telefono sono persi.

Ni. Che io sappia i dati "sulla sim" sono solo la rubrica e gli sms
(*se* si e` scelto di salvare le due cose sulla sim -- all'inizio era
l'unica opzione).  Quello che si fa e` copiare le cose dalla sim al
telefono, e poi dal telefono all'altra sim.

Al mio ultimo cambio di operatore (e di sim), lo hanno fatto loro
usando un telefono apposta che avevano in negozio. Leggi, cambia sim,
scrivi, cancella tutto dal loro telefono. Sul telefono buono tengo i
contatti sulla sim, perche` se si rompe il telefono quella di solito
rimane. Oggi e` piu` comune tenerli sul telefono, anche perche`
ce ne stanno di piu`.

> Quindi che faccio ? Si può trasferire i dati da una Sim all'altra sullo
> stesso telefono ?

Si, ma devono essere entrambe attive. Quando si "cambia sim"
mantentendo il numero, non sono mai attive contemporaneamente. Il
passaggio e` sempre attraverso un altro spazio di memoria.  Se si ha
uno stupidofono, e` la rubrica del telefono. Con uno recente si puo`
salvare la rubrica su file e poi copiarsi quel file  via rete.

Alcuni servizi incentivano a fare il backup del telefono sul loro
cloud, cosi` non si perde mai la propria rubrica nemmeno se si
distrugge o smarrisce il telefono.

> Ho sentito anche dire c'è la portabilità del numero di cellulare. Quindi
> si può trasferire anche il numero di cellulare da una Sim (vecchia)
> all'altra Sim (nuova) ?  E anche se sono di operatori differenti ?

Come gia` confermato da altri, si. Si faceva gia`, ma mi pare sia
obbligatorio dal 2009, come tutela degli utenti rispetto al lock-in
degli operatori.

In ogni caso conviene chiedere al proprio nuovo operatore, anche prima
di firmare il contratto. Di solito il personale e` correttamente informato
e aggiornato su queste questioni.

saluti
/alessandro



Re: Smartphone Open Source [Semi OT]

2020-12-26 Per discussione Alessandro Rubini
>> riescono a leggere una Sim "datata" che ha già più di 5 o 6 anni ?
> 
> su questo punto non so aiutarti.
> Ho visto dei colleghi che tagliavano la sim [...]

Si, l'unico problema puo` essere la dimensione del supporto. La
sim e` invariata da circa sempre, e tra l'altro usa lo stesso formato
delle carti di credito/bancomat col chip.   Le prime sim erano di
quel formato, e di solito viene ancora venduta cosi`, con degli
intagli nella plastica per strappare via i bordi inutili.

Se ha solo 5-6 anni non prevedo alcun problema: dal 2012 non e`
cambiato il formato. In ogni caso si puo` chiedere la sostituzione
della sim all'operatore, prima o dopo il ritaglio manuale
(che puo` fallire).

https://it.wikipedia.org/wiki/Carta_SIM



Re: Debian dialog: si possono eliminare le cornici?

2020-10-22 Per discussione Alessandro Rubini
>> Che vuol dire, allegare qui il .dialogrc che scatena il problema.
>>
> Eccolo:

Sembra che non si disabiliti l'ombra. "shadow on" e "shadow off" hanno
lo stesso effetto.  Che risulta sbagliato anche perche` il colore
dell'ombra non e` indicato.  La documentazione e` incompleta,
quindi lascio perdere

Se e` importante, segnalerei un baco sul pacchetto. Se e` molto
importante lo correggerei direttamente.  Ma visto quanto e` noioso
spignattare coni colori dello schermo, consiglio di tenere lo schema
di colori originale e lasciar perdere.

[in realta` ricordo di quando discutevo con uno di questi autori, non
ero molto d'accordo con l'aggiunta delle decine di opzioni per i
colori; infatti quando e` comparso "menuconfig" del kernel ha preso
una base piu` semplice, mentre debian ha incorporato questa. Questo
succedeva circa il millennio scorso]



Re: Debian dialog: si possono eliminare le cornici?

2020-10-22 Per discussione Alessandro Rubini
>> A me funziona (quasi). Se il problema viene scatenato da un
>> particolare .dialogrc, suggerisco di allegare anche quello
>> per permettere ad altri di riprodurre il problema.
>>
> 
> Ti ringrazio del suggerimento e lo seguirò appena possibile.

Che vuol dire, allegare qui il .dialogrc che scatena il problema.
 
>> Il "quasi" dipende alla gestione dell'errore [...]

> Mmmh... questo passaggio non l'ho capito ;(!

Non e` importante, e` un problema di ordine superiore.

> [OT] Vedo che fai riferimento al mio post di stanotte

Si, e` arrivato, e poi e` arrivato quello che diceva "lo mando in
privato se serve".

> (ma potrei averlo cancellato inavvertitamente)
> e che pensavo non fosse passato...

E` successo anche a me. Non ho una diagnosi. Immagino che sia
debian.org sia tin.it abbiano periodi di sovraccarico. Di solito prima
di reinviare guardo negli archivi, per non scrivere a tutti
una seconda volta.

In questo caso si trova:
  https://lists.debian.org/debian-italian/2020/10/msg00062.html

saluti
/alessandro, che non maneggia dialog dal millennio scorso



Re: Debian dialog: si possono eliminare le cornici?

2020-10-22 Per discussione Alessandro Rubini
> Eccoti un esempio tratto da quelli contenuti nei sorgenti di 'dialog' e
> da me ritoccato.

A me funziona (quasi). Se il problema viene scatenato da un
particolare .dialogrc, suggerisco di allegare anche quello
per permettere ad altri di riprodurre il problema.

Il "quasi" dipende alla gestione dell'errore. Se dialog non e`
installato non succede niente (il messaggio di errore finisce nella
variabile "choice". Retval vale 127.

saluti
/alessandro



Re: Vecchio comando 'tput sgr0': con cosa sosituirlo?

2020-10-11 Per discussione Alessandro Rubini
> Mi resta tuttavia una curiosità: nel manuale di tput non riesco a
> trovare il punto in cui spiega la/le opzioni 'sgr0'.

 DESCRIPTION
   The  tput utility uses the terminfo database [...]

 SEE ALSO
   clear(1), stty(1), tabs(1), tset(1), terminfo(5), termcap(3NCURSES).

E "man terminfo" a me dice che sgr0 e` "turn off all attributes".

/alessandro

ps, per i giovani: "terminfo(5)" vuol dire "nel capitolo 5", quindi se
non funziona "man terminfo" si usa "man 5 terminfo".  "man man" per
saperne di piu` e capire perche` printf(1) e printf(3) sono cose diverse.



Re: Emulare make install senza scrivere file

2020-10-04 Per discussione Alessandro Rubini
> Se il sistema  di compilazione usa gli autootols potrebbe  fare al tuo
> caso la variabile DESTDIR

Vero. Il valore predefinito (se si usa "./configure" senza argomenti)
dovrebbe essere /usr/local. Quindi un "make install" non dovrebbe
modificare il sistema.

In gioventu` installavo molto in /usr/local, che e` di mia proprieta`.
Quindi "make install" non lo facevo da superutente, e se per caso (o
per baco) il pacchetto installa in /etc (oltre a /usr/local/bin
eccetera) ci si accorge perche` da` errore.

Comunque si puo` sempre fare "make -n install". "-n" vuol dire "non farlo",
ma vengono comunque mostrati i comandi che sarebbero stati eseguiti. A volte
si capisce dove andrebbe a scrivere, a volte no.

Infine, altro trucco d'epoca, dopo aver fatto per esempio "touch /tmp/stamp"
si puo` fare "make install" e poi "find / -xdev -newer /tmp/stamp" per sapere
tutti i file che sono stati scritti. Certo, se sovrascrive file di sistema,
il danno e` comunque fatto, anche se sappiamo quali.

Saluti
/alessandro



Re: directory morta

2020-09-23 Per discussione Alessandro Rubini
> ma io cosa posso fare ?

Vivere nel terrore.
 
> Tieni conto che mi è successo con bullseye e quindi essendo una testing 
> non si può nemmeno escludere che sia stato un problema soft e non hard.

Mi sembra molto improbabile che un file manager non riesca a far
vedere una directory come directory.  Qui si sono sicuramente corrotti
dei dati (anche un solo bit). Certo, potrebbe essere il file manager
stesso che ha corrotto la sua stessa memoria, per un puntatore bacato
in qualche funzionalita` nuova. Ammetto che a questo non avevo
pensato.  Vedere "ls -ld" e "stat", contestualmente al problema, ci
avrebbe detto se il problema era nella directory come vista dal
sistema o come resa dall'applicativo. Nel primo caso, problema hw al 99%.
Nel secondo caso, baco dell'applicativo al 100%.

> Se sapessi sicuramente dove sta il problema hard ( se tale) potrei anche 
> decidere di cambiare il disco o la ram, ma senza saperlo che fo ?

Si considera il sistema come "potenzialmente inaffidabile" e si cerca
di non affidargli l'unica copia di dati critici. Dopo di che si puo`
continuare a lavorarci, con qualche attenzione in piu `del solito.

/alessandro



Re: directory morta

2020-09-23 Per discussione Alessandro Rubini
> Ma comunque dopo è tornato tutto normale.

Malissimo. Potrebbe essere la RAM che ha perso un colpo.
E il prossimo potrebbe perderlo molto peggio.

Oppure il micro che sta dentro al disco a stato solido.  Brutta cosa
gli SSD: la memoria sotto si consuma e noi non sappiamo cosa
succede. [Altri hanno opinioni diverse, inutile litigare perche` sono
comunque opinioni]

Saluti e auguri
/alessandro



Re: directory morta

2020-09-22 Per discussione Alessandro Rubini
> Improvvisamente una dir che mi serviva per montare un disco esterno di 
> rete NFS é diventata di color rosso con un punto di domana davanti.
> 
> Non riesco a cancellarla nè a sovrasciverla nè a montarci il disco

Sarebbe interessante vedere un "ls -ld" della directory, e anche uno
"stat".

Parrebbe una corruzione del disco.  fsck potrebbe aiutare, ma
normalmente quando i dischi iniziano a perdere i pezzi non ne perdono
solo uno, e conviene sostituirli.

saluti
/alessandro