Table Of ContentGee is Not another UNIX manual
(a debian based intro)
febrero 2004-versión2.4(es)
Avisolegal
Se garanitza permiso para copiar, distribuir y modificar este documento según los términos de la
GNU Free Documentation License, versión 1.2 o cualquier posterior publicada por la Free Softwa-
re Foundation. Se dispone de una copia de esta licencia en el apéndice D y ésta o posteriores en
http://www.fsf.org/licenses/fdl.txt.
Agradecimientos
Los autores agradecen a la Fundació per la Universitat Oberta de Catalunya (www.uoc.edu) la finan-
ciación de la primera edición de esta obra, enmarcada en el Màster Internacional en Software LLiure.
Tambiénseagradecelacolaboracióndetodosaquellosquehanaportadosussugerencias,comentariosy
correciones,enespecialaGuillemJover.
Seagradecerácualquiersugerencia/comentario/correcióndeldocumento(pág.finalparacontactar).
Documentoyfuentesdisponiblesen:http://jane.uab.es/pub/guides/geedgli/
Aunquehaceyamásdeveinteañosqueelsoftwarelibreexiste,nohasidohastalosúltimostiemposquese
haperfiladocomounaalternativaválidaparamuchosusuarios,empresasy,cadavezmás,institucionesy
gobiernos.ActualmenteGNU/Linuxesunodelossistemasoperativosmásfiablesyeficientesquepodemos
encontrar.Aunquesunaturalezadesoftwarelibrecreó,inicialmente,ciertasreticenciasporpartedeusuarios
yempresas,GNU/Linuxhademostradoestaralaalturadecualquierotrosistemaoperativoexistente.
El objetivodeestecursoesiniciarnosen elmundodelGNU/Linux.Enelmismoobtendremoslasclaves
para entender la filosofía del código libre, aprenderemos cómo usarlo y manipularlo a nuestro gusto y
daremoslasherramientasnecesariasparapodermovernosfácilmenteenestenuevomundo.Eldocumento
tampocopretendeserunmanualdereferenciaimprescindibleparaadministradoresy/ousuarios;paraesto
ya hay centenares de manuales, HOWTOS y multitud de otras referencias que nos ocuparían millares de
páginas. Aquí pretendemos aprender a dar los primeros pasos en esta tierra poco explorada para todavía
demasiados usuarios y administradores a la vez que enseñaremos cómo plantear y resolver por nosotros
mismoslosproblemasquepuedanaparecer.
Aunque el curso no pretende basarse en ninguna distribución en particular, en la mayoría de ejemplos
y actividades se utilizará Debian GNU/Linux (versión 3.0 -Woody-). Aunque no es una distribución tan
intuitivayfácildeutilizarcomoalgunasotras,nosserviráparaexplicarpasoapasotodaslascaracterísticas
deunsistemaoperativobasadoenGNU/Linux.Además,suextraordinariacalidad,estabilidadyseguridad
lahacenunadelasopcionesactualmentemásválidas.
Esperamosqueelcursoseadesuagradoysirvaparaabrirlelaspuertasalmundodelsoftwarelibre.Como
másusuariosseamos,másydemejorcalidadsoftwaretendremos.
¡BienvenidosalGNU/Linux!
Índice general
1. Introducción 1
1.1. ¿QuéeselGNU? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. ¿QuéeselGNU/Linux?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3. Distribuciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4. Programasydocumentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Conceptosycomandosbásicos 6
2.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2. Usuariosygrupos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.3. Elsistemadeficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3.1. Lajerarquíadelsistemadeficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.3.2. Directoriosdelsistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3.3. Moviéndonos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.4. Enlaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3.5. Permisos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3.6. Manipulación,patronesybúsquedas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.3.7. Tiposycontenidodeficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.4. Losprocesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.5. Otroscomandosútiles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.5.1. Laayudadelsistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.5.2. Empaquetadoycompresión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.5.3. Operacionesdedisco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.6. Operacionesconcomandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.6.1. Redirecciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.6.2. Comandosespecíficosdelbash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.6.3. Shellscriptsconbash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3. TallerdeKNOPPIX 22
3.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2. Arranquedelsistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.3. Parodelsistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.4. Configuracióndelteclado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.5. Inspeccióndelsistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.6. Manejodirectoriosyficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.7. Administracióndeusuarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.8. Gestióndeprocessos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.9. Activaciónyusodelratón . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.10.Otrasoperaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.11.Conclusión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
I
II ÍNDICEGENERAL
4. InstalacióndeGNU/Linux 35
4.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2. Arrancando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.3. Particionandoeldisco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.4. Instalacióndemódulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.5. Configuraciónbásicadelared . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.6. Sistemadearranque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.7. Eleccióndepaquetes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.8. Otrosaspectos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5. TallerdeinstalacióndeDebianWoody 40
5.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.1.1. Sistemasdeinstalación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5.1.2. Tiposdepaquetes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.1.3. Estadodedesarrollodelospaquetes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2. InstalacióndeDebianWoody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.2.1. FlavoursdeDebianWoody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.2.2. CDROMsdeDebianWoodyysusdistintosflavours . . . . . . . . . . . . . . . . . . . . . . . . 42
5.2.3. InstallingDebianGNU/Linux3.0ForIntelx86 . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.3. InstalacióndeDebianWoodymedianteCDROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.3.1. Antesdeempezarlainstalación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.3.2. Arranquedelsistemadeinstalación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.3.3. Configuracióndelidiomadeinstalación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.3.4. Menúprincipaldeinstalación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.3.5. Configuracióndelteclado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.3.6. Particióndeldiscoduro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.3.7. Inicializaciónyactivacióndelaparticiónswap . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.3.8. InicializaciónyactivacióndeunaparticiónLinux . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.3.9. InicializaciónyactivacióndeotrasparticionesLinux . . . . . . . . . . . . . . . . . . . . . . . . 47
5.3.10. Instalacióndelkernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.3.11. Configuracióndemódulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.3.12. Configuracióndelhostname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.3.13. Instalacióndelsistemabase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.3.14. Creacióndeundiscodearranque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.3.15. InstalacióndeLILO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.3.16. Reinicializacióndelsistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.3.17. Arranquedelsistemabase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.3.18. Configuraciónhoraria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.3.19. Configuracióngeográfica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.3.20. Establecimientodelapolíticadepasswords . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.3.21. Últimasconfiguraciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.3.22. Configuracióndeapt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.3.23. taskselydselect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.4. InstalacióndeDebianWoodyporred. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5.4.1. Particularidadesdeunainstalaciónporred . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.4.2. Aspectoscomunesdelosdistintosmétodosdeinstalación . . . . . . . . . . . . . . . . . . . . . 51
5.4.3. Instalacióndelmódulodered . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
ÍNDICEGENERAL III
5.4.4. Configuracióndelared . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.4.5. Configuracióndeapt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.5. Conclusión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6. Configuracionesbásicas 53
6.1. Elsistemadelogin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
6.2. Explorandoelbash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
6.3. Elsistemadearranque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.3.1. Lilo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.3.2. Grub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.4. Accesoaotrasparticionesydispositivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
6.5. Configuracióndedispositivos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.5.1. Elteclado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.5.2. Tarjetadered(tipoEthernet) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.5.3. TarjetaWiFi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.5.4. Módems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.5.5. Tarjetadesonido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
6.5.6. Impresora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
7. Daemonsyrunlevels 65
7.1. Losdaemons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
7.2. Losrunlevels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
7.3. Elarranquedelsistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
7.4. Daemonsbásicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
7.4.1. Logsdesistema(sysklogd) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
7.4.2. Ejecucionesperiódicas(cron) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
7.4.3. Ejecucionesretardadas(atybatch). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
8. Instalacióndeaplicaciones 73
8.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.2. ElsistemadepaquetesDebian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
8.3. Compilacióndenuevosprogramas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
9. Tallerdeconfiguracionesbásicas 78
9.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9.2. Elgestordearranque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9.2.1. InstalacióndeLILO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9.2.2. Instalacióndegrub . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
9.3. Elsistemadepaquetes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
9.3.1. /etc/apt/sources.list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
9.3.2. apt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
9.3.3. dpkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
9.3.4. dselect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
9.3.5. aptitude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
9.4. locales:configuraciónregional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
9.5. Configuracióndemanysupager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
9.6. Elarchivoprincipaldearranque,/etc/inittab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
9.7. Montajededispositivos,/etc/fstab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
IV ÍNDICEGENERAL
9.8. Configuracióndedispositivos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
9.8.1. Configuracióndelratón. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
9.8.2. Configuracióndemódems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
9.8.3. ConfiguracióndemódemsDSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
9.8.4. Configuracióndetarjetasdered . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
9.8.5. Configuracióndeimpresoras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
9.8.6. Configuracióndetarjetasdesonido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
9.9. Conclusión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
10.ArquitecturaX-Window 93
10.1.¿QuéesX-Window? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
10.2.Configuración . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
10.3.Xdisplaymanager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
11.TallerdeX-windows 100
11.1.Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
11.2.Instalacióndelsistemabásico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
11.2.1. Distintasestrategiasparalainstalacióndelospaquetes . . . . . . . . . . . . . . . . . . . . . . . 100
11.2.2. Instalacióndepaquetesbásicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
11.2.3. Inicializacióndelservidor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
11.2.4. Elficherodelog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
11.2.5. Elservidordefuentes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
11.3.WindowManagers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
11.4.XSessionManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
11.5.XDisplayManager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
11.6.DesktopManagers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
11.6.1. GNOME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
11.6.2. KDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
11.7.Personalizacióndealgunosaspectos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
11.7.1. Personalizacióndeaspectoslocales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
11.7.2. Personalizacióndeaspectosdered . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
11.8.Configuracióndeimpresoras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
11.9.OpenOffice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
11.10.Conclusión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
A. Tablasdecomandos 113
A.1. Sistemadeficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
A.2. Ayudadelsistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
A.3. Permisosdelosficheros. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
A.4. Copiayborradodeficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
A.5. Paradaoreinicio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
A.6. Operacionesconficheros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
A.7. Compresióndeficherosycopiasdeseguridad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
A.8. Operacionesdedisco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
A.9. Usuariosygrupos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
A.10.Gestióndeprocesos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
B. Eleditorvi 119
B.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
B.2. Modosdelvi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
C. Heramientasdeadministración 122
C.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
C.2. Linuxconf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
C.3. Webmin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
D. GNUFreeDocumentationLicense 126
Capítulo 1
Introducción
1.1. ¿Qué es el GNU?
Paraentendertodoelmovimientodelsoftwarelibredebemossituarnosafinalesdeladécadadelossesenta,principios
de los setenta. En aquellos tiempos las grandes compañías de ordenadores no daban el valorque hoy día se dá al soft-
ware.Ensu granmayoríaeranfabricantesdeordenadoresqueobteníansusprincipalesingresosvendiendosusgrandes
máquinas,alasqueincorporabanalgúntipodesistemaoperativoyaplicaciones.Lasuniversidadesteníanpermisopara
cogeryestudiarelcódigofuentedelsistemaoperativoparafinesdocentes.Losmismosusuariospodíanpedirelcódigo
fuentededriversyprogramasparaadaptarlosasusnecesidades.Seconsiderabaqueelsoftwarenoteníavalorporsimis-
mosinoestabaacompañadoporelhardwarequelosoportaba.Enesteentorno,loslaboratoriosBell(AT&T)diseñaron
un sistemaoperativollamadoUNIX, caracterizadopor labuenagestiónde losrecursosdelsistema,su estabilidadysu
compatibilidadconelhardwaredediferentesfabricantes(parahomogeneizartodossussistemas).Esteúltimohechofue
importantísimo(hastaentoncestodoslosfabricantesteníansuspropiosoperativosincompatiblesconlosotros)y fueel
factorqueleproporcionómuchapopularidad.
Poco a poco, las grandes empresas empezaron a tomar conciencia del valor del software: primero fue IBM quién
en 1965 dejó de dar el código fuente de su sistema operativo, a finales de los 70 Digital Research empezó a vender el
suyo, etc.Estehechohizoquetodaslascompañíassedierancuentaqueelsoftwarepodíaser muyrentabley lespodía
aportargrandesbeneficios.Conésto,lamayoríadeempresasempezaronaponerreticenciasadejarelcódigofuentede
susprogramasysistemasoperativosyempezaronavendersusprogramascomounvalorañadidoasuhardware.Eneste
entornocadavezmáscerrado,RichardStallman(quetrabajabaenelMIT-MassachusettsInstituteofTechnology-)se
sintióindignadoalcomprobarquecadavezeramásdifícilconseguirelcódigofuentedelosprogramasqueutilizabapara
adaptarlosasusnecesidades,talycomohabíahechohastaentonces.Comoanécdota,elmismoStallmancuentalomucho
queseenfadóaldescubrirquelacompañíaqueleshabíavendidounanuevaimpresoraparaellaboratoriodondetrabajaba
no le quería facilitar el código fuente de los drivers. ¡Él sólo quería modificarlos para que le avisara automáticamente
cuandoseatascabaelpapel!Lacompañíasenegóabsolutamenteaproporcionárselos.
A partir de ese momento Stallman decidió ser consecuente con sus ideales e iniciar un gran proyecto para intentar
abrirotravezelcódigofuentedelosprogramas.Conscientequenopodríaconseguirquelascompañíascedieraneneste
punto,sepropusocrearsupropiosistemaoperativoyaplicacionesiniciandounproyectollamadoGNU(Gee’sNotUNIX
modificadomástardeporGNU’sNotUNIX),añadiéndosealamodadelosnombres/bromasrecursivasdeaqueltiempo.
De especial interés para entender los motivos que llevaron a Stallman a iniciar GNU es su primer manifiesto, el
documentodóndeexplicóatodalacomunidadquéseríaelproyecto,cómoloorientaríayporquéteníaquehacerlo.En
él empezó a describir el concepto de software libre y para qué creía necesario que programadores y desarrolladores de
alrededor delmundocontribuyeranconél.Aunqueenmuchasocasionesseconfundeelconceptodesoftwarelibrecon
eldesoftwaregratuito(eninglés,freetienelosdossignificados),enposterioresdocumentossehadejadomuyclaroque
elsoftwarelibrenodebeporquésergratuito.Debemosentendercomosoftwarelibreprogramasdeloscualespodemos
conseguirsucódigofuente,estudiarlo,modificarloyredistribuirlosinquenosobliguenapagarporello.Loquedebemos
tenerclaroesquesípodemospedireldineroquequeramosporlosprogramasysucódigofuente,elsoportequepodemos
ofrecer a los usuarios, los libros que vendamos o el material que proporcionemos, tal y como muchas compañías que
distribuyenGNU/Linux hacen.Enningúnmomento,pero,podemosobligarquelosusuariosnodistribuyanelsoftware
queleshemosvendido.Éstedebepoderserdistribuidodeformalibre.Esunaformadeentenderelsoftwarediferentea
laqueestamosacostumbrados.EnmuchosdelostextosdelaFSF(FreeSoftwareFoundation)sehablamásdefilosofía
quedeingeniería.Debemosentendertodoestemovimientomáscomounaformadepensarohacerlascosasquecomo
unacompañíadesoftwaremás.
LafilosofíaquesetieneenlaFSFdelsoftwarelodefineconlassiguientescuatrolibertades:
Lalibertad0serefierealalibertaddepoderusarelprogramaparacualquierpropósito.
1
Description:Los autores agradecen a la Fundació per la Universitat Oberta de Catalunya (www.uoc.edu) la finan- ciación de la primera edición de esta Para entender todo el movimiento del software libre debemos situarnos a finales de la década de los sesenta, principios de los setenta. En aquellos tiempos