-
Scritto il 25 agosto 2009 in Low tech
Sempre sulla scia del non avere molto da fare – e poco sonno – mi sono divertito a cercare un po’ di nuove vecchie gare di sputi BSD vs. Linux.
Non che abbia cercato molto, ma questa qui è particolarmente divertente.
L’autore è un utente Linux a tempo pieno, per cui personalmente non essendo neppure io ormai un utente Linux a tempo pieno posso dichiararmi nella sua stessa situazione, senza conflitti d’interessi di sorta.In sintesi:
- BSD è semplicissimo
- Crea il tuo OS
- Velocità
- Stabilità
- Pacchetti Software
- Sicurezza
- Tutela della Proprietà Intellettuale
Veniamo ai commenti.
Semplicità, personalizzazione, pacchetti software (1, 2, 5)
In poche parole: it’s not a bug, it’s a feature. Nel post precedente criticai la scelta dei BSD di forkare tutto, kernel e userspace, creando una dispersione di lavoro immensa. Il risultato è che i comandi base GNU ( ls, cp, blabla ), mantenuti da un team molto più grande, riescono a diventare molto più immediati, e probabilmente, potendoci dedicare risorse umane, più veloci. Il risultato più immediato del BSD way of life invece è che non avendo troppa gente a disposizione se volete ls con l’output colorato dovrete attendere un po’; dopotutto è la semplicità che conta.
È molto bello anche pensare che creare più sistemi operativi ( NetBSD, FreeBSD, OpenBSD, etc. ) risponda alle esigenze di qualsiasi utenza. Dopotutto nel paese dei puffi i grafici fanno l’OS per grafici, i sysadmin fanno l’OS per sysadmin, gli sfigati faranno l’OS per sfigati. Il paese dei puffi era il mondo prima degli anni ’90. Poi tutti hanno capito che il modello vincente era un OS che andasse bene per grafici, sysadmin e sfigati, e tutti quelli che pianificavano soluzioni “mirate” sono colati a picco ( SGI, per dirne una ). Su Linux le “scelte” si chiamano distribuzioni. Dopotutto a che pro farsi i pipponi su come debba essere il modulo ideale per la mia scheda wireless, se per vederla funzionare devo aspettare due anni, e tutto ciò perché io sono uno sfigato e ci sono poche persone come me che programmano al mio OS preferito ? Sfido a dire che per i sysadmin non valga lo stesso.
Che dire, l’importante è che funzioni, e bene.
L’esempio fatto a sostegno della tesi “creare un OS commerciale a partire da BSD è fattibile” è Mac OS X. È buffo vedere che non solo sia un ottimo esempio sia anche l’unico, per cui ok, “tecnicamente” è possibile, ma “in realtà” per avere un prodotto decente occorrono sforzi immani.
Per i pacchetti software il discorso è simile. Pensare che i ports siano un sistema figo “tanto che sono stati persino imitati da una distribuzione Linux” è una infantile e beata ingenuità. Nessuna persona nel 2009 vuole compilare tonnellate di software per installarle, e le release frequenti di TeX e OpenOffice ( due esempi di programmi mastodontici ) fanno cadere le palle a chi pensa che “ok, alcune cose le compiliamo, altre le installiamo precompilate”. Che sia compilare “a mano” o in modo automatizzato fa poca differenza. L’autore non ha evidentemente mai usato Debian.
Velocità, stabilità, sicurezza (3, 4, 6)
Tre cose che si sentono dire da anni sui BSD rispetto a Linux. Sarà vero ?
Linux è molto usato in ambienti desktop, per cui i due punti in genere vanno a farsi fottere. D’altra parte i BSD forniscono un setup minimale con pochissime applicazioni server-side, per cui la sicurezza è il solito approccio “se non giochi non perdi mai”.
Secure by default, può essere, ma sono ben convinto che con un paio di giochetti dal lato sicurezza BSD e Linux siano pressoché indistinguibili. Sulla velocità il discorso è analogo, e spesso dipende anche dall’hardware. Non solo: in genere i buchi non sono relativi al kernel ma ai programmi stessi. Una injection via web è un bug di MySQL o di Apache, e questo frega sia l’admin Linux che quello BSD. Inoltre, come prima: più persone sviluppano, più persone testano, più persone aggiustano.
La stabilità in genere è legata all’utente finale. Io voglio le ultime release, software possibilmente aggiornato ( e veloce ). Se ogni tanto crasha non è un problema. Se invece voglio puntare sul software ampiamente testato spero proprio che sarà ben più stabile e sicuro. Non è così mitologico.
Tutela della Proprietà Intellettuale (7)
Questo punto è semplicemente un problema della GPL che a modo suo cerca di imporre ai fabbricanti di hardware l’apertura del codice, al contrario della licenza BSD che permette la redistribuzione anche nella sola forma binaria. Per quello che mi riguarda la GPL è stata sacrosanta per il kernel Linux, perché è grazie a questo che molti programmatori dipendenti di importanti produttori hardware sono anche diventati sviluppatori del kernel stesso.
Se Linux fosse stato rilasciato sotto BSD dal principio molti moduli sarebbero stati nelle condizioni dei driver 3D NVIDIA e ATI: una enorme schifezza da non toccare in nessun modo, perché il padrone non vuole.
Per il resto è ampiamente mostrato che il modello open source “a tutti i costi” funziona anche da un lato economico1, per cui esigere la chiusura del codice ( pretendendo anche che nessuno cerchi di crackarlo ) è un revocabile privilegio, e qualunque imprenditore che voglia investire nel business dei sistemi operativi deve arrendersi al fatto che il capitalismo non è “io mi arricchisco, voi state alle mie regole”, e la “tutela” della proprietà intellettuale non è un diritto naturale, ma una gentile concessione della licenza da una parte e del legislatore dall’altra.
In sintesi, se uno è un dipendente della discomafia la tutela della proprietà intellettuale rende la licenza BSD una figata. Allo stesso modo, se uno vive in un enorme palazzo governativo di una solida dittatura, beh, anche la pena di morte diventa una figata.
Dunque ?
Tutto ciò insegna che le guerre fra poveri facevano ridere nel 2002 e fanno ridere tutt’ora, ma dopotutto Internet senza flamewars sarebbe triste come un mondo senza studenti di scienze della comunicazione.
_______________- Persino Microsoft sta aprendo le specifiche delle nuove tecnologie. Una decina di anni fa sarebbe stata mitologia
-
Scritto il 14 agosto 2009 in Senza categoria
Per i veri nerds l’estate è quel periodo dell’anno in cui si possono fare le cose che si fanno di solito, ma con molto più tempo a disposizione, e meno sensi di colpa. Incoraggiato dalla noia ho dovuto colmare le mie lacune in materia di “virtualizzazione” e ho deciso di condividere col mondo le mie esperienze in merito.
Gli ingredienti di oggi sono
- Virtualbox
- Una immagine CD di OpenBSD per i386 ( install45.iso, quella grossa )

