GNU/Linux (detto anche il pinguino)

Sulle mie macchine:
Debian ibrido tra testing/sid
Gentoo (storica oramai...)
Slack
CentOS
DMS su un vecchio portatile Celeron800 64Mb di RAM.

Desktop manager rigorosamente Fluxbox, su Debian accoppiato a KDE4, su Gentoo con KDE 3.5 e su Slack liscio.

Attualmente sto approntando un PC ad uso multimedia per il salotto, fatto con pezzi di recupero: P4 512Mb di RAM e 80GB di HD, Wi-Fi, lettore DVD...a costo 0. Devo ancora decidermi su che distro cimentarmi, probabilmente sperimenterò qualcosa col fast boot che va di moda adesso.

Sabayon e` tra le predilette, una costola di Gentoo
 
miei server: debian lenny
laptop: slackware
eepc: xandros
altro eepc: debian
server housing: FreeBSD (che non è linux però vabbè)
 
miei server: debian lenny
laptop: slackware
eepc: xandros
altro eepc: debian
server housing: FreeBSD (che non è linux però vabbè)
Potevi anche commentarle Synaptic, dunque xandros è una distro in diverse versioni tra libere e commerciali, FreeBSD è un Unix libero con una pacchettizazione simile a Gentoo e Arch Linux, le partizioni supporta solo la radice "/" e una swap, quelle logiche no, molto capace come server, specialmente come intranet (forse è nata proprio per questo;) )
Un pc desktop ce l'hai :confused:?
----
Con la spiegazione di GCC svelo anche la logica dell'open source
(GNU Compiler Collection, in origine GNU C Compiler) è un compilatore multi-target creato inizialmente dal fondatore della Free Software Foundation, Richard Matthew Stallman, come parte del Progetto GNU.
Le versioni recenti sono incorporate nelle principali distribuzioni del sistema operativo GNU/Linux, e di molti altri sistemi, mentre su Mac OS X non è incorporato, bisogna installare Xcode, un pacchetto per sviluppo software.
Nato inizialmente come un compilatore per il linguaggio C, dispone oggi di vari front end per altri linguaggi, tra cui Java, C++, Objective C, Fortran e Ada, e vari back-end che sono in grado di generare linguaggi macchina per molte architetture, tra le quali X86, X64, IA64, PowerPC, s390, SPARC e molte altre.
Serve durante l'installazione insieme al gestore apposito, ma anche per compilare i sorgenti, altrimenti che senso avrebbe scaricare un dvd di una distro con una cartella dei sorgenti?
Tutti i linguaggi di programmazione scripting tipo Python, Perl, ma anche la shell Bash, si appoggiano a lui, ovvio che ci vogliono anche dei editor di testo, che scrivendo seguendo la logica sia dei linguaggi in alto livello, che script in un semplice foglio di testo, come un blocco note, io ho studiato la base Java e un infarinata di Perl, sono partito con testi semplici :eek:
Quindi riassumendo il kernel, gcc, shell e delle utility (programmi di gestione) con un gestore di installazione di programmi con un suo sistema di pacchettizazione, racchiudono la base di un progetto GNU/Linux, però attenzione non ho parlato di interfaccia grafica, vi ricordate ai tempi del Dos con l'interfaccia windows, la distribuzione si comporta uguale, solo che il prompt dei comandi se digiti il comando del programma, lui parte, in Windows no, devi andare nel menù.
Infatti ogni distribuzione GNU/Linux come base ha questa componistica e se legge il link http://it.wikipedia.org/wiki/Software_libero capite che avendo anche i sorgenti, cioè del testo scritto in un linguaggio supportato si può modificarli personalizzandoli e compilarli per poi installarli, questo sistema è anche utile per capire eventuali "bag" da dove o cosa provengono per rendere una certa stabilità.
Il sistema operativo sicuro non esiste, però una cosa è chiara, nei propretari se si buca si buca in un verso ed è uguale per tutte le sue copie, mentre in un sistema aperto come linux, lo vedono "tutti", però è più difcile, perchè ogni uno ha detto e messo del suo :cool:
 
- Informazione Pubblicitaria -
no.. non mi piacciono molto i pc desktop... però forse mi prenderò un mac.
 
no.. non mi piacciono molto i pc desktop... però forse mi prenderò un mac.

E' un tradimento,......allora Solaris:D
--------
La base delle distribuzioni
il progetto GNU sarebbe
-un kernel con tutti i moduli allo stato sorgente,
-una shell Bash provientente da Unix, il suo scopo è l'esecuzione dei programmi
-gcc come descritto in precedenza un compilatore multi linguaggio
-Gdb il bebugger di gcc, ottimo software per effettuare il controllo di flusso su un programma al fine di trovare bug o anomalie implementative, infatti quando va in crash un programma qualsiasi racoglie un file di testo col contenuto della causa e assegnando un numero
-emacs editor testuale estensibile tramite macro scritte in linguaggio lisp
-Glibc è la libreria standard del C, fornisce anche estensioni che sono state ritenute utili o necessarie nello sviluppo del sistema operativo, è anche colui che gestisce in un tal senso il packaging, cioè riconoscere un'arggiornamento, come riconoscere i package
-fileutils e coreutils sono contenitori di quelle utility a riga di comando di una shell, tipo creare una cartella, rinominare, creare collegamenti, ecc...
-GNOME fornisce l'ambiente grafico, un desktop intuitivo ed invitante per gli utenti e la piattaforma di sviluppo GNOME, un framework per creare applicazioni che si integrano all'interno del desktop.
Il cuore è programmato principalmente in C e interamente basato sulle librerie grafiche GTK+ , è libero fin dalla sua nascita, essendo pubblicato sotto le licenze GNU General Public License e GNU Lesser General Public License (a seconda dei componenti).
GNOME è stato progettato con un alto livello di astrazione, e proprio questa sua caratteristica ha permesso di poterlo compilare e includere in un gran numero di sistemi linux.
Sono disponibili api e documentazione per lo sviluppo di applicazioni Gnome in diversi linguaggi, tra i quali Ruby, Java, C++, Perl, Scheme, C#, Python e, naturalmente C.
-KDE l'antagonista, che i primi anni ha indignato parecchi guru del mondo GNU/Linux, perchè non essere un ambiente aperto KDE forniva le api per i soli linguaggi C e C++ e non completamente libero, in quanto le librerie grafiche su cui si basa, le Qt, non erano ancora state rilasciate con una licenza libera, in seguito sono state rilasciate sotto licenza GNU GPL e LGPL.
-Gimp un programma inizialmente per il fotoritocco, ma non solo.
---
Con tutti questi organi informatici che lavorano anche tra loro, si riesce a gestire il pc, però bisogna essere produttivi e magari con poco sforzo e si ha iniziato a lavorare su tanti programmi (progetti) per rendere confortevole il sistema operativo anche da parte di persone "esterne", le prime distribuzioni MCC Interim Linux, che fu reso disponibile per il download pubblico dal server ftp dell'Università di Manchester nel '92, TAMU creata da alcuni sviluppatori indipendenti della Texas A&M University più o meno nello stesso periodo, e SLS, che in seguito prese il nome Slackware, che è la distribuzione più vecchia di tutto il mondo GNU/Linux, non possedevano la gestione dei packages e si doveva fare tutto dai sorgenti e la pachettizazione dei sorgenti in *.gz e *.bz2 la inventò Slackware, che ora è utilizzata per tutti questa modalità nel mondo open source poi naquero due fronti i *.deb da una parte e i *.rpm dall'altra.
Un giorno del '93 ci riuscì la Debian totalemte gratuita in varie versioni con Apt e la sua gui Synaptic (interfaccia grafica), introdugendo dei ftp dove si trovano ancora oggi, tutti i packages formato *.deb depositati pronti per essere installati sulla macchina-debian.
Subito dopo venne RedHat nel '94 con una versione libera chamata RedHat seguita da un numero e una commerciale chiamandola RedHat Interprice Worktation con un sistema di pachetizzazione chiamato col tool rpm inventando l'aggionamento anziche installando la nuova rasando a tappeto la vecchia utilizzando lo stesso principio dei ftp di Debian.
Apt preso da Debian e sistemato per i *.rpm con la sua gui, quando hanno nominato quella libera Fedora si ha utilizzato Yum con diverse gui Kyum, Gnome-yum, Yumex e Smart con la sua gui.
Con la pacchettizzazione si ha dovuto affrontare le dipendenze, che senza i tool per installare è un inferno a installare qualcosa, perchè i progetti sono stati come dire "personalizzati" alla distribuzione e per inserire dei packagses e che vengano riconosciuti, c'è un progedimento.
:decoccio:
 
naaa mac non è un tradimento.. se uno deve spendere soldi per il pc nei mac son spesi bene.. non son spesi bene nei pc winzoz.. li si che è un tradimento..
 
- Informazione Pubblicitaria -
Capito il concetto per avere il controllo del pc e nel tentativo di avere un S.O. che fosse produttivo, anche da subito sono nate le "distribuzioni" che se le andiamo a provare tutte si sente a tatto che hanno degli standar da un parte in comune e un modo di gestire il pc da un'altra entrando nel discorso di una certa "filosofia" per ogni una di loro.
Qualch'uno non si è mai domandato come mai GNU/Linux lavora con i permessi di Utente?
Il discorso parte a monte da Lilo o Grub e comporta anche delle sue stranezze, che quando carica le partizioni assegna dei permessi, poi passa il testimone ad Apace, un server che gestisce tutto, un es. cups che è il server delle stampanti lavora all'indirizzo http:///localhost/631:63 (63 è la porta) che si può visualizzare anche da un browser web, che se conosciamo tutti gli indirizzi dei vari servizi si vedono anche da esso :eek:
Fino a un certo punto s'installava dai sorgenti, il problema che oltre a chi le ha ideate pochi, ma veramente pochi riescono a entrare ancora oggi in quell'ottica, perchè dalla shell basch ti dice se manca qualcosa per proseguire (dipendenze).
Dal sorgente s'installa prima di tutto si deve aprire il tarball (archivio), che può essere in formato *.tar (metodo per racchiudere solamente senza comprimere in un file), *.gz (formato compresso se racchiude come un *.tar) e *.bz2 e *.tgz(sono due formati a livello di compressione maggiore, dove il secondo viene creato un *.tar, poi compresso, mentre il primo racchiude nella compressione tutta la cartella).
Una volta aperto l'archivio si trova la cartella e cercare un file di testo chiamato o README o INSTALL, dove ci sono requisiti per installare e la procedura, quindi di solito è presente uno script chiamato configure che è un programma ad interpretazione nel linguaggio per solito della shell Bash, che genererà diverse cose dentro la cartella, poi si dovrebbe usare make che genereràdei binari e poi make install:
digitare dalla shell (terminale) i seguenti terminali:
scompattare
[manuel@andrea ~]$ bzip2 -cd /home/manuel/Download/sorgenti/Python-2.6.4.bz2 | tar -xvf
[manuel@andrea ~]$ tar -xvf /home/manuel/Download/sorgenti/Python-2.6.4.tar.bz
visualizzare la procedura
[manuel@andrea ~]$ cat /home/manuel/Download/sorgenti/Python-2.6.4/README | more
quasi sempre sarà
./configure (io consiglio ./configure --help per vedere cosa si può fare)
oppure per sapere dove andiamo a installare
./configure --prefix=/usr/local
poi
[manuel@andrea:/home/manuel/Download/sorgenti/Python-2.6.4]$ make
da ROOT (quindi prima si digita su e poi la sua pasword)
[manuel@andrea:/home/manuel/Download/sorgenti/Python-2.6.4/]# make install
Il senso di installare oggi sono solo due o hai una distribuzione obsoleta o è all'ultima release, che non esiste ancora il package.
Come creare il package?
Stessa procedura fino a make poi si usa checkinstall, per creare o un *.deb o un *.rpm ma può anche generare i packages per Slackware, in questo caso viene messo oltre a tutto ciò che occorre per installare il programma anche altre informazioni che servono sia al gestore per installare che per il sistema, un pò come un DVD che oltre al film ci sono altre informazioni, perchè il male dei sorgenti che risultano invisibili al sistema, perchè non vengono registrati nel database dei packages.
Per la famiglia RedHat ad es. esiste anche rpmbuild, che segue le istruzioni di *.spec del relativo file nella relativa cartella /usr/src/redhat/SPECS , lui scompatta l'achivio, compila e crea tre tipi di *.rpm , core, devel e debugginfo, infatti se io mi creo un rpm dai sorgenti unico, non lo installo, perchè RedHat segue una logica e bisogna seguirla, così per Debian, ArchLinux, ecc....
Quì ci ritorno sopra.
:decoccio:
 
andrea.. non vorrei sembrare un po critico.. ma in questo forum.. quanti pensi che possano capire tutte queste cose che sono già di un livello un pochino.... diciamo UP!.. poi vedi te per me no problem... io vorrei cercare di avvicinarli un po a Ubuntu intanto per capire le cose... posso capire che io ho imparato linux da slackware.. ma non mi sembra il caso di farli partire da una archlinux.. anche perchè i pc di oggi sono ben piu potenti di un tempo e non si ha piu la stretta necessita di OS iper-leggeri.. se ne parla nei lug ma solo per i progetti Trashware.. io se mi permetti vorrei avvicinarli piu a un discorso di questo tipo: (non è recentissimo ma il messaggio è il medesimo anche ai giorni d'oggi)
parte 1
[YOUTUBE]http://www.youtube.com/watch?v=eItsSGhu0nE[/YOUTUBE]
parte 2
[YOUTUBE]http://www.youtube.com/watch?v=V220ZkKntcQ&feature=related[/YOUTUBE]
buona visione.
 
  • Like
Reactions: andrea-cesenat
Questa mia assenza è dovuta a provare i vari pinguini, cioè mi sono scaricato varie distro e ho valutato, che oltre alle "blasonate", lealtre iniziano a essere un pò sporche nel senso che si trova del software licence free, ma non puoi avere il sorgente, ne modificarlo, io ho voluto conoscere/usare gnu/linux, perchè i software gratis di win* hanno applicativi ridotti e aprono una porta con il propretario del softwre,.............................non mi piace!!
Preferisco il pinguino, poi specificare una cosa Mandrive, Suse, RedHat hanno una distro "tutta" libera e una commerciale, non mischiare dell'open source con del lincense free anche se è regolare e consono con la lincenza GPL1/2 e LGPL.
Accetto il tuo consiglio Synaptic di rimanere a un certo livello nel spiegare gnu/linux, comunque viene in evidenzia che sembrano uguali, ma hanno un modo differente di gestire un pc.
E' vero un pc datato si rianima con gnu/linux altrimenti sarebbe spazzatura, io attualmente ho un PIII 1000 hz e un PII 300 hz e in entrambe Fedora 4 e 7 derivata da RedHat 9 -> 10 (fedora 1), ho preso quella, perchè ho acquistato un libro col titolo "Linux" e aveva un cd di rh 6.1, da lì è nata la mia passione, ho fatto una scapatella allora con suse professional 8.1(commerciale), ora in una settimana ho provato Arh linux, Crux, Debian, Gentoo, Sabayon, Kubuntu e voglio dedicare un pc a Gentoo.
Tu dici di aver imparato gnu/linux da Slackware, diciamo che sei partito arrampicandoti per poi iniziare a camminare nella pianura :D, scherzi a parte ubuntu mi sembra semplice, però se ci guardi ha molti script sotto che lavorano oltre a programmi con molta grafica, ricordiamoci che la grafica è la serva del terminale, io suggerisco sempre digitare tutti quei binari in /usr/bin con --help e leggere cosa sono, si imparono parecchie cose a sapere cosa sono quelli.
:decoccio:
 
- Informazione Pubblicitaria -
Dunque ricapitolando le distribuzioni sono "OS" dove vengono ragruppati dei pacchetti pre-compilati (spiegato in precedenza) pronti da essere installati e infatti sono targati quelli diciamo "esterni" tipo *.fc11.rpm *.mdk.rpm *.lenny.deb , *.pkg.tar.gz .ecc...
Insomma vengono targati per riconoscerli i propri dagli altri, però esistono anche i Packagement Tool. che sono quei programmi che gestiscono ogni instalazione se interpellati, perchè possiamo fare anche manualmente, però risolvono l'inferno delle dipendenze e ne esistono due, ad albero o a piramide oppure circolare (le più tremende), dove bisogna installare più pacchetti "in un colpo solo", manualmente riesce anche la shell, perchè è ingrado oltre ad essere in interprete di comandi a "combinarli" ( in precedenza o fatto notare questo "|") o anche eseguire operazioni "logiche" e quindi dei script.
I Packagement Tool "ascoltano" dei canali "ftp" e viengono raccolti tutti i pacchetti per la distribuzione e non serve targarli e sono di ogni tipo, però non serve mettere i pacchetti in una cartella e configurare il Packament Tool, perchè bisogna creare una cartella con dei specifici file che sono uguali in tutti quei canali e servono a far "vedere" cosa c'è dentro, diciamo una spiece di indice, qualch'uno li conosce?
Le dipendenze sono i pacchetti che "richiamano altri programmi", un es. a masterizzare esiste k3b, ma anche graveman........e altri.......è solo grafica di kde o di gnome o di altro genere, ma grafica rimane, perchè gnu/linux funziona anche senza grafica è una soluzione per rendere la vita più facile, "il muscolo" sono cdcurdao, wobin, grovisoft, ..........e altri che sono file "binari" e lavorano a livello diciamo macchina.
Le dipendenze è anche una soluzione per non "gonfiare troppo" la distribuzione evitando dei "doppii" che fanno la stessa cosa, infatti in precedenza ho citato che con rpmbuild mi creo un core, un devel e un debugginfo dello stesso pachetto, però c'è anche da dire una cosa, perchè se nell'open source esistono quei progetti (programmi), li usano tutte le distribuzioni, ma sono diverse, perchè?
:decoccio:
 
X