Table of Contents · Hacking para principiantes Este libro es una colección de tutoriales con...
Transcript of Table of Contents · Hacking para principiantes Este libro es una colección de tutoriales con...
1.1
1.1.1
1.1.2
1.1.3
1.1.4
1.1.5
1.2
1.3
1.3.1
1.3.2
1.3.3
1.3.4
1.3.5
1.3.6
1.3.7
1.3.8
1.3.9
1.4
1.4.1
1.4.2
1.4.3
1.4.4
1.4.5
1.4.6
1.4.7
1.4.8
1.5
1.5.1
1.5.2
TableofContentsTutorialesGNU/Linux
Licencia
Garantía
Agradecimientos
Sobreelautor
Convencionesdeestelibro
Prefacio
Usandolalíneadecomandos
TutorialaprendiendoausarlalíneadecomandosenGNU/Linux
TutorialeditarficherosydirectoriosconlalíneadecomandosenGNU/Linux
TutorialusarfindparabuscararchivosodirectoriosenGNU/Linux
TutorialcomprimirarchivosydirectoriosenGNU/Linux
TutorialcrearenlacesaficherosydirectoriosenGNU/Linux
TutorialusargrepparabuscartextodentrodearchivosenGNU/Linux
Tutorialpararmomentáneamenteunprocesooaplicación
TutorialcerrandooreiniciandoGNU/Linux
TutorialcomodescargarprogramasoarchivosdeinternetconWgetenGNU/Linux
InstalaraplicacionesenGNU/Linux
TutorialcomoinstalarprogramasenGNU/Linux
TutorialcomoinstalarprogramasdesdeelcódigofuenteenGNU/Linux
TutorialinstalaryconfigurarGitenGNU/Linux
TutorialinstalarLXCenGNU/Linux
TutorialinstalarVagrantparausarambientesvirtualesenGNU/Linux
TutorialinstalarservidorLAMPenGNU/Linux
TutorialinstalarAtomemGNU/Linux
TutorialinstalarBracketsenGNU/Linuxparadesarrolloweb
UsaraplicacionesenGNU/Linux
TutorialbásicoVim
Tutorialconvertirpáginaswebapdf
2
1.5.3
1.5.4
1.5.5
1.5.6
1.5.7
1.5.8
1.5.10 1.5.9
1.6
1.6.1
1.6.2
1.6.3
1.6.4
1.6.5
1.6.6
1.6.7
1.6.8
1.6.9
1.6.10
1.6.11
1.6.12
1.6.13
1.6.14
1.6.15
1.6.16
1.6.17
1.6.18
1.7
1.7.1
1.7.2
1.7.3
1.7.4
1.7.5
1.5.11
Tutorialinstalaryusaryoutube-dlparabajarmusica
TutorialcrearimágenesQRdepáginaswebenGNU/Linuxconqrencode
TutorialusarPngquantenLinux
CompresordeimágenesTrimage
TutorialextraerpáginasdearchivospdfconPDFTKenLinux
TutorialuniendoarchivospdfconPDFTKenLinux
TutorialabrirmúltiplesconsolasenunasolaventanaconTmuxenGNU/Linux
TutorialcompartirsesionesSSHconTmuxenGNU/Linux
TutorialabrirmúltiplesconsolasenunasolaventanaconByobuenGNU/Linux
AdministrarGNU/Linux
TutorialquéesrootycomousarloenGNU/Linux
TutorialcomofuncionaelprocesodeinicioenGNU/Linux
TutorialcomofuncionanlosnivelesdeejecuciónenGNU/Linux
TutorialgestionarprocesosenunsistemaoperativoGNU/Linux
TutorialverprogramasinstaladosenGNU/Linux
TutorialconfigurandounsistemaRAIDenGNU/Linux
TutorialcrearoeliminarparticionesenGNU/Linuxconfdisk
TutorialcrearoeliminarunaparticiónswapenGNU/Linux
TutorialformatearparticionesenGNU/Linux
TutorialmontarydesmontarunpendriveusbenGNU/Linux
TutorialMontarparticionesNTFSenGNU/LinuxUbuntu
TutorialmontarparticionesNFSenunaredGNU/Linux
TutorialconfigurarlaredenGNU/Linux
TutorialConfigurarImpresoraenunaredGNU/Linux
TutorialconfigurarusuariosenGNU/Linux
TutorialconfigurargruposdeusuariosenGNU/Linux
TutorialgestionarpermisosyatributosdearchivosenGNU/Linux
TutorialgestionaratributosextendidosdearchivosenGNU/Linux
ResolverproblemasenGNU/Linux
TutorialbuscandoinformacióndelsistemaoperativoenGNU/Linux
TutorialaprendiendoausarunprogramadechatparapedirayudaenLinux
TutorialbuscarayudaconlalíneadecomandosenLinux
TutorialeliminarkernelsantiguosenUbuntuoDebian
Tutorialresolver"GPGerror"usandoapt-getupdateenGNU/Linux
3
1.7.6
1.7.7
1.7.8
1.7.9
1.7.10
1.7.11
1.8
1.8.1
1.8.2
1.8.3
1.8.5
1.8.6
1.8.7
1.8.8
1.8.4
1.9
1.9.1
1.9.2
1.9.3
1.9.4
1.9.5
1.10
1.11
TutorialresolverproblemadeconfiguracióndelidiomaenGNU/Linux
TutorialcerrarprogramasbloqueadosenGNU/Linux
TutorialintroducciónaloslogsdelsistemaGNU/Linux
TutorialusarloslogsdelsistemaGNU/Linuxparadescubrirerrores
TutorialresolverproblemasconsistemasdearchivosenGNU/Linux
Tutorialrecuperararchivoseinformacióndediscosduros,CD-ROMsyDVDsdañados
SeguridadenGNU/Linux
Tutorialrealizarcopiasderespaldo(backup)dearchivosenGNU/Linux
Tutorialhacercopiasderespaldo(backup)dediscosrígidosenGNU/Linux
Tutorialconfiguraruncontafuegos(firewall)enGNU/Linux
Tutorialexaminarsinuestroordenadorestásiendoinvadidoatravésdeunrootkit
Tutorialdescubrirrootkits,backdoors,sniffersymalwareconRKHunterenGNU/Linux
TutorialmonitorearreddeInternetconntopenGNU/Linux
TutorialescaneodepuertosconnmapenGNU/Linux
TutorialusartcpdumpparaanalizarpaquetesderedenGNU/Linux
ProgramarenGNU/Linux
Comocrearunscriptenlalíneadecomando(shellscript)
Tutorialbásicocrontab
ComandosdeiniciodelsistemaoperativoGNU/Linux
VariablesdelsistemaGNU/Linux
TutorialAwkcomocomandoycomolenguajedeprogramación
Bibliografía
AnexoA:Recursos
4
TutorialesGNU/Linux.
Hackingparaprincipiantes
Estelibroesunacoleccióndetutorialesconinstruccionesparalaadministracióndeusuarios,sistemasdearchivos,copiasdebackup,configuracióndehardware,instalacióndesoftware,monitorizaciónderedes,resolucióndeproblemas,seguridad,herramientasyprogramacióndescripts.LaideaesqueseaunafuentedeconsultaparausarcomoreferenciaalahoradeadministrartusistemaoperativoGNU/Linux.
TutorialesGNU/Linux
5
TutorialesGNU/Linux
Hackingparaprincipiantes
MarceloHoracioFortinoPrimeraediciónBarcelona,EspañaSetiembre2014ISBN:978-84-606-7548-8
TutorialesGNU/Linux.HackingparaprincipiantesporMarceloHoracioFortino.
EstaobraestásujetaalalicenciaReconocimiento-CompartirIgual4.0InternacionaldeCreativeCommons.Paraverunacopiadeestalicencia,visitehttp://creativecommons.org/licenses/by-sa/4.0/.
Puedehallarpermisosmásalládelosconcedidosconestalicenciaenhttps://fortinux.com
Todaslasmarcassonpropiedaddesusrespectivosdueños.Linux®esunamarcaregistradadeLinusTorvalds.Ubuntu®esunamarcaregistradadeCanonicalLimited.Google®esunamarcaregistradadeGoogleInc.
Imagendelaportadabasadaen"Manworkingatcomputers"dedear_theophilus:https://openclipart.org/detail/193012/Man%20working%20at%20computers
Licencia
6
GarantíaEstelibrosedistribuyeconlaesperanzadequeseaútil,peroSINNINGUNAGARANTÍA,inclusosinlagarantíaMERCANTILimplícitaosingarantizarlaCONVENIENCIAPARAUNPROPÓSITOPARTICULAR.Elautornoasumeningunaresponsabilidadsiellectorhaceunmalusodelmismo.
Garantía
7
AgradecimientosAAdriana.
Atod@slosquemeenseñaron,principalmentemisamigosymifamilia.
AtodalacomunidaddeSoftwareLibre.
Agradecimientos
8
SobreelautorMarceloHoracioFortinoesunprofesionaldelastecnologíasdelainformaciónconmásde17añosdeexperienciaenlaindustriayserviciosasociados.Trabajócomodiseñadoryprogramadorweb,administradordesistemas,formadorylíderdeproyectos.ActualmenteesconsultordeTI.
HacontribuídoenvariosproyectosdeSoftwareLibrecomoPHPCalendar,UbuntuManual,OpenOffice.OrgyTheDocumentFoundation.
DictóconferenciasytutorialesenvariosCongresosyeventosdeTIenArgentina,Brasil,EspañayUruguay.
En1999,escribióellibro"Internet:Unaaproximaciónasusaplicacionesyusos"editadoenformatoelectrónico.
EscribeademásartículosperiodísticosparapublicacionesgráficasySitiosweb,yeseditordehttp://www.fortinux.com.
Esmiembroactivodelassiguientesasociacionesprofesionales:ICASA,FreeSoftwareFoundation,Hispalinux,yfuepresidenteyfundadordeLibrePlanetBarcelonaydeProfesionalesAsociadosdelaWeb(PAW).
E-mail:[email protected]:@fortinuxGoogle+https://google.com/+marcelofortinoLinkedinhttp://es.linkedin.com/in/marcelofortinoBlog:http://www.fortinux.comGithubhttps://github.com/fortinuxSlideshare.nethttp://www.slideshare.net/fortinuxPlanetaLinuxhttp://planetalinux.org/es/
Sibuscaunformador,conferencistaoconsultorTICconconocimientosdesoftwarelibreydefuenteabiertalopuedecontactarporemail,twitterolinkedin.
Sobreelautor
9
ConvencionesdeestelibroCuandoleasestelibro,verásquealgunaspalabrasestánrepresentadasconfuentesytiposdeletradiferentes.Porejemplo:
comando
LoscomandosenGNU/Linuxserepresentandeestamanera.Esteestiloindicaquepuedesescribirlapalabraofraseenlalíneadecomandosypulsarlateclaintroparainvocarelcomando.
Ctrl+Shift+F3
Estaesunacombinacióndeteclasquetienesqueapretarsimultáneamente.Lasteclassiempreserepresentanencursiva.
-.-
Parapoderrealizarlostutorialessimpredeberástenerunterminalamano.Paraabrirloen:
Debian/Ubuntu:ApretarlasteclasCONTROL+ALT+T.UbuntuUnity:ApretarlateclaSUPER(sueletenereliconodeWindows®diseñado)yelnúmero2.Gnome:IralMenúAplicaciones/Accesorios/Terminal.Xfce:IralMenúAplicaciones/Accesorios/Terminal.Kde:ClicenKickOff/Aplicaciones/Sistema/Terminal.
Convencionesdeestelibro
10
PrefacioBienvenid@saTutorialesGNU/Linux,hackingparaprincipiantes;unacoleccióndetutorialesqueresuelvendudasyproblemastécnicosbásicosrelacionadosconelsoftwareyelhardwareenunsistemaoperativoGNU/Linux.UnlibroidealparausarcomoreferenciaalahoradeadministrartusistemaoperativoGNU/Linux.
Lamayoríadelasdefinicionesde'hacking'enel'jargonfile'delhackerEricS.Raaymond¹estánbasadasprincipalmente"enlaaficiónalotécnicoyenelplacerderesolverproblemassobrepasandoloslímites".
Laideadeestelibroescapturaresaesenciamediantesimplesyprácticostutorialesparaquepuedascomenzarahackeartuordenadorutilizandolalíneadecomandos.
Aquíencontrarásinstruccionesparalaadministracióndeusuarios,sistemasdearchivos,copiasdebackup,configuracióndehardware,instalacióndesoftware,monitorizaciónderedes,resolucióndeproblemas,seguridad,herramientasyunaintroducciónalaprogramacióndescripts.
LostutorialesestánbasadosenlasdistribucionesGNU/LinuxDebian7yUbuntu14.04porlocualparaotrasversionesy/osistemasoperativospuedesernecesariorealizaralgunoscambios.
¹Cómoconvertirseenhackerhttp://www.catb.org/~esr/faqs/hacker-howto.html
Prefacio
11
Usandolalíneadecomandos
Lainterfazdeusuario,comunmentellamadalíneadecomandos(commandlineinterfase-CLIeninglés)esunmétodoquenospermitedarinstruccionesalosprogramasutilizandoórdenesdetexto.
Conellapodemoscrearusuários,editarficheros,automatizartareasmediantearchivosbatchyadministrarnuestrosistemaoperativoGNU/Linux.
TutorialaprendiendoausarlalíneadecomandosenGNU/Linux
TutorialeditarficherosydirectoriosconlalíneadecomandosenGNU/Linux
TutorialusarfindparabuscarficherosodirectoriosenGNU/Linux
TutorialcomprimirficherosydirectoriosenGNU/Linux
TutorialcrearenlacesaficherosydirectoriosenGNU/Linux
TutorialusargrepparabuscartextodentrodeficherosenGNU/Linux
Tutorialpararmomentáneamenteunprocesooaplicación
TutorialcerrandooreiniciandoGNU/Linux
TutorialcomodescargarprogramasoficherosdeinternetconWgetenGNU/Linux
Palabrasclaves:interfazdeusuario,líneadecomandos,CLI,commandline,shell,terminal,editarficheros,comandofind,comprimirficheros,gzip,tar,enlaces,links,Wget,descargarprogramas,GNU,Linux.
Usandolalíneadecomandos
12
Enelprincipio...fuelalíneadecomandos.NealStephenson
Usandolalíneadecomandos
13
TutorialaprendiendoausarlalíneadecomandosenGNU/LinuxEnestetutorialaprenderemosdesde0autilizarlalíneadecomandoenGNU/Linux
Palabrasclaves:líneadecomandos,commandline,shell,bash,date,pwd,cd,ls,less,cat.
Abrimosunterminalyescribimosnuestroprimercomando:
date
Parasaberenquedirectorioestamos:
pwd
Paracambiardedirectorioutilizamoselcomandocd.Porejemploescribiendoelnombredeldirectorio:
cd/usr
Paracambiaraldirectoriosuperiorleagregamosunespacioydospuntosseguidos:
cd..
Paracambiaraldirectorioprincipal(home):
cd
Paraverunlistadodelcontenidodeldirectorioactivo:
ls
LoscomandosenLinuxsuelenteneropciones(quepodemosagrupar,porej.-ld)yargumentos.Enestecaso,paraverlosdetallesdeldirectorio/usrutilizamoslasopciones-l(descripciónlarga)yd(directorio):
ls-ld/usr
TutorialaprendiendoausarlalíneadecomandosenGNU/Linux
14
Encambiosiqueremosverelcontenido:
ls-l/usr
Paraverloquehaydentrodeunarchivopodemosusarelcomandoless:
lessarchivo.txt
Salimosapretandolaletraqdelteclado.
Otambiénelcomandocat:
catarchivo.txt
Uncompletolistadodecomandolopodeisencontraren:http://cb.vu/unixtoolbox.xhtml(idiomainglés)
TutorialaprendiendoausarlalíneadecomandosenGNU/Linux
15
TutorialeditarficherosydirectoriosconlalíneadecomandosenGNU/LinuxEnestetutorialvamosautilizarlalíneadecomandoenGNU/Linuxparatrabajarconficherosydirectorios,aprendiendoacopiar,mover,borraryeditarlosmismos.
Palabrasclaves:líneadecomandos,commandline,mkdir,cp,mv,rm,cat.
Comandos:
mkdir–Creadirectorioscp–Copiaarchivosydirectorios.mv–Mueve/renombraarchivosydirectorios.rm–Borraarchivosydirectorios.
Comenzamos:
Creamosundirectorioquellamaremos“pruebas”:
mkdirpruebas
Ahoranosmovemosaldirectoriocreado:
cdpruebas
Creamosunarchivollamadoarchivo-de-pruebas.txt(salimosconctrl+D):
cat>archivo-de-pruebas.txt
Creamosotrodirectoriollamadopruebas2:
mkdirpruebas2
Copiamoselcparchivo-de-pruebas.txtaldirectoriopruebas2:
cparchivo-de-pruebas.txtpruebas2
Cambiamosaldirectoriopruebas2ycomprobamossielarchivohasidocopiadocorrectamente:
TutorialeditarficherosydirectoriosconlalíneadecomandosenGNU/Linux
16
cdpruebas2ls
Volvemosaldirectorio“pruebas”yallícopiamoseldirectorio“pruebas2″como“pruebas3″(-rsirveparacopiarloquehaydentrodeesedirectorio):
cd..cp-rpruebas2pruebas3
Usamosmvparacambiarelnombrealarchivo-de-pruebas.txt:
mvarchivo-de-pruebas.txtarchivo-de-pruebas2.txt
Usamosmvparamoverelarchivo-de-pruebas2.txtaldirectoriopruebas2:
mvarchivo-de-pruebas2.txtpruebas2
Vamosaldirectorio“pruebas2″yusamoselcomandormparaborrar“archivo-de-pruebas2″(-isolicitaunaconfirmaciónantesdehacerlo,conyaceptamos):
cdpruebas2rm-iarchivo-de-pruebas2.txt
rm:borrararchivocomumvacio“archivo-de-pruebas2.txt”?
Siqueremosborrarundirectorioencambio,tenemosqueusarlaopción-r(confirmarsiemprecony):
rm-irpruebas3
rm-ir../pruebas3rm:entraraldirectorio“../pruebas3”?
rm:borrararchivocomumvacio“../pruebas3/archivo-de-pruebas.txt”?
rm:borrardirectorio“../pruebas3”?
Nota:laopción-inoesobligatoriaperoavecesesconvenienteutilizarla,especialmenteconelcomandorm
Nota2:LoscomandosenLinuxsuelenteneropciones(quepodemosagrupar:-lt)yargumentos.Comoejemplo,paraverlosdetallesdeldirectorio/pruebasutilizamoslasopciones-l(descripciónlarga)yt(time:ordenadoporúltimosmodificados):
TutorialeditarficherosydirectoriosconlalíneadecomandosenGNU/Linux
17
ls-lt/pruebas
TutorialeditarficherosydirectoriosconlalíneadecomandosenGNU/Linux
18
TutorialusarfindparabuscararchivosodirectoriosenGNU/LinuxEnestetutorialveremoscómopodemosbuscararchivosodirectoriosconelcomandofindenGNU/Linux
Palabrasclaves:líneadecomandos,commandline,find,buscararchivos,gnu,linux.
Parabuscareneldirectorioroot(/)archivos(-type)conmásde9megas(-size):
find/-typef-size+9M
Parabuscartodoslosarchivosconextensión.txt(-iname)abiertos(-atime)enlosúltimosdosdías:
find/-iname'*.txt'-atime-2
Parabuscartodoslosarchivosmodificadosocreados(-mtime)enlosúltimosdosdías:
find/-typef-mtime-2
Parabuscararchivosconpermisos(-perm)deescritura,lecturayejecución:
find/-typef-perm0777
Parabuscarunarchivodenombretexto.txteneldirectorioactivoyunnivelmásabajo(subdirectorio):
find-maxdepth2-nametexto.txt
Másejemplosen:http://blog.desdelinux.net/con-el-terminal-ejemplos-con-el-comando-find/
TutorialusarfindparabuscararchivosodirectoriosenGNU/Linux
19
TutorialcomprimirarchivosydirectoriosenGNU/LinuxEnestetutorialveremoscomopodemoscomprimirarchivosydirectoriosenGNU/Linuxdesdelalíneadecomandos.
Palabrasclaves:líneadecomandos,commandline,comprimir,gzip,bzip2,xz,tar.
Paracomprimirunarchivoodirectoriousaremoselcomandotarjuntoconunaherramientadecompresióntipogzip(lamásantigua),bzip2(probablementelamásusada)yxz(lamásnuevaygeneralmentecommejorratiodecompresión).
Comenzamoscomprimiendocongzip:Paraellovamosaldirectoriodondeestánlosarchivosquequeremoscomprimircongzipyescribimos:
tarczfarchivo-comprimido.tar.gznombre-del-archivo1nombre-del-archivo2
Siqueremoscomprimirconbzip2:
tarcjfarchivo-comprimido.tar.bz2nombre-del-archivo1nombre-del-archivo2
Ysiqueremoscomprimirconxz:
tarcJfarchivo-comprimido.tar.xznombre-del-archivo1nombre-del-archivo2
Siqueremoscomprimirtodoundirectorio:
tarczfarchivo-comprimido.tar.gznombre-del-directorio
Paralistarelcontenidodeunarchivotar:
tartvfarchivo-comprimido.tar.gz
Paradescomprimirunarchivotar:
tar-xvfarchivo-comprimido.tar.gz
Siqueremosdescomprimirelarchivotarenotrodirectorio:
TutorialcomprimirarchivosydirectoriosenGNU/Linux
20
tar-xvfarchivo-comprimido.tar.gz-C/nombre-del-directorio/
Paracomprimirunarchivogzcongzip:
gzip-9nombre-del-archivo1
Paradescomprimirunarchivogzcongzip:
gzip-darchivo-comprimido.gz
Unapáginadeayuda:http://linuxzone.es/metodos-de-compresion-y-descompresion-en-linux/
TutorialcomprimirarchivosydirectoriosenGNU/Linux
21
TutorialcrearenlacesaficherosydirectoriosenGNU/LinuxEnestetutorialaprenderemosautilizarlalíneadecomandoenGNU/Linuxparacrearenlacessimbólicosaficherosydirectorios.
Palabrasclaves:líneadecomandos,commandline,ln,enlaces,links.
Elcomandoln-screaenlacessimbólicosaficherosydirectorios.
Comenzamoscreandoundirectorioquellamaremos“pruebas”:
mkdirpruebas
Ahoranosmovemosaldirectoriocreado:
cdpruebas
Creamosunarchivollamadoarchivo-de-pruebas.txt(salimosconctrl+D):
cat>archivo-de-pruebas.txt
Creamosotrodirectoriollamadopruebas2:
mkdirpruebas2
Creamosunenlacealdirectoriopruebas2:
ln-spruebas2pruebas2enlace
Locomprobamosviendoenlaúltimalíneaelenlaceanuestrodirectorio:
ls-l
total4
TutorialcrearenlacesaficherosydirectoriosenGNU/Linux
22
-rw-rw-r--1usuariousuario0Nov612:08archivo-de-pruebas.txtdrwxrwxr-x2usuariousuario4096Nov611:09pruebas2lrwxrwxrwx1usuariousuario8Nov612:17pruebas2enlace->pruebas2
TutorialcrearenlacesaficherosydirectoriosenGNU/Linux
23
TutorialusargrepparabuscartextodentrodearchivosenGNU/LinuxGrepesuncomandomuyútilquepermitebuscartexto(unaovariaspalabras)dentrodeunoomásarchivos.
Palabrasclaves:líneadecomandos,commandline,grep,buscartexto,gnu,linux.
Porejemplo,buscamoslapalabra"texto"dentrodetodoslosarchivosdetexto(.txt)quetengamoseneldirectorio"home":
grep"texto"/home/*.txt
Siqueremosbuscarenesedirectorioyenlosqueestándentrodeél:
grep-r"texto"/home/*.txt
Buscarenesedirectorio,enlosqueestándentrodeélyencualquiertipodearchivo:
grep-r"texto"/home/
Buscarlapalabra"texto"dentrodeunarchivoignorandodistinciónentremayúsculasyminúsculas:
grep-i"texto"nombre-del-archivo
Buscarcomentariosdentrodeunarchivo:
grep^#nombre-del-archivo
MásejemplosenlaWikipedia:https://es.wikipedia.org/wiki/Grep
DocumentaciónoficialGNU:http://www.gnu.org/software/grep/manual/grep.html(idiomainglés).
TutorialusargrepparabuscartextodentrodearchivosenGNU/Linux
24
TutorialusargrepparabuscartextodentrodearchivosenGNU/Linux
25
TutorialpararmomentáneamenteunprocesooaplicaciónEnestetutorialveremoscomopararenGNU/Linuxlaejecucióndeumprocesoycomoretornaralmismo
Palabrasclaves:líneadecomandos,commandline,jobs,fg,PID,bg,gnu,linux.
Parapararunprocesobastapresionarlasteclasctrl+z.Mientraseseprogramaestáparadoenlamemorianosotrospodemosusarotroscomandosoprogramas.ParapoderejecutarlonuevamenteusaremoselcomandojobsparasaberelnúmeroPIDdelmismo:
jobs
Elcomandojobsmuestralosprocesosqueestánparadosorodandoensegundoplano.fgencambioseráelcomandoutilizadoparatraerloalprimerplanonuevamente,juntoconelnúmerodePID:
fg[número]
SifgesusadosinelnúmeroPIDtraeráelúltimoprogramainterrumpido.
bgporotraparte,lepermiteaunprogramaqueestárodandoenprimerplanooparadopasararodarensegundoplano.Primerointerrumpimossuejecuciónconctrl+z,yluegousamoselcomandobgparainiciarlaejecuciónensegundoplano.
bg[número]
Tutorialpararmomentáneamenteunprocesooaplicación
26
TutorialcerrandooreiniciandoGNU/LinuxEnestetutorialveremoscómopodemoscerraroreiniciarelsistemaoperativoGNU/Linuxdesdelalíneadecomandos
Palabrasclaves:líneadecomandos,commandline,cerrar,reiniciar,gnu,linux,shutdown.
ParareiniciarGNU/Linuxabrimosunterminalyescribimos:
sudoshutdown-rnow
Nospedirálacontraseñayluegoiniciaráelprocesoparareiniciar.
Paracarrarelsistemaoperativoencambioes-h(halteninglés):
sudoshutdown-hnow
Siqueremoscerrarloaunahoraespecífica,porejemploalas10am:
sudoshutdown-h10:00
Siporalgúnmotivoelsistemasehabloqueado,podemoscerrarlodesdeeltecladomanteniendoapretadalateclaalt,yapretandolassiguentesteclasenestasecuencia:PrintScreen+r+e+i+s+u+b
Másinformaciónen:http://es.wikipedia.org/wiki/REInicia_SUBnormal
TutorialcerrandooreiniciandoGNU/Linux
27
TutorialcomodescargarprogramasoarchivosdeinternetconWgetenGNU/LinuxWgetesunaherramientadelíneadecomandosmuyútilalahoradedescargarprogramasoarchivosdeInternet.Vamosavercómofuncionaconejemplos.
Palabrasclaves:Wget,descargarprogramas,líneadecomandos.
Paradescargarlaimagen.isodeUbuntu14.04abrimosunterminalyescribimos:
wgethttp://releases.ubuntu.com/14.04/ubuntu-14.04-desktop-amd64.iso
Encambiosiqueremosguardarlaimagen.isoconotronombre:
wget-Oubuntu_amd64.isohttp://releases.ubuntu.com/14.04/ubuntu-14.04-desktop-amd64.iso
Parareiniciarunadescargainterrumpida:
wget-cubuntu_amd64.isohttp://releases.ubuntu.com/14.04/ubuntu-14.04-desktop-amd64.iso
Parapasarasegundoplanoladescargayseguirtrabajandoenesaterminal:
wget-bubuntu_amd64.isohttp://releases.ubuntu.com/14.04/ubuntu-14.04-desktop-amd64.iso
Másinformaciónen:http://manpages.ubuntu.com/manpages/trusty/man1/wget.1.html(idiomainglés).
TutorialcomodescargarprogramasoarchivosdeinternetconWgetenGNU/Linux
28
InstalandoaplicacionesenGNU/Linux
InstalaraplicacionesenGNU/Linuxsueleserbiensimple.Enestecapítuloveremosunaintroducciónalainstalacióndeprogramas;yluegocomoinstalarherramientasdeprogramaciónyadministracióndesistemas.
TutorialcomoinstalarprogramasenGNU/Linux
TutorialcomoinstalarprogramasdesdeelcódigofuenteenGNU/Linux
TutorialinstalaryconfigurarGitenGNU/Linux
TutorialinstalarLXCenGNU/Linux
TutorialinstalarVagrantparausarambientesvirtualesenGNU/Linux
TutorialinstalarservidorLAMPenGNU/Linux
TutorialinstalarAtomemGNU/Linux
TutorialinstalarBracketsenGNU/Linuxparadesarrolloweb
Palabrasclaves:apt-get,ppa,.deb,repositorio,códigofuente,instalar.tar.gz,desinstalar,uninstall,make,install,git,cvs,lxc,lxc-containers,vagrant,ambientesvirtuales,tasksel,meta-paquetes,LAMP,servidor,atom,build-essential,git,curl,node,nodejs,Brackets,editordetextos,HTML,CSS,javascript,desarrolloweb.
InstalaraplicacionesenGNU/Linux
29
TutorialcomoinstalarprogramasenGNU/LinuxEnestetutorialveremoscomopodemosinstalarprogramasenGNU/Linux
Palabrasclaves:instalar,desinstalar,install,uninstall,apt-get,ppa,.deb,repositorio,sources.list.
Lamayoríadelasveces,losprogramasquequeremosinstalarseencuentranenlosrepositoriosdeladistribuciónGNU/Linuxqueestamosusando.Esimportante,siempreantesdeinstalarlos,actualizarlalistadeprogramasdelosrepositoriosabriendounterminalyescribiendo:
sudoapt-getupdate
Paraactualizarlosprogramasinstalados:
sudoapt-getupgrade
Parainstalarunprogramaescribimos:
sudoapt-getinstallnombre_del_programa
Paraejecutarlounavezinstalado,escribimosenlalíneadecomando:
nombre_del_programa
SielprogramanoestáenlosrepositoriosyesunPPA(personalpackagearchive),primerotenemosqueagregarlafuentedelarchivoanuestralistadeprogramas:
sudo-add-apt-repositoryppa:programador/nombre_del_programa_ppa
Luegoactualizamoslalistayloinstalamos:
sudoapt-getupdate
sudoapt-getinstallnombre_del_programa_ppa
TutorialcomoinstalarprogramasenGNU/Linux
30
Paraeditarlalistadeprogramasdirectamente:
sudovim/etc/apt/sources.list
Paradesinstalarunprograma:
sudoapt-getremovenombre_del_programa
Pararepararunprograma:
sudodpkg-reconfigurenombre_del_programa
Parabuscarsiunprogramaestáenlalistadeprogramas:
apt-cachesearchnombre_del_programa
ParainstalarunprogramadeDebian(laextensióndelarchivoes.deb):
sudodpkg-inombre_del_programa.deb
Paraeliminarlo:
sudodpkg-rnombre_del_programa.deb
Másinformaciónen:http://www.ubuntu-guia.com/2014/04/software-y-actualizaciones-en-ubuntu.html#
TutorialcomoinstalarprogramasenGNU/Linux
31
TutorialcomoinstalarprogramasdesdeelcódigofuenteenGNU/LinuxSibienlamayoríadelasvecesquequeremosinstalarunprogramaloencontramosenlosrepositoriosdeladistribuciónGNU/Linuxqueestamosusando,sepuededarelcasodetenerqueinstalarloconelcódigofuentedelmismo.EnestetutorialveremoscómoinstalarycompilarprogramasenGNU/Linux
Palabrasclaves:códigofuente,instalar.tar.gz,make,install.
PrimerovamosainstalarlasherramientasdedesarrollodeGNU/Linuxabriendounterminalyescribiendo:
sudoapt-getinstallbuild-essentiallinux-headers-$(uname-r)
LuegodescargamosdeInternetelarchivoquequeremosinstalaryloextraemosescribiendo:
tarxvfarchivo_fuente.tar.gz
Ahoravamosaldirectorioquesehacreadoconlosarchivosdelprograma:
cd/directorio_archivo_fuente
Configuramoselprograma:
./configure
Loconstruimos:
make
Finalmenteloinstalamos:
sudomakeinstall
Importante:Sitenemosunerrorconlospermisosdearchivo,lopodemossolucionarcon:
TutorialcomoinstalarprogramasdesdeelcódigofuenteenGNU/Linux
32
sudochmod+xconfigure
Másinformaciónen:http://ubuntuguide.org/wiki/Ubuntu_Trusty_Packages_and_Repositories(idiomainglés)
TutorialcomoinstalarprogramasdesdeelcódigofuenteenGNU/Linux
33
TutorialinstalaryconfigurarGitenGNU/LinuxEnestetutorialveremoscómoinstalaryconfigurarGit,unsistemadecontroldeversionesdistribuido(CVS),creadoporLinusTorvaldsparaeldesarrollodelkernelLinux.
Palabrasclaves:Git,CVS.
Primeroabrimosunterminalyactualizamoslalistadepaquetes:
sudoapt-getupdatesudoapt-getupgrade
AhorainstalamosGit:
sudoapt-getinstallgit
Configuramosnuestronombredeusuario:
gitconfig--globaluser.name"usuario"
Configuramosnuestradireccióndee-mail:
gitconfig--globaluser.email"[email protected]"
CreamosunallaveSSH:
ssh-keygen-trsa-C"[email protected]"
CopiamoslaclaveSSHennuestracuentaenGithttps://github.com/settings/ssh:
cat~/.ssh/id_rsa.pub
Controlamossiestacorrecta:
TutorialinstalaryconfigurarGitenGNU/Linux
34
RecibiremosunmensajediciendoqueautenticamosnuestracuentaperoqueGitnoproveeaccesoshell.
UnsencillotutorialparasabercomousarGitloencontrareisen:https://github.com/fortinux/ejemplos-git
Másinformaciónen:https://help.ubuntu.com/lts/serverguide/git.html(idiomainglés)
TutorialinstalaryconfigurarGitenGNU/Linux
35
TutorialinstalarLXCenGNU/LinuxElobjetivodeLXC(LinuxContainers)escrearunambientelomáspróximoposibleaunainstalaciónestándardeGNU/Linuxperosinprecisarunkernelseparado.
Palabrasclaves:lxc,lxc-containers.
Primeroinstalamoslxc:
sudoapt-getinstalllxc
Confirmamossielkernelsoportalxc-containers:
lxc-checkconfig
Creamoselprimercontainer:
sudolxc-create-ncontainer-test-tubuntu
Elusuáriopredeterminadoes"ubuntu"conlaclave"ubuntu"yparaserrootdentrodelcontainerusamossudo.
Elcontainerestáalojadoen/var/lib/lxc/ysusistemaraizestáen/var/lib/lxc//rootfs.
ParaverunalistadeLXCcontainersennuestrosistema:
sudolxc-ls--fancy
Parainiciaruncontainer:
lxc-start-ntest-container-d
Paraloguearseenelcontainer:
lxc-console-ntest-container
Unavezdentro,siqueremossalirdelcontainerescribimos:
sudopoweroff
TutorialinstalarLXCenGNU/Linux
36
Parapararelcontainerdesdefueradelmismo:
lxc-stop-ntest-container
SiqueremosentrarporSSHalcontainerprimeroaveriguamossuIP:
sudolcx-info-ntest-container
yluegoentramoscon:
sshubuntu@<númerodelaIP>
Paraeliminarelcontainer:
lxc-destroy-ntest-container
Paraqueelcontainerseinicieautomáticamentepodemoshacerunenlacesimbólico:
ln-s/var/lib/lxc/test-container/config/etc/lxc/auto/test-container.conf
Másinformaciónen:https://linuxcontainers.org/(idiomainglés)
TutorialinstalarLXCenGNU/Linux
37
TutorialinstalarVagrantparausarambientesvirtualesenGNU/LinuxEnestetutorialveremoscomoinstalaryusarVagrant,unprogramaquenospermiteconfiguraryusarambientesvirtuales.
Palabrasclaves:ambientevirtual,Vagrant,Virtualbox,máquinavirtual,virtualmachine.
ParapoderusarVagrantprimeramentetendremosqueinstalarVirtualboxoVMware.Enestecasoinstalaremoselprimero:
sudoapt-getupdate
sudoapt-getinstallvirtualboxdkms
AhorainstalamosVagrant:
sudoapt-get-yinstallvagrant
DescargamoslossistemasoperativosUbuntu12.04:
vagrantboxaddprecise32http://files.vagrantup.com/precise32.box
YUbuntu14.04:
vagrantboxaddubuntu/trusty64https://vagrantcloud.com/ubuntu/boxes/trusty64
LuegoqueVagrantestáinstaladoyyatenemosennuestroordenadorlascajas(boxes),vamosacrearnuestraprimeramáquinavirtualUbuntu14.04.Primerocreamosundirectorioparaellaynosmovemosallí:
mkdirvagrant-ubuntu
cdvagrant-ubuntu
Creamoselarchivodeconfiguracióndevagrant:
vagrantinit
TutorialinstalarVagrantparausarambientesvirtualesenGNU/Linux
38
Editamoslalíneaconfig.vm.box="base"porconfig.vm.box="ubuntu/trusty64"deesearchivo,denominadoVagrantfileparaqueVagrantbusqueelboxdeUbuntu14.04quedescargamosanteriormente:
sudovimVagrantfile
Ahorainiciamoslamáquinavirtual:
vagrantup
Ynosconectamosaellaporssh:
vagrantssh
Parasalir:
exit
Paraapagarla:
vagranthalt
Paraeliminarlamáquinavirtual:
vagrantdestroy
Másinformaciónen:https://www.vagrantup.com/(idiomainglés).UnlistadodeVagrantbooxes:https://vagrantcloud.com/boxes/search
TutorialinstalarVagrantparausarambientesvirtualesenGNU/Linux
39
TutorialinstalarservidorLAMPenGNU/LinuxEnestetutorialveremoscomopodemosusarTaskselparainstalarApacheserver,MySQLePHPenGNU/LinuxUbuntuoDebian
Palabrasclaves:tasksel,meta-paquetes,LAMP,servidor,server.
Taskselesunaherramientaqueinstalavariasaplicacionesjuntas,similaralosmeta-paquetes.
Abrimosunterminalyescribimos:
sudoapt-getinstalltasksel
Ejecutamostasksel:
sudotasksel
EnlaventanaseleccionamosLAMPserverutilizandolabarraespaciadorayaceptamos.CuandocomienzeainstalarMySQLpediráunaclave,inventamosunaylaintroducimos.
Unavezfinalizadalainstalación,abrimoselnavegadoryescribimoshttp://127.0.0.1óhttp://localhost.Apareceráelmensaje"itworks"delservidorApache.
TutorialinstalarservidorLAMPenGNU/Linux
40
TutorialinstalarAtomemGNU/LinuxEnestetutorialveremoscómoinstalarAtomenGNU/Linux.
Palabrasclaves:atom,editordetexto,build-essential,git,curl,node,nodejs.
Atomeseleditordetexto"hackeable"deGitHub,totalmentebasadoentecnologíasweb.
Parapoderinstalarlocomenzamosconlasdependenciasbásicas:
sudoapt-getupdatesudoapt-getupgradesudoapt-getinstallbuild-essentialgitlibgnome-keyring-devfakeroot
Tambiéninstalaremosnode.jsyaqueAtomdependedeesteentornodeprogramaciónenjavascript:
curl-sLhttps://deb.nodesource.com/setup|sudobash-sudoapt-getinstall-ynodejs
ParasaberlaversióndeNode.js:
node-v
Node.jsinstalaránpmautomáticamente,paraconfigurarlo:
npmconfigsetpython/usr/bin/python2-g
ParainstalarAtomabrimosunterminalyclonamoselcódigodeGit:
gitclonehttps://github.com/atom/atom
CambiamosaldirectoriodeAtom:
cdatomgitfetch-pgitcheckout$(gitdescribe--tags`gitrev-list--tags--max-count=1`)
ConstruimosAtom:
TutorialinstalarAtomemGNU/Linux
41
script/build
AhorayapodemosejecutarAtom.Otraopciónescrearunarchivoejecutable.deb,lohacemosconelsiguientecomando:
script/gruntmkdeb
Másinformaciónen:
http://nodejs.org/(idiomainglés)
https://atom.io/(idiomainglés)
TutorialinstalarAtomemGNU/Linux
42
TutorialinstalarBracketsenGNU/LinuxparadesarrollowebEnestetutorialveremoscómoinstalaryconfigurarBrackets,uneditordetextosdefuenteabierta(opensource)desarrolladoporAdobeorientadoalaprogramaciónweb.ConélsepuedeeditarHTML,CSSyjavascript,entreotroslenguajesutilizadosenlaweb.
Palabrasclaves:Brackets,editordetextos,HTML,CSS,javascript,desarrolloweb.
ParainstalarloprimerolodescargamosdelrepositoriodeAdobeenGit:
wgethttps://github.com/adobe/brackets/releases/download/release-0.44/Brackets.Release.0.44.64-bit.deb
Loinstalamoscon:
sudodpkg-iBrackets.Release.0.44.64-bit.deb
Parapoderabrirlo,enlaterminalescribimos:
brackets
Másinformaciónenhttps://github.com/adobe/brackets(idiomainglés)yenhttp://brackets.io/(idiomainglés)
TutorialinstalarBracketsenGNU/Linuxparadesarrolloweb
43
UsandoaplicacionesenGNU/Linux
TutorialbásicoVim
Tutorialconvertirpáginaswebapdf
Tutorialinstalaryusaryoutube-dlparabajarmusica
TutorialcrearimágenesQRdepáginaswebenGNU/Linuxconqrencode
TutorialusarPngquantenGNU/Linux
CompresordeimágenesTrimage
TutorialextraerpáginasdearchivospdfconPDFTKenGNU/Linux
TutorialuniendoarchivospdfconPDFTKenGNU/Linux
TutorialabrirmúltiplesconsolasenunasolaventanaconTmuxenGNU/Linux
TutorialcompartirsesionesSSHconTmuxenGNU/Linux
TutorialabrirmúltiplesconsolasenunasolaventanaconByobuenGNU/Linux
Palabrasclaves:editarachivos,vim,cutycapt,convertirhtmlaimagen,htmlapdf,youtube-dl,bajarmúsica,convertirvideoaaudio,videoamp3,imagenQR,qrencode,pngquant,trimage,comprimirimágenes,pdftk,editarpdf,tmux,múltiplesconsolas,terminalmultiplexer,compartirsesiones,sshcontmux,byobu.
UsaraplicacionesenGNU/Linux
44
UsaraplicacionesenGNU/Linux
45
TutorialbásicoVimEnestetutorialveremoscomopodemosusarelfamosoeditorVimenGNU/Linuxparaeditarunarchivo
Nota:Esteesuntutorialmuybásico.Enlasreferenciasencontrareisinteresantesenlacesparaprofundizarvuestrosconocimientos
Palabrasclaves:Vim,editararchivo,líneadecomandos,commandline.
Abrimosunterminalyescribimos:
vimmi_primer_archivo.txt
Seospresentaráunapantallatotalmenteenblanco.Parapoderescribirapretamoslateclai(inserteninglés)yescribimos
"EsteesmiprimerarchivoenVim"
Conlateclaintropasamosalasegundalíneayescribimos
"Estaeslasegundalínea"
Vimtiene2modosdetrabajo:Inserción(teclai)quesirveparaediciónyNormal(teclaescape)quesirveparanavegarporeltexto.
Entoncesparasalirapretamoslateclaescapeyparamovernosdentrodeldocumentousamoslasteclas:
khlj
Estonospermitesubir,iralaizquierda,iraladerechaybajarrespectivamentedentrodeldocumento.
Finalmenteparasalirguardandoloscambiosescribimos:
:wq!
TutorialbásicoVim
46
wesdeescribir(writeeninglés)qessalir(quiteninglés)yconesaordenledijimosaVimdeguardarloscambiosysalir.Parasalirsinguardarloscambios:
:q!
Ahorasisabeisinglésossugieroquehagaisunexcelentetutorialinteractivoqueencontrareisen:
http://www.openvim.com/tutorial.html/(idiomainglés)
TutorialbásicoVim
47
TutorialconvertirpáginaswebapdfCutyCaptesunautilidaddelíneadecomandoquecapturaunapáginawebylaconvierteaunaimagenodocumentoconformatodearchivoSVG,PDF,PS,PNG,JPEG,TIFF,GIF,óBMP.
Palabrasclaves:cutycapt,convertirhtmlaimagen,htmlapdf.
EnGNU/LinuxUbuntulainstalamoscon:
sudoapt-getinstallcutycapt
Parausarla,desdeelterminalescribimos:
cutycapt--url=http://wwww.fortinux.com--out=nombre-archivo.png
Estonoscrearáelarchivonombre-archivo.pngconlaimagendetodalapáginaweb.
CutyCapt:http://cutycapt.sourceforge.net/(idiomainglés)
OtrasopcionesqueencontrareisenInternet:http://snapito.com(idiomainglés)http://convertwebpage.com/(idiomainglés)
Tutorialconvertirpáginaswebapdf
48
Tutorialinstalaryusaryoutube-dlparabajarmusicayoutube-dlesunapequeñaaplicacióndelíneadecomandoquesirveparabajarvideosdeYouTube.comydealgunosotrossitios.
Palabrasclaves:youtube-dl,convertirvideoaaudio,videoamp3.
Primeroinstalamosdependenciasparaconvertirvideoamp3:
sudoapt-getinstall-ylibav-toolssudoapt-getinstallffmpeg
Instalamosyoutube-dl:
sudocurlhttps://yt-dl.org/downloads/2014.10.15/youtube-dl-o/usr/local/bin/youtube-dl
Damospermisosalnuevodirectorio:
sudochmoda+x/usr/local/bin/youtube-dl
Descargamosnuestraprimerarchivomp3:
youtube-dl-t--extract-audio--audio-formatmp3http://www.youtube.com/watch?v=8ptfyhBjXj8
Másinformaciónen:http://rg3.github.io/youtube-dl/(idiomainglés)
Tutorialinstalaryusaryoutube-dlparabajarmusica
49
TutorialcrearimágenesQRdepáginaswebenGNU/LinuxconqrencodeQrencodeesunautilidadquepermitegenerarimagenesQRdeunapáginaweb
Palabrasclaves:qrencode,crearimagenQR.
Primeramentevamosainstalarlautilidadylosejemplosdeayuda:
aptitudeinstallqrencodeapt-getinstalllibdecodeqr-examples
ParacrearunaimagenQRescribimoslosiguiente:
qrencode-s6"http://www.fortinux.com/"-ofortinux-qr.png
endonde:-o=nombreimagen.png-s=tamañodelaimagen""=enlaceotextoconmensajequedeseemosescribir
Paraconocerotrosparámetrosausarpodemosconsultarlaayuda:
manqrencode
ParaleercódigoQRprimeronosubicamoseneldirectoriodondeseencuentraelarchivo,luegoabrimoslaconsolayescribimoslasiguientelineadecodigo:
libdecodeqr-simpletestfortinux-qr.png
Másinformaciónen:http://manpages.ubuntu.com/manpages/trusty/man1/qrencode.1.html(idiomainglés)
TutorialcrearimágenesQRdepáginaswebenGNU/Linuxconqrencode
50
TutorialusarPngquantenLinuxEnestetutorialaprenderemosausarpngquantparareducireltamañodeimágenes.pngenLinux.Especialmenteútilparadiseñadores/programadoresqueprecisanoptimizarimágenesparaunsitiowebojuegodePlayStation.
Palabrasclaves:pngquant,reducirtamañoimagen,diseñoweb,webdesign,sitioweb.
Loprimeroserádescargarelutilitariodesdehttp://www.pngquant.org/releases.html.Abrimosunterminal,vamosaldirectoriodondeestáelarchivoyescribimosnuestroprimercomando:
sudodpkg-ipngquant_version_del_archivo.deb
Estecomandocrearáundirectorio“pornel-pngquant-version_del_archivo”.Vamosdentrodelmismoyescribimosparainstalarelutilitario:
sudomakeinstall
Unavezinstalado,parausarlohayqueiraldirectoriodondeestálaimagenyescribir:
pngquantnombre_de_la_imagen.png
Sidentrodeldirectoriohayvariasimágenespodemosutilizar:
pngquant*.png
Pngquantcrearálosarchivosoptimizadosconlaterminacióndelnombredeellos“-fs8.png”,dejandolosoriginalesintactos.
Paravermásopciones,podeisvisitar:http://www.pngquant.org(idiomainglés)ólapáginaweb:http://www.github.com/pornel/pngquant(idiomainglés)
TutorialusarPngquantenLinux
51
CompresordeimágenesTrimageUnaherramientamultiplataformaparaoptimizararchivosPNGyJPG.
Inspiradaen“imageoptim”:http://imageoptim.pornel.net/,TrimageesunaherramientamultiplataformaqueoptimizaarchivosPNGyJPGutilizandoparaellolosutilitarios“Optipng”:http://optipng.sourceforge.net,“Advpng”:http://advancemame.sourceforge.net/comp-readme.htmly“Jpegoptim”:http://www.kokkonen.net/tjko/projects.html#jpegoptim,dependiendodeltipodearchivo(PNGoJPG).
Sepuedeutilizardesdelalíneadecomandosoconunasimpleinterfazgráficacreadaporelautor.
Palabrasclaves:trimage,compresordeimagen,diseñoweb.
ParainstalarlaenUbuntubastaabrirunterminalyejecutar:
sudoapt-getinstalltrimage
Lapáginadelautor:http://trimage.org/(idiomainglés)
CompresordeimágenesTrimage
52
TutorialextraerpáginasdearchivospdfconPDFTKenLinuxPDFTK(PDFToolkit)esunaaplicaciónmuysimplequepermitemanipulararchivosconextensiónpdf.Paravertodaslasposibilidadesdelprogramaospasoelsitioweboficial:http://www.pdflabs.com
Palabrasclaves:pdftk,editarpdf.
AbrimosunterminalyparainstalarPDFTKescribimosnuestroprimercomando:
sudoapt-getinstallpdftk
Unavezinstalado,vamosaldirectoriodondetenemoslosarchivospdfyescribimos:
pdftkA=nombre-de-archivo.pdfcatA52-57outputsalida.pdf
Con‘catA52-57′indicamosquequeremosextraerdesdelapágina52alapágina57inclusive,parasercolocadasenunnuevoarchivollamadosalida.pdf.
Siporejemploqueremosextraerpáginasde2archivos:
pdftkA=archivo1.pdfB=archivo2.pdfcatA52-57B1outputsalida.pdf
Con‘catA52-57B1′indicamosquequeremosextraerdesdelapágina52alapágina57inclusivedelarchivo1.pdf,ylapágina1delarchivo2.pdf,queseráncolocadasenelnuevoarchivosalida.pdf.
TutorialextraerpáginasdearchivospdfconPDFTKenLinux
53
TutorialuniendoarchivospdfconPDFTKenLinuxEnestetutorialveremoscomounirvariosarchivospdfenunosolousandoPDFTK(PDFToolkit).
Paravertodaslasposibilidadesdelprogramaospasoelsitioweboficial:http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/
Palabrasclaves:pdftk,editarpdf.
AbrimosunterminalyparainstalarPDFTK,escribimosnuestroprimercomando:
sudoapt-getinstallpdftk
Unavezinstalado,vamosaldirectoriodondetenemoslosarchivospdfyescribimos:
pdftk1.pdf2.pdf3.pdfoutputsalida.pdf
Aquíindicamoscuálesarchivosseránunidosenunosolo(tambiénpodemosusarelcomandopdftk*.pdfoutputsalida.pdf).
TutorialuniendoarchivospdfconPDFTKenLinux
54
TutorialabrirmúltiplesconsolasenunasolaventanaconTmuxenGNU/LinuxEnestetutorialveremoscomousarunmultiplexadordeconsolasparatrabajarconvariasaplicacionessimultáneamenteenunasolaconsolaGNU/Linux
Palabrasclaves:tmux,multiplexadordeconsolas,terminalmultiplexer.
TmuxTerminalMultiplexeresunprogramaquepermitetrabajarconvariosprogramasenunasolaventana,ocambiarlosaotraventanasinpararlos.
ParainstalarTmux:
sudoapt-getinstalltmux
CuandoTmuxiniciacreaunanuevasesiónconunasolaventanaylamuestraenlapantalla.Laparteinferiordelamismasirveparainformaciónyparaingresarórdenes.
Abrimosunterminalyescribimos:
tmux
Enlaventanaquesenosabreyapodemoscomenzarausarelprogramausandolateclactrl+byluegolatecladecombinación.Paraabrirunaventana:
ctrl+bc
Parairalaventanaanterior:
ctrl+bp
Parairalasiguienteventana:
ctrl+bn
Listarlasventanasparapoderseleccionarunadeellas:
ctrl+bw
TutorialabrirmúltiplesconsolasenunasolaventanaconTmuxenGNU/Linux
55
Renombraventana:
ctrl+b,
Paradividirlaventanaendospaneles:
ctrl+b%
Parairalsiguientepanel:
ctrl+b{
Parairalpanelanterior:
ctrl+b}
Paracerrarelpanel:
ctrl+bx
Paracerrarlaventana:
ctrl+b&
Paracrearunanuevasesiónllamadanueva-sesion:
tmuxnew-snueva-sesion
Másinformaciónen:http://manpages.ubuntu.com/manpages/trusty/man1/tmux.1.html(idiomainglés)
TutorialabrirmúltiplesconsolasenunasolaventanaconTmuxenGNU/Linux
56
TutorialcompartirsesionesSSHconTmuxenGNU/LinuxEnestetutorialveremoscomo,porejemplo,sepuedencompartirsesionesSSHenunservidorGNU/Linux
Palabrasclaves:tmux,multiplexadordeconsolas,ssh,compartirsesión,GNU/Linux.
Supongamosparaelejemploquetenemosunordenadorllamado'uno'conusuario'uno',otrollamado'dos'conusuario'dos',yelservidoralquenosqueremosconectarporSSHconIP10.0.0.11.
Desdeelordenador'uno',abrimosunterminalyiniciamosTmux:
tmux
AhoranosconectamosalservidorporSSH:
Nospediralaseña,laescribimosyyaestamosconectadosalservidor.Enlaterminaldelservidorcreamosunasesiónparacompartirllamada'compartiendo':
tmuxnew-session-scompartiendo
Enelordenador'dos'seguimoslospasosanterioresparaconectarnosalservidor,ycuandoyaestamoslogueadosenlaterminaldelservidorverificamoslassesionesdeTmuxabiertascon:
tmuxlist-sessions
nosaparecerálasesión'compartiendo'creadaporelusuario'uno'.paraconectarnosaellaescribimos:
tmuxattach-tcompartiendo
Ahoratendremosalosdosusuarioscompartiendolamismasesión.
Finalmenteparasalirdelasesiónusamoslacombinacióndeteclas:
TutorialcompartirsesionesSSHconTmuxenGNU/Linux
57
ctrl+bd
TutorialcompartirsesionesSSHconTmuxenGNU/Linux
58
TutorialabrirmúltiplesconsolasenunasolaventanaconByobuenGNU/LinuxEnestetutorialveremoscomousarunmultiplexadordeconsolasparatrabajarconvariasaplicacionessimultáneamenteenunasolaconsolaGNU/Linux
Palabrasclaves:byobu,multiplexadordeconsolas,terminalmultiplexer.
ByobuTerminalMultiplexeresunprogramaquepermitetrabajarconvariosprogramasenunasolaventana,ocambiarlosaotraventanasindetenerlos.
ParainstalarByobu:
sudoapt-getinstallbyobu
CuandoByobuiniciacreaunanuevasesiónconunasolaventanaylamuestraenlapantalla.Laparteinferiordelamismasirveparainformaciónyparaingresarórdenes.
Abrimosunterminalyescribimos:
byobu
Enlaventanaquesenosabreyapodemoscomenzarausarelprogramaabriendoporejemplolaayudausandolatecla*shift+F1:
shift+F1
ParaabrirunanuevaventanaapretamoslateclaF2:
F2
Paracambiarentrelasventanasabiertastenemoscuatroopciones:
F3F4alt+FlechaIzquierdaalt+FlechaDerecha
Paradividirlaventanaendospaneleshorizontales:
shift+F2
TutorialabrirmúltiplesconsolasenunasolaventanaconByobuenGNU/Linux
59
Paradividirenpanelesverticales:
ctrl+F2
Paracambiarentresesiones:
alt+FlechaArribaalt+FlechaAbajo
Paracambiarentrepaneles:
shift+F3shift+F4shift+FlechaIzquierdashift+FlechaDerechashift+FlechaArribashift+FlechaAbajo
Paramoverelpanel:
Ctrl+F3Ctrl+F4
Paramoverlaventana:
Ctrl+Shift+F3Ctrl+Shift+F4
Paraaumentarodisminuireltamañodelospaneles:
shift+alt+FlechaIzquierdashift+alt+FlechaDerechashift+alt+FlechaArribashift+alt+FlechaAbajo
Paraconfigurarlabarradeestadoenlaparteinferiordelaventana:
F9
Paracerrarelpanel:
ctrl+F6
Másinformaciónen:http://byobu.co/(idiomainglés)
TutorialabrirmúltiplesconsolasenunasolaventanaconByobuenGNU/Linux
60
TutorialabrirmúltiplesconsolasenunasolaventanaconByobuenGNU/Linux
61
AdministrarGNU/Linux
TutorialquéesrootycomousarloenGNU/Linux
TutorialcomofuncionaelprocesodeinicioenGNU/Linux
TutorialcomofuncionanlosnivelesdeejecuciónenGNU/Linux
TutorialgestionarprocesosenunsistemaoperativoGNU/Linux
TutorialverprogramasinstaladosenGNU/Linux
TutorialconfigurandounsistemaRAIDenGNU/Linux
TutorialcrearoeliminarparticionesenGNU/Linuxconfdisk
TutorialcrearoeliminarunaparticiónswapenGNU/Linux
TutorialformatearparticionesenGNU/Linux
TutorialmontarydesmontarunpendriveusbenGNU/Linux
TutorialMontarparticionesNTFSenGNU/LinuxUbuntu
TutorialmontarparticionesNFSenunaredGNU/Linux
TutorialconfigurarlaredenGNU/Linux
TutorialConfigurarImpresoraenunaredGNU/Linux
TutorialconfigurarusuariosenGNU/Linux
TutorialconfigurargruposdeusuariosenGNU/Linux
AdministrarGNU/Linux
62
TutorialgestionarpermisosyatributosdearchivosenGNU/Linux
TutorialgestionaratributosextendidosdearchivosenGNU/Linux
Palabrasclaves:root,sudo,su,administrador,sudoers,gksudo,BIOS,MBR,EFI,UEFI,sistemadeinicio,bootloader,nivelesdeejecución,runlevels,init,proceso,tarea,thread,ps,fg,bg,RAID,discoduro,mdadm,programas,editarparticiones,swap,montarparticiones,mount,NTFS,NFS,compartirdirectorioenred,servidor,cliente,ifconfig,configurarusuario,usermod,userdel,groupadd,groupdel,cambiarpermisos,atributosdearchivo,chmod,chown,chattr,lsattr,attr,extendedfileattributes.
AdministrarGNU/Linux
63
TutorialquéesrootycomousarloenGNU/LinuxEnestetutorialveremosparaquésirvelacuentaderootenGNU/Linuxycómousarla
Palabrasclaves:root,sudo,su,administrador,sudoers,gksudo.
ElusuariorootdeunsistemaoperacionalGNU/Linuxeseladministradordelmismo.Éltienelospermisosnecesariospararealizarcualquiertipodetarea.
Losusuarioscomunesencambio,notienenpermisosparainstalarprogramasoescribirenlosdirectoriosdesistema.Porlotanto,pararealizarcualquieracciónquenecesitepermisosderoot,debenusarsudoósu.
Siqueremosconvertirnosenadministradoresdelsistema(root)escribimos:
su
Nospidelaclavederoot,laescribimosyyasomosroot.
Siqueremoscambiardeusuario:
sunombre_de_usuario
Yescribimoslaclavedelusuario.
Paradejardeserroot:
exit
sudoencambio,sirveparaejecutaruncomandocomorootsindejardeserunusuariocomún.LousamosporejemploparainstalarelprogramaGimp:
sudoapt-getinstallgimp
Nospidelaclavederoot,laescribimosyyatenemospermisoparainstalarelprograma.
Importante:Sielusuariodeunprogramanoestádentrodelgruposudoersnovaapoderusarsudo.Paraagregarloalgrupo:
TutorialquéesrootycomousarloenGNU/Linux
64
sudoaddusernombre_de_usuariosudo
Paracambiarlaclavederootescribimos:
sudopasswdroot
EnUbuntu,tenemostambiénunambientegráficoespecialcompermisosderoot:
gksudonautilus
Nospedirálaclavederootynosabriráunaventanaeneldirectoriodeladministradorroot.Desdeallípodremosnavegarporlosdirectoriosdelsistemacomoadministradores.
Másinformaciónen:http://www.howtogeek.com/111479/htg-explains-whats-the-difference-between-sudo-su/(idiomainglés)
TutorialquéesrootycomousarloenGNU/Linux
65
TutorialcomofuncionaelprocesodeinicioenGNU/LinuxEnestetutorialveremoscomofuncionaelprocessodeiniciodeunsistemaoperativoGNU/Linux
Palabrasclaves:BIOS,MBR,EFI,UEFI,sistemadeinicio,bootloader,kernel,grub,isolinux,RAM,initrd,initramfs,sbin/init,xwindow.
ElprocesodearranquedeunordenadorempiezaenlaBIOSqueiniciaelhardwareatravésdeunfirmwareinstaladoenunchipEEPROM.
EstechiphaceuntestllamadoPOSTaloscomponentesdelordenadorycargaenlamemoriaprincipalelsistemadeinicio(bootloader).Éste,queestáalojadoenelMBRoenlaparticiónEFI,escontroladoporelsistemaoperativo.
GrubeisolinuxsonlossistemasdeiniciodeGNU/Linuxmásconocidosysedividenendospartes:laprimeraexaminalaMBRparabuscarlaparticióndeinicioycargaelsistemadearranque(porejemploGrub)enlamemoriaRAM.
Enlasegundaparte,grubcargaelkernelyunsistemadearchivosinicial(initrdoinitramfs)enlaRAM.Unavezqueelkernelhaconfiguradoelhardwareymontadoelsistemadearchivos,iniciaelprocesoinitlocalizadoen/sbin/initqueeselencargadodeiniciarlosdemásprocesosnecesarios(cambiaamodomultiusuario,iniciagetty)parafinalmentedejarelsistemaoperativolistoparausar.
EnsistemasEFI/UEFIencambio,elfirmwareUEFIleesusistemadeiniciopropioparadeterminarqueprogramaUEFIvaainiciar.
http://www.ibm.com/developerworks/library/l-linuxboot/index.html(idiomainglés)
TutorialcomofuncionaelprocesodeinicioenGNU/Linux
66
TutorialcomofuncionanlosnivelesdeejecuciónenGNU/LinuxEnestetutorialveremoscomofuncionanlosnivelesdeejecuciónenunsistemaoperativoGNU/Linux
Palabrasclaves:LSB,nivelesdeejecución,runlevels,init.
Aclaración:elLSB(LinuxStandardBase)establecequelossistemasoperativosGNU/Linuxfuncionancon7nivelesdeejecuciónperoéstosvaríanentrelasdistintasdistribuciones.Enestecaso,nosbasaremosenDebianGNU/Linux.
Elprocesoiniteselencargadodeiniciarlosnivelesdeejecución(runlevels)delsistemaoperativo.
Porejemplo,elnível0eseldeapagadodelordenador,elnível1esenmodomonousuario(root),delnivel2al5sonmultiusuarioconredysistemagráfico,yporúltimoelnivel6esparareiniciarelsistemaoperativo.
Parasaberenquenivelestamostenemosdosopcionescomorootyusuariorespectivamente:
runlevel
who-r
Paracambiardenivel,porejemplo,ponerelsistemaenmodomanutenciónsinred:
init1
Siqueremosreiniciarelsistema:
init6
Másinformaciónen:http://wiki.linuxquestions.org/wiki/Run_Levels(idiomainglés)
TutorialcomofuncionanlosnivelesdeejecuciónenGNU/Linux
67
TutorialgestionarprocesosenunsistemaoperativoGNU/LinuxEnestetutorialveremoscomogestionarprocesosenunsistemaoperativoGNU/Linux
Palabrasclaves:proceso,tarea,thread,ps,fg,bg.
Unprocesoessimplementeunainstanciadeunaomástareas(threads)relacionadasqueseejecutanenelordenador.
Tenemosprocesosinteractivostipobashofirefoxquedebenseriniciadosporelusuario,procesosenlote(batch)tipoupdatedbquesonautomáticos,demonios(daemons)quefuncionansininterrupcióntipohttpdoxinetd,oprocesosdelkernel.
Losprocesostienenprioridadquevade-20comolamásaltahasta19,lamásbaja,yunidentificadorllamadoPID.
Parasaberqueprocesosseestánejecutandoahoraenformadetallada:
ps-ef
Conocerlosprocesosdeunusuario:
ps-unombre_usuario
Paraverdetodoslosusuarios:
ps-aux
Paraverlosprocesosentiemporeal:
htop
Paraponerunprocesoensegundoplano(bg),porejemplohtop:
htop&
Parapasareseprocesoaprimerplano:
TutorialgestionarprocesosenunsistemaoperativoGNU/Linux
68
fghtop
TutorialgestionarprocesosenunsistemaoperativoGNU/Linux
69
TutorialverprogramasinstaladosenGNU/LinuxEnestetutorialaprenderemosaverquéprogramasysusversionestenemosinstaladosennuestroGNU/Linux
Palabrasclaves:programas,dpkg,grep.
Parasaberqueprogramasestáninstaladosescribimosenunterminal:
dpkg--get-selections
Silalistaesmuylarga,podemosbuscarsoloelprogramaquenecesitamos:
dpkg--get-selections|greppython
Yparasaberdondeestásituado:
dpkg-Lphyton-apt
TutorialverprogramasinstaladosenGNU/Linux
70
TutorialconfigurandounsistemaRAIDenGNU/LinuxEnestetutorialveremoscomopodemosconfigurarunsistemaRAIDenGNU/Linux
Palabrasclaves:RAID,discoduro,mdadm.
UnsistemaRAIDesun"conjuntoredundantedediscosindependientes"(elsignificadodelatraduccióndelinglésRAID)quepermitealmacenardatosdeformadistribuidaenvariosdiscoscomosifueranunosolo.
ParapodercrearunsistemaRAIDtenemosqueteneralmenosdosdiscosduros,siendoconvenientequeéstostenganlamismacapacidad.
Paraconfigurardosdiscosduros(sdb1,sdc1)comoRAID0enGNU/Linuxvamosausarlaherramientamdadm.Parainstalarla:
sudoapt-getupdate
sudoapt-getinstallmdadm
AhoraparaconfigurarelRAID:
mdadm--create--verbose/dev/md0--level=0--raid-devices=2/dev/sdb1/dev/sdc1
Ahoralovamosainiciar:
mdadm--assemble/dev/md0/dev/sdb1/dev/sdc1
OtraopciónparainiciarelRAID:
mdadm--assemble--scan
ParaañadirundiscoaunRAIDactivo:
mdadm/dev/md0--add/dev/sdd1
Paraeliminareldisco/dev/sdb1delRAID/dev/md0:
TutorialconfigurandounsistemaRAIDenGNU/Linux
71
mdadm/dev/md0--fail/dev/sdb1--remove/dev/sdb1
SialgunavezqueremossabercomoestáconfiguradoelRAID:
mdadm-E/dev/md0
Sialgunavezqueremoseditarlo,podemosusarelarchivodeconfiguración:
/etc/mdadm/mdadm.conf
Másinformaciónenhttp://es.wikipedia.org/wiki/RAIDyenhttp://elpuig.xeill.net/Members/vcarceler/articulos/mdadm-una-nueva-herramienta-para-la-gestion-de-raid-mediante-software-en-linux
TutorialconfigurandounsistemaRAIDenGNU/Linux
72
TutorialcrearoeliminarparticionesenGNU/Linuxconfdisk*Unaparticiónesunaseccióndeundiscorígidoqueestratadacomosifueraotrodiscoindependiente.
Estopuedeserútilporejemploparadedicarunespacioúnicoparanuestrosarchivosimportantesoparacolocarlosarchivosmultimedia.
EnestetutorialveremoscomocrearoeliminarparticionesenGNU/Linux.*
Palabrasclaves:partición,discorígido,harddrive,GNU/Linux,sistemaoprativo,fdisk.
Parasabercómoestáconfiguradonuestrodiscorígido:
df-Th
Paraporejemploparticionarelsegundodiscorígido:
sudofdisk/dev/sdb
Nosapareceráelcursoryalistopardarunaordem.escribimosmparalaayuda:
m
Lasotrasopcionesimportantesson:
*n*creaunapartición*d*borraunapartición*l*muestralostiposdeparticiones*t*modificaeltipodepartición*p*muestralatabladeparticiones*w*escribeloscambiosysale*q*salesinguardarloscambios
Porejemporparacrearunaparticiónescribimosn,luegop(primaria)oe(extendida)yfinalmentewparaescribirloscambios.
Nota:OtraherramientamásnuevaeslasuiteGPTfdiskquepermitecrearhasta128particionesyeliminalarestriccióndediscosmayoresde2TiBdelMBT.
TutorialcrearoeliminarparticionesenGNU/Linuxconfdisk
73
Másinformaciónen:http://manpages.ubuntu.com/manpages/trusty/es/man8/fdisk.8.html(idiomainglés)http://www.ibm.com/developerworks/linux/library/l-gpt/index.html(idiomainglés)
TutorialcrearoeliminarparticionesenGNU/Linuxconfdisk
74
TutorialcrearoeliminarunaparticiónswapenGNU/LinuxUnaparticiónswapesunaparticiónqueactúacomomemoriadeintercambio,yseusacomosifueramemoriaRAMcuandoéstanoessuficiente.EnestetutorialveremoscomocrearlaenGNU/Linux.
Palabrasclaves:particióndeintercambio,swap,discorígido,harddrive,GNU/Linux,sistemaoperativo.
Elarchivoquetienelaconfiguracióndenuestrosdiscosrígidosyparticioneses/etc/fstab.Parasabersitenemosunaparticiónswapennuestrosistemaoperativo:
cat/proc/swaps
Porejemploparacrearunaparticiónswapde512megasprimerocreamosunarchivoconesetamaño:
sudoddif=/dev/zeroof=/mnt/512MiB.swapbs=1024count=524288
Damospermisosdeleeryescribirsolamentearoot:
sudochmod600/mnt/512MiB.swap
Formatamoselarchivocomoswap:
sudomkswap/mnt/512MiB.swap
Agregamoslaparticiónalsistemaoperativo:
sudoswapon/mnt/512MiB.swap
Podemosverqueyaestádisponibleconcat/proc/swapsocat/proc/meminfo.
Finalmenteparahacerloscambiospermanentes:
sudovim/etc/fstab
TutorialcrearoeliminarunaparticiónswapenGNU/Linux
75
Alfinaldelarchivoagregamosestalíneaysalvamosloscambios:
/mnt/512MiB.swapnoneswapsw00
Reiniciandoelsistemaoperativoveremosqueyacontamosconlanuevamemoriaswap.
Paraeliminaresaparticiónswapabrimoselarchivofstab:
sudovim/etc/fstab
Borramoslalínea/mnt/512MiB.swapnoneswapsw00ysalvamosloscambios.Porúltimoremovemoslaparticiónswapdelsistemaoperativoyeliminamoselarchivo:
sudoswapoff/mnt/512MiB.swap&&sudorm/mnt/512MiB.swap
Másinformaciónen:https://help.ubuntu.com/community/SwapFaq(idiomainglés)
TutorialcrearoeliminarunaparticiónswapenGNU/Linux
76
TutorialformatearparticionesenGNU/LinuxEnestetutorialveremoscómopodemosformatearparticionesydiscosrígidosenGNU/Linux
Palabrasclaves:mkfs,formatearparticiones,discorígido,GNU/Linux.
ComenzamosaveriguandoquésistemasdearchivossoportanuestoSO:
ls/sbin/mk*
Ydóndeestálaparticiónquequeremosformatar:
df-Th
Paraformatearporejemplolaparticiónsdbconsistemadearchivosext4yetiquetapruebasescribimos:
mkfs.ext4-Lpruebas/dev/sdb
Másinformaciónen:http://manpages.ubuntu.com/manpages/trusty/en/man8/mkfs.8.html(idiomainglés)
TutorialformatearparticionesenGNU/Linux
77
TutorialmontarydesmontarunpendriveusbenGNU/LinuxEnestetutorialveremoscomomontarydesmontarcualquierdispositivoexterno(pendriveusb,cámarafotográfica,etc.)enGNU/Linuxdesdelalíneadecomandos
Palabrasclaves:pendriveusb,montardispositivoexterno,mount,umount.
Primeroverificamosdondeestámontadoeldispositivoexterno:
sudofdisk-l
Nosapareceráunalíneadetextosimilaraesta:
/dev/sdb1*6339167991958368+cW95FAT32(LBA)
Aclaración:saldráprimeroeldiscodurodelordenadorcomohda(siesIDE)osda(siesSCSI),luegosituviéramosotrodiscoduro,éstesaldríacomosdbyenesecaso,nuestrousbseríasdc.
Paramontareldispositivo:
sudomount-tvfat/dev/sdb1/mnt/
Enestecasomontamoseldispositivosdb1eneldirectorio/mnt.Paraversiestácorrecto:
df-l
Finalmenteparadesmontarlo:
sudoumount/dev/sdb1
TutorialmontarydesmontarunpendriveusbenGNU/Linux
78
TutorialMontarparticionesNTFSenGNU/LinuxUbuntuNTFSesunsistemadearchivosampliamenteutilizadoporlossistemasoperativosdeMicrosoft(TM)tipoXP,Vista,etc.EnestetutorialveremoscomomontarparticionesNTFSenGNU/Linux.
Palabrasclaves:montarpartición,ntfs,fdisk,fstab.
Abrimoslaterminalyescribimosestaordenparasabercomoestánmontadaslaparticionesennuestrodiscoduro:
sudofdisk-l
Creamosundirectoriodenombredatoseneldirectorio/mediadondealojarlapartición:
sudomkdir/media/datos
Denombrealdirectoriolehepuestodatosperolepodeisponerloqueseosocurra.Ahoraeditamoselarchivofstab
sudogedit/etc/fstab
alfinaldelarchivoescribimoslosiguiente:
/dev/sda5/media/datosntfs-3gquiet,defaults,rw00
guardamosloscambiosyalreiniciarnosaparecerálaparticiónennuestroescritorio.
TutorialMontarparticionesNTFSenGNU/LinuxUbuntu
79
TutorialmontarparticionesNFSenunaredGNU/LinuxNFS(networkfilesystem)esunsistemadearchivosdistribuidosquepermiteaccederennuestroordenadoraarchivosqueestánlocalizadosenundiscooparticiónenlaredlocal.EnestetutorialveremoscómoconfigurarloenGNU/Linux.
Palabrasclaves:NFS,montar,compartirdirectorioenred,servidor,cliente.
InstalamoselservidorNFSenunordenadordenuestrared:
sudoapt-getinstallnfs-kernel-server
Porejemplo,paramontarenlaredeldirectoriohomedelservidor,abrimoselarchivo/etc/exportsyescribimos:
/homeip-ordenador-cliente(rw,sync,no_root_squash,no_subtree_check)
Dondeip-del-servidoreselnúmerodelaIPdelservidor.Eldirectoriotendrápermisosdelecturayescritura(rw).
Exportamoseldirectoriocompartidocon:
sudoexportfs-a
AhorareinicimoselservidorNFS:
sudoservicenfs-kernel-serverstart
Enelordenadorclienteinstalamosnfs-common:
sudoapt-getinstallrpcbindnfs-common
Añadimosunalíneaalarchivo/etc/hosts.deny:
rpcbind:ALL
Yotraalarchivo/etc/hosts.allow:
TutorialmontarparticionesNFSenunaredGNU/Linux
80
rpcbind:ip-del-servidor
Creamosundirectoriollamadodirectorio-redparamontarenéleldirectoriohomedelservidor:
mkdirdirectorio-red
Montamoseldirectoriocon:
sudomountip-del-servidor:/home/home/usuario/directorio-red
Vemossiestámontado:
mount-tnfs
Paraqueeldirectorio-redsemonteautomáticamentealiniciarelsistemaoperativo,abrimoselarchivo/etc/fstabyescribimosalfinallasiguientelínea:
192.168.1.8:/home/home/usuario/directorio-rednfsauto,noatime,nolock,bg,nfsvers=4,intr,tcp,actimeo=180000
Parasaberquesignificaestalíneapodemosleerlaayuda:
mannfs
Sialgunavezqueremosdesmontarestedirectoriodered:
sudoumount/home/usuario/directorio-red
yluegoeliminamoslalíneaañadidapreviamentealarchivo/etc/fstab
Másinformaciónen:https://www.digitalocean.com/community/tutorials/how-to-set-up-an-nfs-mount-on-ubuntu-14-04(idiomainglés)
TutorialmontarparticionesNFSenunaredGNU/Linux
81
TutorialconfigurarlaredenGNU/LinuxSitenemosproblemasconlaconexiónaInternet,podemosconfigurarlareddesdelalíneadecomandos,algoqueesmuysencillodehacersiguiendoestospasos:
NOTA:EnesteejemplopondrécomodirecciónIPdelRouter192.168.1.1,direccióndelordenador192.168.1.2ylosservidoresDNS8.8.8.8y8.8.4.4quesonlosdeGoogle®.AdaptarlosavuestraconexónaInternet.
Abrimosunterminalyescribimos:
sudogedit/etc/NetworkManager/nm-system-settings.conf
Ospedirálacontraseñaderoot,laponeisyseosabreelarchivonm-system-settings.conf.Enéltenemosquemodificarlaopciónmanageddetrueafalse.Guardamosloscambiosycerrramoselarchivo.
Enlamismaterminalescribimos:
sudogedit/etc/network/interfaces
seosabreelarchivointerfaces,dondetendremosqueescribirlosiguiente:
autoeth0ifaceeth0inetstaticaddress192.168.1.2netmask255.255.255.0network192.168.1.0broadcast192.168.1.255gateway192.168.1.1
Guardamosloscambiosycerramoselarchivo.Ahoraenlaterminalescribimos:
sudogedit/etc/resolv.conf
Seosabreelarchivoresolv.confdondepondreislasdireccionesDNSdeGoogle:
nameserver8.8.8.8nameserver8.8.4.4
TutorialconfigurarlaredenGNU/Linux
82
Finalmenteparaaplicartodosloscambiosreseteamoslaredescribiendoelsiguientecomandoenlaterminal:
sudo/etc/init.d/networkingrestart
TutorialconfigurarlaredenGNU/Linux
83
TutorialConfigurarImpresoraenunaredGNU/LinuxEnestetutorialveremoscomoconfigurarunaimpresoraparaserusadaenunareddeordenadoresGNU/Linux
Primeroinstalamossambaycups:
sudoapt-getinstallcupsyssamba-common
Vamosalarchivosmb.confyloeditamos:
sudogedit/etc/samba/smb.conf
Enladirectiva"printing"buscamoslaopciónolaagregamossegúnseaelcaso:
printing=cups
Unavezhechoestovamosaconfigurarcups,primeromodificandoestosdosarchivos:
sudogedit/etc/cups/mime.types
dondedescomentamosoagregamossegúnseaelcasolalínea:
application/octet-stream
luegovamosalarchivo:
sudogedit/etc/cups/mime.convs
yagregamosodescomentamoslalínea:
application/octet-streamapplication/vnd.cups-raw0-
Reiniciamoslos2serviciosparaquetomenefectoloscambiosyabrimosnuestronavegadorenestadirección:
TutorialConfigurarImpresoraenunaredGNU/Linux
84
http://localhost:631/
En"Tareasdeadministración"nospedirálaclavederoot,luegovamosalaopciónañadirimpresoraycompletamoslosdatosteniendoencuentaqueelnombredebersersolounapalabra,novarias.
EnconexiónseleccionamosWindowsPrinterviaSamba.Siaúnnoapareceestaopciónseleccionamosippyhacemosclicensiguiente,enlaurldeconexióncolocamos:
smb://server/nombre.de.la.impresora
(estoencasoqueseacompartidaportodosynosenecesiteidentificaciónparausarla)
casocontrariocolocamos:
smb://username:password@workgroup/server/nombre.de.la.impresora
Enserverseescribeladirecciónip,luegoclicensiguienteyporúltimoquedaráconfigurarelcontroladordelaimpresora.
TutorialConfigurarImpresoraenunaredGNU/Linux
85
TutorialconfigurarusuariosenGNU/LinuxEnestetutorialveremoscomocrear,editary/oeliminarusuariosenGNU/Linux
Palabrasclaves;usuarioGNU/Linux,adduser,usermod,id,userdel.
Paracrearunnuevousuariousaremosnuestracuentadeadministradordelsistema(root)conelsiguientecomando:
sudoaddusernombre_usuario
Allínospediráprimerolacontraseñaderootyluegodecrearelusuario"nombre_usuario"yelgrupo"nombre_usuario",nospedirálacontraseñadelnuevousuario.
Finalmentepodemosingresarlosdatosdelnuevousuario(nombrecompleto,teléfono,etc.)o,apretandolateclaintro,simplementeconfirmarlacreación.
Alcrearlacuentadeunusuario,elsistemaoperativotambiéncrearáeldirectorio/home/nombre_usuario/,3archivosocultosqueconfiguransusvariablesdeambiente:.bash_logout-.bash_profile-.bashrc,ycomodijimosanteriormenteungrupoconelnombredelusuario.
Paraverlainformacióndelascuentasdeusuariodenuestrosistemaoperativo:
cat/etc/passwd
Paraverlascuentasdelosusuariosquenosondelsistema,podemosusar:
grep/home//etc/passwd
Otambiénpodemosmostrarunasimplelistadeusuariossininformacionesadicionales:
grep/home//etc/passwd|cut-d:-f1
Siqueremosquelacuentaexpireel31-12-2015:
usermod--expiredate31-12-2015nombre_usuario
Paraverificaraquegruposdeusuariosperteneceunusuario:
TutorialconfigurarusuariosenGNU/Linux
86
idnombre_usuario
Paraagregarelusuarioalgrupodeusuariosusers:
sudousermod--append--groupsusersnombre_usuario
Paracambiarlaubicacióndeldirectoriohomealdirectoriotmpdenombre_usuario:
usermod--home/tmpnombre_usuario
Parabloquear(-L)/desbloquear(-U)lacuentadelusuario:
usermod-Lnombre_usuariousermod-Unombre_usuario
Paraeliminarelusuario:
sudouserdel-rnombre_usuario
TutorialconfigurarusuariosenGNU/Linux
87
TutorialconfigurargruposdeusuariosenGNU/LinuxEnestetutorialveremoscomocreary/oeliminargruposdeusuariosenGNU/Linux
Palabrasclaves:grupodeusuarios,groupadd,groupdel.
Crearungrupodeusuariossirveparaqueesosusuariospuedantenerparámetrosdeseguridadydeaccesoespecíficos.
Unejemplotípico:enunaempresatendríamoslosgrupos"marketing","administración","ventas"ect.cadaunoconaccesoypermisospersonalizados.
Paraverlainformacióndelosgruposdeusuariodenuestrosistemaoperativo:
cat/etc/group|more
Paracrearungrupoescribimos:
sudogroupaddnombre_grupo
Paraverificaraquegruposperteneceunusuario:
idnombre_usuario
Paraañadirnombre_usuarioalgruponombre_grupo:
sudoaddusernombre_usuarionombre_grupo
Paraeliminarunusuariodelgrupo:
sudodelusernombre_usuarionombre_grupo
Paraeliminarungrupo:
sudogroupdelnombre_grupo
TutorialconfigurargruposdeusuariosenGNU/Linux
88
TutorialconfigurargruposdeusuariosenGNU/Linux
89
TutorialgestionarpermisosyatributosdearchivosenGNU/LinuxEnestetutorialveremoscomopodemoscambiarpermisosdelectura,escritura,ejecuciónydepropietarioalosarchivosenGNU/Linux.
Palabrasclaves:permisosdearchivos,propietariodearchivo,chmod,chown,atributosespecialesarchivo,chattr,lsattr.
Paraverlospermisosdeldirectorioenelcualestamosposicionados:
ls-l
Locualnosdaráporejemploestasinformaciones:
-rw-rw-r--1usuariousuario15912Fev1820:48archivo_de_texto.txt
Loprimeroqueleemossonlospermisos-significaqueesunarchivonormal,r(read)quesepuedeleer,w(write)escribirporelpropietariodelarchivo.
Elsegundoterceto(rw-)sonlospermisosdelgrupodeusuariosyeltercero(r--)paraelrestodeusuarios.Elnúmeroquelesigueeslacantidaddeenlaces
Laterceracolumnasonelnombredelusuarioydelgrupodeusuarios,lacuartacolumnaeseltamañodelarchivo,luegovienelafechadelaúltimamodificaciónyporúltimoelnombredelarchivo.
drwxr-xr-x2usuariousuario4096Fev282014Documentos
Enestalíneavemosunaletrad(directory)alinicio,significaqueesundirectorio.Otrasopcionespuedenserl(links)enlaceyp(pipe).Laletraxsignificapermisoparaejecutarunprograma.
Porejemploparacambiarlospermisosalarchivoarchivo_de_texto.txtescribimos:
chmod664archivo_de_texto.txt
ParacambiarlospermisosaldirectorioDocumentos:
TutorialgestionarpermisosyatributosdearchivosenGNU/Linux
90
chmod755Documentos
Paraentendermejorelporquédelosnúmeros:
755usuariogrupootrosr+w+xr+xr+x4+2+14+0+14+0+1
Encuantoalosusuarios,paracambiaralpropietariodeunarchivo:
chownusuario2archivo_de_texto.txt
Aquielpropietariodelarchivopasaaserusuario2.Paracambiartambiénelgruposería:
chownusuario2:usuario2archivo_de_texto.txt
Porúltimo,losarchivostienenatributosespecialesqueprohibenporejemplo,queéstosseanmovidos,borrados,modificadosorenombrados.Siescribimos:
chattr+iarchivo_de_texto.txt
Elarchivoquedaráinmutable.
Siqueremosenunfuturoborrarloomodificarlos:
lsattrarchivo_de_texto.txt
Másinformaciónenhttps://wiki.archlinux.org/index.php/File_permissions_and_attributes(idiomainglés)
TutorialgestionarpermisosyatributosdearchivosenGNU/Linux
91
TutorialgestionaratributosextendidosdearchivosenGNU/LinuxEnestetutorialveremoscomopodemoseditarlosatributosextendidosdeunarchivoenGNU/Linux.
Palabrasclaves:atributosdearchivo,extendedfileattributes,attr,setfattr,getfattr.
Paraverlosatributosextendidosdelosarchivostenemosquetenerinstaladoattr:
sudoapt-getinstallattr
Porejemplo,vamosaagregaruncomentarioalarchivo_de_texto.txt:
setfattr-nuser.comment-v"esteesuncomentario"archivo-de-texto.txt
Parasabersiarchivo_de_texto.txttieneatributos:
getfattrarchivo_de_texto.txt
Paraveresosatributos:
getfattr-nuser.commentarchivo_de_texto.txt
Másinformaciónenhttp://www.linux-mag.com/id/8741/(idiomainglés)
TutorialgestionaratributosextendidosdearchivosenGNU/Linux
92
ResolverproblemasenGNU/Linux
TutorialbuscandoinformacióndelsistemaoperativoenGNU/Linux
TutorialaprendiendoausarunprogramadechatparapedirayudaenLinux
TutorialbuscarayudaconlalíneadecomandosenLinux
TutorialeliminarkernelsantiguosenUbuntuoDebian
Tutorialresolver"GPGerror"usandoapt-getupdateenGNU/Linux
TutorialresolverproblemadeconfiguracióndelidiomaenGNU/Linux
TutorialcerrarprogramasbloqueadosenGNU/Linux
TutorialintroducciónaloslogsdelsistemaGNU/Linux
TutorialusarloslogsdelsistemaGNU/Linuxparadescubrirerrores
TutorialresolverproblemasconsistemasdearchivosenGNU/Linux
Tutorialrecuperararchivoseinformacióndediscosduros,CD-ROMsyDVDsdañados
Palabrasclaves:df,free,lshw,lsmod,ifconfig,iwconfig,ps,top,chat,irc,xchat,help,type,man,whatis,info,eliminarkernelantiguo,purge,GPGerror,locale,configuracióndeidioma,kill,log,dmesg,tail,rsyslog,udev,resolverproblema,sistemadearchivos,filesystem,e2fsck,dosfsck,ntfs-3g,testdisk,GNUddrescue,foremost.
ResolverproblemasenGNU/Linux
93
ResolverproblemasenGNU/Linux
94
TutorialbuscandoinformacióndelsistemaoperativoenGNU/LinuxEnestetutorialaprenderemosabuscarinformaciónsobrenuestrosistemaoperativo(RAM,discoduro,procesador,procesos,red,etc.)usandolalíneadecomandoenGNU/Linux
Palabrasclaves:líneadecomandos,commandline,shell,bash,df,free,lshw,lsmod,ifconfig,iwconfig,ps,top.
ParasaberelnombredelordenadoryelkernelLinuxusado:
uname-a
Elsistemaoperativo:
cat/etc/os-release
Parasabercuantoespaciotenemoseneldiscoduro:
df-h
ParasabercuantamemoriaRAMlibre:
free
Paraobtenerunalistadelhardwaredelordenador:
sudolshw
Listartodoslosmódulosquehacargadoelkernel:
lsmod
Paraverlosdatosdered(IP,gateway,broadcast,etc.):
ifconfig
Paraverlosdatosdelaredinalámbrica:
TutorialbuscandoinformacióndelsistemaoperativoenGNU/Linux
95
iwconfig
Paraverlosprocesosactivos:
ps
Paraverlosprocesosentiemporeal:
top
Parasalirapretamoslateclaq
TutorialbuscandoinformacióndelsistemaoperativoenGNU/Linux
96
TutorialaprendiendoausarunprogramadechatparapedirayudaenLinuxMuchosmiembrosdelacomunidadLinuxgeneralmentesuelenestarenunsaladechatparaestarencontactoconsuscolegasycuandopueden,ayudaralosnovatosaresolveralgúnproblema.Enestetutorialaprenderemosloscomandosbásicosdechat.ComousamosLinux,sugierolaaplicaciónXChataunquepodeistambiénchateardesdeelnavegadorutilizandolosservidoresdeFreenode,porejemplo:http://webchat.freenode.net/?channels=ubuntu-es.
Palabrasclaves:irc,chat,xchat,nick,join,query,irc.freenode.net.
ÓrdenestípicasdeIRC
/nicknuevo_nombreCambiamosnuestronick./join#ubuntu-esEntramosenuncanal./serverirc.freenode.netNosconectamosaunared./queryusuarioEntablamosunaconversaciónprivadaconunusuario./part#canalSalimosdelcanal./quit“mensajedesalida”Nosdesconectamosdeunaredenviandomensajedesalida./msgnickservregister<password><e-mail>.Registrarunnombredeusuario./msgnickservidentify<password>.Identificamoselnickregistrado./msgNickServghost<nick><password>.Conseguimosnuestronick,aunqueesteusadoporotrapersona./msgNickServINFO<nick>.ComprobamoscuantotiempollevamosconectadosalIRC./msgNickServSETPASSWORD<mynewpassword>.CambiarlacontraseñadelNickregistrado./asauthnickpass.Identificanuestronombredeusuario.
Comenzamos:
AbrimosunterminalylanzamosXChat:xchat
Xchatnospreguntaráaquéservidornosqueremosconectar(porejemploUbuntuoDebian),yluegonospediráunnickname(nombredeusuario).Podemoselegircualquiernombreperosiyaestásiendousadodeberemoselegirotro.Siteconectashabitualmentealared,deberíasregistrartunombredeusuarioenunservidor,paraquelosdemásusuariospuedanidentificarteynadiepuedausurpartupersonalidad(lasinstruccioneseninglés:http://freenode.net/faq.shtml#nicksetup).
Lasórdenesmáscomunesson:
TutorialaprendiendoausarunprogramadechatparapedirayudaenLinux
97
/nicknuevo_nombreCambiamosnuestronick./join#ubuntu-esEntramosenuncanal./serverirc.freenode.netNosconectamosaunared./queryusuarioEntablamosunaconversaciónprivadaconunusuario./part#canalSalimosdelcanal./quit“mensajedesalida”Nosdesconectamosdeunaredenviandomensajedesalida.
Basadoenhttp://www.wikipedia.org(idiomainglés)
TutorialaprendiendoausarunprogramadechatparapedirayudaenLinux
98
TutorialbuscarayudaconlalíneadecomandosenLinuxEsestetutorialaprenderemoscómobuscarayudayobtenerinformaciónutilizandolalíneadecomandoenLinux
Comandos:
type–Nosdicequecomandosevaaejecutarhelp–Exibeinformaciónsobreuncomandobuiltin(quepertenecealbash)man–Muestralapáginadelmanualdelcomandowhatis–Exibeunabrevedescripcióndelcomandoinfo–MuestralainformacióndelcomandoconlaayudadelproyectoGNU
Comenzamos:
Abrimosunterminalyescribimostype,nuestroprimercomando,quenosdicedóndeestaubicadodate:
typedatedatees/bin/date
Ahoraprobamoslaayudadeuncomandodelbash:
helphelp
Algunosejecutablespermitenlaopción--helpparamostrarargumentosyopcionesdelosmismos,porejemplo:
date--help
Todocomandotienesu/spágina/sdelmanualdeayudaconargumentos,opcionesy,aveces,ejemplos.La/sinvocamosconmanyelnombredelcomando(parasalirtecleamosq):
mandf
Encuantoawhatis,nosdaunabrevedescripcióndeparaquésirveuncomando:
TutorialbuscarayudaconlalíneadecomandosenLinux
99
whatiswhoami
ParaverlainformacióndelproyectoGNUutilizamoselcomandoinfo:
infouname
Tip:Ladocumentacióndelosprogramassueleestaren/usr/share/docylapodemosverusandoelcomandolessparalosarchivosdetexto,zlessparalosarchivoscomprimidosgzipyunnavegadorwebparalosarchivos.htlm
TutorialbuscarayudaconlalíneadecomandosenLinux
100
TutorialeliminarkernelsantiguosenUbuntuoDebianAmedidaquevamosactualizandonuestrosistemaoperativovanquedandoinstaladaslasversionesantiguasdelkernelLinux.Aquíveremoscomoeliminarlas
Palabrasclaves:eliminarkernelantiguo,uname,purge.
Parasabercuálesnuestrokernelactualescribimos:
uname-r
Siqueremosverunalistadetodosloskernelsinstalados:
dpkg--list|greplinux-image
Paraeliminarunodeloskernelsescribimosmodificando"x"conelnúmerodeversióndelmismo:
sudoapt-getpurgelinux-image-x.x.x.x-generic
Actualizamoselgestordeiniciodelsistemagrub2:
sudoupdate-grub2
Finalmentereiniciamoselsistema:
sudoshutdown-rnow
TutorialeliminarkernelsantiguosenUbuntuoDebian
101
Tutorialresolver"GPGerror"usandoapt-getupdateenGNU/LinuxEnestetutorialveremoscomopodemossolucionarelerrordeclavepública(publickey)indisponibleenGNU/Linuxcuandoqueremosactualizarelsistemaoperativoconsudoapt-getupdate
Palabrasclaves:GPGerror,publickeynotavailable,actualizarsistemaoperativo,apt-getupdate,dpkg.
Puedesucederquealintentaractualizarelsistemaoperativoconsudoapt-getupdatenosaparezcaesteerror:
Readingpackagelists...DoneW:GPGerror:http://extras.ubuntu.compreciseRelease:Thefollowingsignaturescouldn'tbeverifiedbecausethepublickeyisnotavailable:NO_PUBKEY16126D3A3E5C1192
Lasoluciónesingresarestoscomandos,unoalavez:
sudodpkg--configure-a
sudorm/var/lib/apt/lists/*-vf
sudoapt-getupdate
sudoapt-getclean
sudoapt-getupdate
sudoapt-keyadv--keyserverkeyserver.ubuntu.com--recv-keys16126D3A3E5C1192
Nota:Laclavepúblicapuedevariar,porloquetendreisquealterarlaenesecaso,colocandovuestraclave.
Másinformaciónenhttp://askubuntu.com/questions/127326/how-to-fix-missing-gpg-keys(idiomainglés)
Tutorialresolver"GPGerror"usandoapt-getupdateenGNU/Linux
102
TutorialresolverproblemadeconfiguracióndelidiomaenGNU/LinuxEnestetutorialveremoscomoresolverelproblemadeconfiguracióndelidiomaincorrectoenGNU/Linux
Palabrasclaves:locale,configuracióndeidioma.
Sinosapareceelsiguienteerroraliniciarelsistemaoperativoocuandoqueremosinstalaralgúnprograma:
locale:CannotsetLC_ALLtodefaultlocale:Nosuchfileordirectory
Abrimosunterminalyescribimos:
locale
Lainformaciónqueaparecenosmostrarácómoestáconfiguradoelidioma.Ahoravamosagenerarlo:
sudolocale-genes_ES.UTF-8
Yreconfigurarlo:
sudodpkg-reconfigurelocales
Porúltimoreiniciamoselsistemaoperativo:
sudoshutdown-rnow
ForosdeGNU/Linuxenespañol:http://www.linuxespanol.com/index.php
TutorialresolverproblemadeconfiguracióndelidiomaenGNU/Linux
103
TutorialcerrarprogramasbloqueadosenGNU/LinuxEnestetutorialveremoscomopodemoscerrarprogramasqueestánbloqueadosenLinuxusandolautilidadkill
Palabrasclaves:kill,cerrarprogramasbloqueados,GNU/Linux.
Elmétodomásfácilparacerrarunprogramaesabrirunterminalyescribir:
xkill
ElpunterodelratónsetransformaráenunaXysimplementeclicandoenlaventanadelprogramabloqueadolocerrará.
Otraformaesutilizandolautilidadkilldesdelalíneadecomandos.Paraelloprimerotenemosqueaveriguarelidentificadordelprograma(PID)abriendounterminalyescribiendo:
ps-e
Enlalistaqueaparece,porejemplo,elprogramaFirefoxtieneelPID3192.Paracerrarloescribimos:
kill-93192
Siqueremosencambiobuscarunprogramaespecífico,porejemploescribimos:
ps-Cfirefox
ComoconcualquierutilidadLinux,usandomankillvereislaayudadelamisma(teclaqparasalir)
mankill
TutorialcerrarprogramasbloqueadosenGNU/Linux
104
TutorialcerrarprogramasbloqueadosenGNU/Linux
105
TutorialintroducciónaloslogsdelsistemaGNU/LinuxEnestetutorialveremosquesonlosarchivoslogycómopodemosusarlos
Palabrasclaves:log,rsyslog,dmesg,tail.
LosarchivoslogregistranlasactividadesdelosprogramasyserviciosensistemasGNU/Linux.Ellossonherramientasfundamentalesalahoradeadministrary/oanalizarloqueocurreenelsistemaoperativo.
Loslogsseencuentrandentrodeldirectorio/var/logysonrecogidosporeldemoniorsyslog.Parareiniciarloescribimos:
sudoservicersyslogrestart
Paraleerunarchivologsesueleutilizartail:
taildmesg
Tailsolamentemuestralasúltimas10líneasdelarchivo,siqueremosporejemplover18:
tail-n18dmesg
Paramonitorarentiemporealunserviciooprogramausamos:
tail-fdmesg
Porúltimo,paraeditarlaconfiguraciónbásicadeloslogseditamos:
vim/etc/rsyslog.conf
TutorialintroducciónaloslogsdelsistemaGNU/Linux
106
TutorialusarloslogsdelsistemaGNU/LinuxparadescubrirerroresEnestetutorialveremoscuálessonlosarchivoslogquenospermitendescubrir,diagnosticaryresolverproblemasenGNU/Linux.
Palabrasclaves:log,tail,dmesg,udev.
Elarchivo/var/log/udevcontienelainformacióndelosdispositivosdetectadosporelkernelLinux:
tail-n90/var/log/udev
Dmesgmuestralosmensajesdelsistema:
tail-n90/var/log/dmesg
Paradiagnosticaryresolverproblemasdevideo(servidorgráficoX):
tail-n90/var/log/Xorg.0.log
Otrosarchivoslogcomunesson:
/var/log/auth.log:logdeautenticación/var/log/kern.log:logdelkernel/var/log/cron.log:logdecrond/var/log/boot.log:logdeiniciodelsistema/var/log/wtmp:logdelogins
AlgunasaplicacionescomoelservidorApache(httpd)creansupropiodirectoriodentrode/var/log/paraguardassusarchivoslog.
TutorialusarloslogsdelsistemaGNU/Linuxparadescubrirerrores
107
TutorialresolverproblemasconsistemasdearchivosenGNU/LinuxEnestetutorialveremoscomopodemosresolverproblemasconlossistemasdearchivosdañadosenGNU/Linux
Palabrasclaves:sistemadearchivos,filesystem,resolverproblemas,e2fsck,dosfsck,ntfs-3g.
Pararesolverproblemasenlossistemasdearchivoext2,ext3yext4tenemoslaherramientae2fsck.Parausarlaprimerodesmontamoslaparticiónoeldiscorígidoconproblemas(sdb1comoejemplo):
sudoumountsdb1
Paraverificaryresolverproblemasmostrandounabarradeprogresoenunsistemadearchivosext4:
fsck.ext4-p-f-C0/dev/sdb1
Paraencontrarsectoresdañadosyhacerlosinutilizablesporelsistemaoperativo:
fsck.ext4-f-c-C0/dev/sdb1
Paraverificaryrepararsistemasdearchivosfat12,fat16yfat32(windows),ademásdeinutilizarlossectoresdañados:
fsck.vfat-l-v-a-t/dev/sdb1
Paraverificaryrepararsistemasdearchivosntfs(windows):
ntfsfix/dev/sda1
Másinformaciónen:https://help.ubuntu.com/community/FilesystemTroubleshooting(idiomainglés)
TutorialresolverproblemasconsistemasdearchivosenGNU/Linux
108
TutorialresolverproblemasconsistemasdearchivosenGNU/Linux
109
Tutorialrecuperararchivoseinformacióndediscosduros,CD-ROMsyDVDsdañadosEnestetutorialveremoscomopodemosrecuperarinformacióndediscosduros,CD-ROMsyDVDsconproblemas
Palabrasclaves:discoduro,CD-ROM,DVD,testdisk,GNUddrescue,foremost.
Primeroinstalamoslosprogramasnecesariosparalatarea:testdisk,GNUddrescueyforemost.
sudoapt-getinstalltestdiskgddrescueforemost
Parabuscarennuestroordenadordiscosduros,particionesoCD-ROMsdañadosusamostestdisk:
sudotestdisk
ParapararecuperarunCD-ROMconGNUddrescueescribimos:
ddrescue-b2048/media/cdromnombre_imagen.isoarchivo.log
Losiguienteserámontarlaimagenobtenida:
sudomount-oloop/media/nombre_imagen.iso/mnt/
Encambio,porejemplo,pararecuperarlaparticiónhda1deldiscoduroescribimos:
ddrescue--no-split/dev/hda1nombre_imagenarchivo.log
Porotrolado,pararecuperararchivossueltosusamosforemost:
sudoforemost-tjpg-i/dev/hda1-o/media
Enestecasorecuperamosarchivosjpgdelaparticiónhda1,guardándoloseneldirectorio/media
Tutorialrecuperararchivoseinformacióndediscosduros,CD-ROMsyDVDsdañados
110
Másinformaciónsobrerecuperacióndeinformación:https://help.ubuntu.com/community/DataRecovery(idiomainglés)
GNUddrescue:http://www.forensicswiki.org/wiki/Ddrescue(idiomainglés)
Tutorialrecuperararchivoseinformacióndediscosduros,CD-ROMsyDVDsdañados
111
SeguridadenGNU/Linux
Tutorialrealizarcopiasderespaldo(backup)dearchivosenGNU/Linux
Tutorialhacercopiasderespaldo(backup)dediscosrígidosenGNU/Linux
Tutorialconfiguraruncontafuegos(firewall)enGNU/Linux
Tutorialexaminarsinuestroordenadorestásiendoinvadidoatravésdeunrootkit
Tutorialdescubrirrootkits,backdoors,sniffersymalwareconRKHunterenGNU/Linux
TutorialmonitorearreddeInternetconntopenGNU/Linux
TutorialescaneodepuertosconNmapenGNU/Linux
TutorialusartcpdumpparaanalizarpaquetesderedenGNU/Linux
Palabrasclaves:copiasderespaldo,rsync,GRsync,seguridad,GNU,Linux,copiasdeseguridad,backup,cortafuegos,firewall,chkrootkit,rootkit,backdoor,sniffer,malware,RKHunter,ntop,monitorearred,nmap,tcpdump,capturarpaquetesred.
SeguridadenGNU/Linux
112
Tutorialrealizarcopiasderespaldo(backup)dearchivosenGNU/LinuxEnestetutorialveremoscómopodemoshacercopiasderespaldo(backup)dearchivosusandorsyncenGNU/Linux
Palabrasclaves:copiasderespaldo,copiasdeseguridad,backup,rsync,GRsync.
RsyncesunaherramientaquesirveparasincronizararchivosydirectoriosenGNU/Linux,porloqueesmuyútilalahoradehacercopiasderespaldo.Paracopiarunarchivoporejemploescribimos:
rsync-vnombre_del_archivonombre_del_archivo_de_backup
Lapróximavezqueejecutemosesamismaorden,copiaráelarchivosolamentesifuemodificado.
Siqueremoshacerunacopiaderespaldodeundirectorio:
rsync-avnombre_del_directorio/nombre_del_directorio_de_backup
Siporejemploborramosunarchivodeldirectorio,rsyncnoloborraráeneldirectoriodebackupamenosqueusemoslaopción--delete:
rsync-av--deletenombre_del_directorio/nombre_del_directorio_de_backup
Siqueremoshacerunacopiaenunordenadorremotousandossh:
rsync-av--deletenombre_del_directorio/usuario@IP_del_ordenador_remoto:/nombre_del_directorio_de_backup/
Oalcontrario:
rsync-av--deleteusuario@IP_del_ordenador_remoto:/nombre_del_directorio_de_backup/nombre_del_directorio/
Porúltimo,GRsyncesunadelasinterfacesgráficasdersyncenGNU/Linux.Lainstalamoscon:
Tutorialrealizarcopiasderespaldo(backup)dearchivosenGNU/Linux
113
sudoapt-getinstallgrsync
Másinformaciónenhttp://www.vicente-navarro.com/blog/2008/01/13/backups-con-rsync/
Tutorialrealizarcopiasderespaldo(backup)dearchivosenGNU/Linux
114
Tutorialhacercopiasderespaldo(backup)dediscosrígidosenGNU/LinuxEnestetutorialveremoscomopodemoshacercopiasderespaldo(backupeninglés)deunapartición,undiscorígidoy/odenuestrosistemaoperativoGNU/Linuxcompleto
Palabrasclaves:backup,copiasderespaldo,copiasdeseguridad,mount,sync,dd.
Abrimosunterminalyverificamoscomoestáorganizadonuestrodiscorígido:
mount
Montamoseldiscorígidoquevamosausarparagrabarlacopiasdb:
mount/media/sdb
Sivamosahacerunacopiaderespaldodeundiscorígidooparticiónqueestánmontados,ejecutamossyncparadescargarlosdatosdelamemoriaRAMaldiscorígido:
sync
Ahorayapodemoshacerlacopiaderespaldo,porejemplodeldiscorígidosdaaldiscorígidoexternomontadocomosdb:
ddif=/dev/sda|bzip2-c>/media/sdb/disco-rigido.bz2
Enunfuturo,pararestauraresamismacopia:
bzip2-c-d/media/sdb/disco-rigido.bz2|ddof=/dev/sda
Másinformaciónen:http://doc.ubuntu-es.org/Clonar_discos_duros
Tutorialhacercopiasderespaldo(backup)dediscosrígidosenGNU/Linux
115
Tutorialconfiguraruncontafuegos(firewall)enGNU/LinuxEsestetutorialaprenderemoscómoconfigurarIPTABLES,elcomandoutilizadoporNETFILTER,cortafuegospredeterminadodeGNU/Linux
Parasabersilotenemosinstalado,abrimosunterminalyescribimos:
whereisiptables
EstecomandonosdirásiIPTABLESestáinstaladoyeldirectoriodondereside.Paravercómoestáconfiguradoescribimos:
sudoiptables-L
Sitenemosalgunareglayqueremosborrarlaparacomenzardesde0:
sudoiptables-F
AhoraconfiguramosIPTABLESescribiendoreglasquepermitentráficohaciaafueradenuestrared(usarInternet,correoelectrónico,etc.)ybloqueaneltráficodesdeafuera(invasióndehackers,programasespías,etc.).
Reglaparaaceptarlasconexionesentrantes:
sudoiptables-AINPUT-mstate--stateESTABLISHED,RELATED-jACCEPT
Reglaparapermitirloopback(lo0)ybloqueartráficoa127/8:
sudoiptables-AINPUT-ilo-jACCEPTsudoiptables-AINPUT!-ilo-d127.0.0.0/8-jREJECT
Reglaparapermitirhacerping:
sudoiptables-AINPUT-picmp-micmp--icmp-type8-jACCEPT
Reglaparapermitirtráfico(Internetporejemplo)salirdenuestrared:
Tutorialconfiguraruncontafuegos(firewall)enGNU/Linux
116
sudoiptables-AOUTPUT-jACCEPT
Reglapararechazarotrotipodeconexionesentrantes:
sudoiptables-AINPUT-jREJECTsudoiptables-AFORWARD-jREJECT
Ahoratenemosquesalvarestasnuevasreglas,casocontrariocuandoapagamoselordenadoréstasseborran.Parasalvarlasinstalamoselprogramaiptables-persistent:
sudoapt-getupdatesudoapt-getinstalliptables-persistent
Elprogramanospreguntarásiqueremossalvarlasreglasconfiguradasanteriormente.Aceptamosyfinalizamoslainstalación.
Másinformaciónen:AyudaUbuntu(idiomainglés)yen:Netfilter.org(idiomainglés)
Tutorialconfiguraruncontafuegos(firewall)enGNU/Linux
117
TutorialexaminarsinuestroordenadorestásiendoinvadidoatravésdeunrootkitUnrootkitesunprogramaoconjuntodeprogramasusadosporunintrusoparaaccederaunordenadorsinservisto.EnestetutorialveremoscómoinstalarChkrootkit,unaherramientaquebuscapistasdeunrootkit.
Palabrsclaves:CHkrootkit,rootkit.
Abrimosunterminalyescribimos:
sudoapt-getinstallchkrootkit
Parausarloescribimos:
sudochkrootkit
Estaordenrealizarátodoslostests.
Otrasconfiguraciones:paraqueseejecutediariamenteabrimoselarchivo:
/etc/chkrootkit.conf
Yreemplazamos:
RUN_DAILY="false"
por
RUN_DAILY="true"
Tutorialexaminarsinuestroordenadorestásiendoinvadidoatravésdeunrootkit
118
Tutorialdescubrirrootkits,backdoors,sniffersymalwareconRKHunterenGNU/LinuxRootkitHunterescaneanuestrosistemaoperativoenbuscaderootkits,backdoors,sniffersymalware.
Palabrasclaves:Rkhuntes,rootkit,backdoor,sniffer,malware,log.
Abrimosunterminalyescribimos:
sudoapt-getinstallRkhunter
Parausarloescribimos:
sudochkrootkit--check
Estaordenrealizarátodoslostestsycrearáunarchivorkhunter.logconlosresultadosen/var/log/.
Paraactualizarelprogramaescribimos:
rkhunter--update
Paraverotrasopcionesdelmismo:
sudorkhunter--help
Tutorialdescubrirrootkits,backdoors,sniffersymalwareconRKHunterenGNU/Linux
119
TutorialmonitorearreddeInternetconntopenGNU/LinuxNTOPesunaherramientademonitoreoygeneracióndereportesdeusoderedentiemporealparaGNU/Linux.Enestetutorialveremoscomoinstalarlayusarla.
Palabrasclaves:Ntop,monitoreored,ntopng.
Parainstalarla:
sudoapt-getinstallntop
Seabriráunaventanapidiéndonoslaolasinterfacesderedamonitorar(sinolassabemospodemosusarifconfigperoengeneralsoneth0siesporcableowlan0siesredinalámbrica)yunusuario/contraseña.Unavezcompletadalainstalaciónlainiciamos:
ntop
Ahorapodemosiralainterfazwebdelaherramientaabriendounnavegadorenelpuerto3000:
http://IP_servidor:3000
Porotrolado,tenemostambiénNTOPNG,queeslasiguientegeneracióndeNTOPconunainterfazwebmásamigable.
Másinformaciónenhttp://www.ntop.org/(idiomainglés)
TutorialmonitorearreddeInternetconntopenGNU/Linux
120
TutorialescaneodepuertosconnmapenGNU/LinuxNMAPesunaherramientadeescaneodepuertosygeneracióndereportesdeusoderedentiemporealparaGNU/Linux.Enestetutorialveremoscomoinstalarlayusarla
Palabrasclaves:Nmap,puertosabiertos.
Parainstalarlaabrimosunterminalyescribimos:
sudoapt-getinstallnmap
PorejemploparaescanearnuestroservidorconIP192.168.0.10escribimos:
nmap192.168.0.10
Nosmostraráunalistadelospuertosabiertos.ValelapenaleerlaayudadeNMAP:
nmap-h
Allíporejemploencontraremosqueparasaberelsistemaoperativodelordenadorescaneadoescribimos:
nmap-O192.168.0.10
Parasaberquetipodeservidortenemosenelpuerto80:
sudonmap192.168.0.10-p80-sV
Paraescaneartodalared:
sudonmap192.168.0.0/24
Másinformaciónen:http://www.insecure.org/nmap(idiomainglés)
TutorialescaneodepuertosconnmapenGNU/Linux
121
TutorialescaneodepuertosconnmapenGNU/Linux
122
TutorialusartcpdumpparaanalizarpaquetesderedenGNU/LinuxTcpdumpesunapoderosaherramientadelíneadecomandosutilizadaparacapturar,mediantelabibliotecalibpcap,eltráficodeunaredLAN,WAN,etc.enGNU/Linux.
Palabrasclaves:red,internet,LAN,WAN,paquete,network,packet,tcpdump,commandline,líneadecomandos,GNU,Linux.
Parainstalartcpdump:
sudoapt-getinstalltcpdump
Paraverqueinterfacesderedtenemosinstaladas:
sudotcpdump-D
Paracomenzaracapturarpaquetesenlaredinalámbrica:
sudotcpdump-nS-iwlan0
Parausartcpdumpenmodoverboseentodaslasinterfacesdered:
sudotcpdump-v-iany
ParaevitarquetcpdumpbusquelosnombresdedominiodelasIPcapturadas(aceleralacaptura):
sudotcpdump-n-v
Porúltimo,paraenviarlacapturadepaquetesaunarchivo:
sudotcpdump-wnombre-archivo.txt-s0
Yparaleerlo:
sudotcpdump-rarchivo.txt
TutorialusartcpdumpparaanalizarpaquetesderedenGNU/Linux
123
Másinformaciónen:http://www.tcpdump.org/(idiomainglés)yuntutorial:http://www.alexonlinux.com/tcpdump-for-dummies(idiomainglés)
TutorialusartcpdumpparaanalizarpaquetesderedenGNU/Linux
124
ProgramarenGNU/Linux
Comocrearunscriptenlalíneadecomando(shellscript)
Tutorialbásicocrontab
TutorialComandosdeiniciodelsistemaoperativo
VariablesdelsistemaGNU/Linux
TutorialAwkcomocomandoycomolenguajedeprogramación
Palabrasclaves:shellscript,bash,programar,programartarea,crontab,modificarconfiguraciónusuario,rc.local,profile,variablesdelsistemaoperativo,variablesusuario,set,PATH,awk.
ProgramarenGNU/Linux
125
Comocrearunscriptenlalíneadecomando(shellscript)Unshellscriptesunarchivoquecontieneunaseriedecomandos.UnaopciónsumamenteútilalahoradeautomatizartareasenGNU/Linux.Enesteejemplocrearemosunscriptquemuestreunaseriedenúmeros.
Palabrasclaves:shellscript,bash,programar.
Abrimosunterminalycreamoselarchivocontar_hasta_5.sh:
cat>contar_hasta_5.sh
Escribimoslosiguienteenélysalimosconctrl+D:
#!/bin/bash
#contar_hasta_5.sh:muestraunaseriedenúmeros
count=1
while[$count-le5];do
echo$count
count=$((count+1))
done
echo"Contarhasta5."
Ahoraprocederemosadarlepermisosdeejecuciónalarchivo:
chmod755contar_hasta_5.sh
Controlamosquetodoestécorrecto:
ls-lcontar_hasta_5.sh`-rwxr-xr-x1usuariousuario147Out2016:53contar_hasta_5.sh`
Finalmenteloejecutamos:
Comocrearunscriptenlalíneadecomando(shellscript)
126
./contar_hasta_5.sh
Resultado:
1
2
3
4
5
Contarhasta5.
Comocrearunscriptenlalíneadecomando(shellscript)
127
TutorialbásicocrontabEnestetutorialveremoscomopodemoscrearyagendarunatareaenGNU/Linuxusandolautilidadcrontab
Palabrasclaves:crontab,programartarea,script.
Nota:sinosabeisutilizarvimosaconsejohacereltutorialdeesteeditorprimero.
Abrimosunterminalyescribimos:
crontab-e
Enesearchivocrontabtenemosqueescribirunaordendelasiguientemanera:
minutos(0-59)horas(0-23)dias(1-31)meses(1-12)dias_de_la_semana(0-6)orden_a_ejecutar
Podeisusarunasterisco(*)comounvalor.Porejemplo,usarunasteriscoparalasemanaharáqueelcomandoseejecutecadasemana.
Ejemplo:Paraejecutarelcomando/usr/bin/ejemplo1alas10:30a.m.cadadiaescribimos:
2910***/usr/bin/ejemplo
Siquereisespecificarmultipleshorários,tendreisquesepararporcomaslosvalores.Enesteejemploelcomandoseejecutarácada15minutos:
0,14,29,44****/usr/bin/ejemplo1
Unúltimoejemploseparandounrangodevaloresconunguión,vamosaejecutaramediodiatodoslosdíasperosolamenteenlosprimerosseismesesdelaño:
012*1-6*/usr/bin/ejemplo1
ejemplo1esunscriptpreviamentecreadoconlastareasquequeremosautomatizar,porejemplounacopiadeseguridad,unaactualizacióndelsistemaoperativo,etc.
Paralosarchivoscrontabquenecesitandepermisosdeadministradordebemosusar:
Tutorialbásicocrontab
128
sudocrontab-e
Másinformaciónen:http://crontab.org/(idiomainglés)
Tutorialbásicocrontab
129
ComandosdeiniciodelsistemaoperativoGNU/LinuxEnestetutorialveremosunaintroducciónaloscomandosejecutadoseneliniciodelsistemaoperativoGNU/Linux.
Palabrasclaves:modificarconfiguraciónusuario,rc.local,profile.
Cuandoelsistemaoperativoseinicia,tenemosarchivosqueejecutanlasórdenesbásicasdelsistema.Nosotrospodemosveromodificaresosarchivosparaadaptarlosanuestrosgustos.rc.localeselarchivoqueseejecutajustoluegodeliniciodelsistema:
cat/etc/init.d/rc.local
profileseejecutaluegodeliniciodesesióndeusuário:
cat/etc/profile
Lasconfiguracionesparticularesdecadausuárioestánenelarchivo.profileeneldirectoriodelusuário,porej.:
ComandosdeiniciodelsistemaoperativoGNU/Linux
130
cat.profile
#~/.profile:executedbythecommandinterpreterforloginshells.#Thisfileisnotreadbybash(1),if~/.bash_profileor~/.bash_login#exists.#see/usr/share/doc/bash/examples/startup-filesforexamples.#thefilesarelocatedinthebash-docpackage.
#thedefaultumaskissetin/etc/profile;forsettingtheumask#forsshlogins,installandconfigurethelibpam-umaskpackage.#umask022
#ifrunningbashif[-n"$BASH_VERSION"];then#include.bashrcifitexistsif[-f"$HOME/.bashrc"];then."$HOME/.bashrc"fifi
#setPATHsoitincludesuser'sprivatebinifitexistsif[-d"$HOME/bin"];thenPATH="$HOME/bin:$PATH"fi
ComandosdeiniciodelsistemaoperativoGNU/Linux
131
VariablesdelsistemaGNU/LinuxEnestetutorialveremosunaintroducciónalasvariablesdeambiente.
Lasvariablesdeambientesoninformacionesquedefinenparámetrosnecesariosparaelfuncionamentodelsistemaoperativoydesusprogramas,porejemplo,eltipodeshellqueusaelusuário,sudirectorioprincipaloidioma.
Palabrasclaves:variablesdelsistemaoperativo,variablesusuario,set,PATH,profile.
Paraverlasvariablesescribimos:
set
UnavariableimportanteesPATH,éstainformaquedirectoriostienenarchivosejecutables.ParaverlosdirectoriosqueestáncomoPATH:
echo$PATH
Unejemplo,siyoestoyeneldirectoriopruebasyquieroejecutarunarchivo,tendríaquecolocarlotemporalmenteenlavariablePATH:
PATH=$PATH:/pruebas
Oeditaresavariablepermanentementedentrodelarchivo/etc/profile.
VariablesdelsistemaGNU/Linux
132
TutorialAwkcomocomandoycomolenguajedeprogramaciónEstetutorialesunabreveintroducciónalusodeawkcomocomandoycomolenguajedeprogramaciónenGNU/Linux
Palabrasclaves:awk,script.
Awknoessolounprogramautilitariosinotambiénunlenguajedeprogramación,loquelohaceútilalahoradecrearscriptstambién.Fuediseñadoparaextraerdatosporloqueaquíveremosalgunosejemplos.
Veamoselprimero.Abrimosunterminalyescribimos:
dpkg-l|awk'{print$2}'>instalados.txt
Enestecasoawkcrearáunarchivollamadoinstalados.txtconunlistadodelasegundacolumnadelcomandodpkg-lquemuestraelnombredelosprogramasinstaladosennuestroordenador.
Siqueremosimprimirtodaslascolumnas:
dpkg-l|awk'{print$0}'>instalados.txt
Otroejemplo,enestecasoprogramandoelclásico"HolaMundo":
awk"BEGIN{print\"HolaMundo\"}"
Paraimprimirnuevenúmerosaleatorios:
awk'BEGIN{for(i=1;i<=9;i++)printint(101*rand())}'
Contarlafrecuenciasdelaspalabrasdelarchivoinstalados.txt:
awk'BEGIN{FS="[^a-zA-Z]+"}\{for(i=1;i<=NF;i++)words[tolower($i)]++}\END{for(iinwords)printi,words[i]}'instalados.txt
Másejemplosen:http://www.linux-es.org/node/31
TutorialAwkcomocomandoycomolenguajedeprogramación
133
Elmanualcompleto:http://www.gnu.org/software/gawk/manual/gawk.html(idiomainglés)
TutorialAwkcomocomandoycomolenguajedeprogramación
134
BibliografíaLoslibroselectrónicoslospodeisdescargardemibloghttps://www.fortinux.com
PERPIÑAN,A.(2007).BásicamenteGNU/LINUXSegundaedición.SantoDomingo(Rep.Dominicana):ImpresosGamma.
SHOTTS,W.E.Jr.(2009).TheLinuxCommandLine.http://linuxcommand.org.Consultado:27/03/2013.
WILDING,M.,BEHMAN,D.(2005).Self-ServiceLinux®MasteringtheArtofProblemDetermination.USA:PrenticeHall-BrucePerens’OpenSourceSeries.
KIRCH,O.(1999).GuíadeAdministracióndeRedesconLinux,(TraducciónProyectoLuCAShttp://es.tldp.org/).
Bibliografía
135
AnexoA:RecursosLinuxformscrach(LFS):UnproyectoqueproveeinstruccionespasoapasoparacrearnuestrapropiaversiónpersonalizadadeGNU/Linux.http://www.linuxfromscratch.org/index.html
Explainshell.com:Nosmuestralaayudadecadacomandoquenosotrosescribimos.Sumamenteútilparaentenderloqueestamoshaciendo.http://explainshell.com/
Openvim.comUntutorialinteractivodeVim.Recomendable.http://www.openvim.com/
AnexoA:Recursos
136