OpenBSD: where unix meets ketamine
Un po’ di storia. OpenBSD è un unix celebre fra gli script kiddies e i vergini over 25 reso popolare da un logo particolarmente buffo ( contrariamente al pinguino di Linux, ad esempio ) e dal fatto che “sono stati trovati due soli buchi nell’installazione di default”. Era uno solo fino a poco tempo fa, che storia.
Il motivo della sicurezza di OpenBSD è lo stesso principio per cui un prete ha poche chances di prendere l’AIDS, ovvero “se non giochi non perdi mai”. Un’altra cosa folkloristica di OpenBSD è che un tempo, per qualche strano motivo, gli sviluppatori ritenevano “troppo sbatti” fare le immagini per i CD, per cui le opportunità erano l’acquisto del set, farti un’immagine a mano, o usare quelle per i floppy che si trovavano sul sito. Dopodiché passato il down da MDMA uno degli sviluppatori deve aver guardato il calendario, per la prima volta nella sua vita.
In short: sicurezza e stabilità. Sembra quasi un luogo comune, ma.
Ad ogni modo, the adventure begins !
Il primo passo è il setup, dopo una facile configurazione di virtualbox che, devo dire, è gratis e fa quello che deve fare.

Sempre al passo coi tempi
Il setup sembra Zork. È una serie di domande y/n più il partizionamento dei dischi. Ricorda molto i setup testuali di distribuzioni Linux di metà anni 90, però fatti da persone molto pigre.
Una nota di merito riguarda il partizionamento, che proprio per essere sicuri che funzioni ovunque è fatto con fdisk e usa come unità di misura di default i blocchi. Almeno FreeBSD dava la scelta. In ogni caso, fortuna che il setup non è l’unico luogo in cui per OpenBSD il tempo non è mai passato.
Dopo un pochino di y/n, spade e tesori si riesce finalmente a combinare qualcosa. Non c’è da sperare che il setup riavvii da solo, persino scrivere “reboot” era troppo.
Prima di arrivare a qualcosa di confrontabile con lo screenshot bisogna fare un paio di cose e ringraziare virtualbox per il suo router virtuale, senza il quale non avrei potuto installare un beneamato cazzo.
Il prompt che ci si trova davanti è una banalissima ksh ( “# _” è il massimo che si può ottenere ), che oltre a non avere niente di utilizzabile non credo sia più sviluppata. Chissà perché.
Molte altre configurazioni di base non sono poi così intuitive. Contrariamente alla scelta che ci si ritrova con Linux i layout per la tastiera sono pochini e nessuno funzionava bene. L’unico editor di base installato era vim ( che personalmente non sopporto – e non so usare ), e per altro coi vecchi comandi, quindi niente backspace o invio, troppo avanzati.
L’aggeggio per installare i pacchetti si chiama pkg_add, e ricorda molto quello di Slackware. Il che vuol dire “no pacchetti, no party” ( anche se non sono così pochi ).
Sull’uso in generale difficile andare oltre, anche perché è impensabile pretendere “calcoli intensi” da una virtual machine con 64MB di RAM, però si possono puntualizzare alcune cose.
La prima è che gli sviluppatori di OpenBSD non hanno idea del significato della parola “utente tipico”, e nello spirito di “it’s not a bug, it’s a feature” la confondono con “libertà di scelta”. Che è come dire che siccome è pieno di case di vario tipo che puoi pensare di progettare, per ora stai pure in una tenda.
Non esiste un setup decente, il che più che ad un OS sicuro “per sviluppatori” si addice ad un brutto ricordo degli anni 90: l’installazione tipica installa pochissime cose. Per la versione i386 è difficile persino pensare di farne un uso come “server domestico”, vista la ben nota scarsa compatibilità hardware ( per non parlare quindi di un uso su un laptop ). E poi perché usare gcc 3.3 ? Il 4 non è abbastanza stabile ?
Proprio per questioni cronologiche non si capisce a chi sia rivolta la versione i386, visto che al login chiede persino “che tipo di terminale vuoi ?”. Come se nel 2009 una persona qualunque sulla ventina conosca le varie differenze.
Per quanto riguarda il networking ci sarebbe una nota a margine abbastanza spassosa: molti dei router commerciali montano unix per questioni di “versatilità”. Non ho mai visto BSD su uno di quegli aggeggi, mentre si vedono molte distribuzioni Linux. Il fanboy BSD potrebbe dire che “non montano BSD perché sono pigri”. Può essere anche vero, però se un OS fa cagare come ambiente desktop ci si immagina che possa fare scintille sui sistemi embedded. Se poi si scopre che i sistemi embedded commerciali snobbano i BSD, beh.
Diciamo la verità, OpenBSD attira abbastanza per la questione “strong cryptography” però nessuno ha mai capito a cosa serva tutto ciò. In realtà neppure io ho investigato più di tanto, ma se da una qualsiasi distribuzione Linux è facile criptarsi tutto il filesystem / ( lo feci anni fa, ovviamente con l’eccezione ovviamente del kernel e di un paio di oggetti di avvio ) non si può andare troppo oltre, anche se è notevole il fatto che la libreria di default includa numerose funzioni per cifrare dati al volo con una bella scelta di algoritmi.
È più che apprezzabile che ci siano progetti ( pure se scarsamente sviluppati ) che ambiscono a creare distribuzioni basate su kernel BSD ( Debian/kFreeBSD, Gentoo/OpenBSD ), perché pure se il kernel BSD è effettivamente migliore su certi fronti del kernel di Linux, l’userspace vanilla è quasi tutta da buttare nel cesso, praticamente per quasi tutti i tipi possibili di utenza.
Tags: BSD o BDSM, epic trolling, roba da schifosi nerd -

