Académique Documents
Professionnel Documents
Culture Documents
Multimedia y Telecomunicaciones
PEC1_SOGNU/LINUXBsico_DavidPlaza
Con una nica lnea de comandos debis hacer un listado slo con los
campos TAMAO y NOMBRE de todos los ficheros (incluidos los ocultos)
del directorio actual (en el que estis) y ordenarlos por tamao, de mayor
tamao a menor tamao, y el resultado del listado se tiene que
almacenar en un fichero llamado 'listadoportamanyo.lst'.
ls -ashSl > .../listadoportamanyo.lst
Desde el directorio /var/log lanzo el comando que aparece arriba. El modificador -a muestra todos los ficheros,
incluidos los ocultos. Para que aparezcan slo los campos TAMAO y NOMBRE utilizo al mismo tiempo los
modificadores -s y -h. Con -l obtengo un fichero por lnea.
Con los comandos head y tail muestro el principio y el final del fichero que contiene el listado.
-S, --sort=size
Clasifica los contenidos de los directorios por los tamaos de los ficheros
vez de alfabticamente, con los ficheros ms grandes en primer lugar.
-a
en
-1, --format=single-column
Lista un fichero por lnea.
estndar no es una terminal.
Esto
es
lo
predetermindo
cuando
la
salida
-s, --size
Muestra el tamao de cada fichero en bloques de 1009 bytes a la izquierda del
nombre. Si la variable de entorno POSIXLY_CORRECT est definida, se emplean en
su lugar bloques de 512 bytes, a menos que se haya dado la opcin.
-h, --human-readable
Aade una letra indicativa
(mebibytes), a cada tamao.
PEC1_SOGNU/LINUXBsico_DavidPlaza
Buscando en Internet he encontrado una alternativa con el comando du (utilizacin de disco) enlazado con el
comando sort (ordena). El resultado es similar:
du -cs * | sort -rn > /home/uoc09/linuxbasico/PEC1/salidaportamanyo2.lst
12868
10096
456
336
272
200
148
148
120
108
100
...
4
4
0
0
0
0
0
0
0
0
0
0
total
installer
dpkg.log.1
kern.log.0
messages.0
syslog.0
syslog
kern.log
messages
wtmp.1
debug.0
acpid.1.gz
acpid
uucp.log
scrollkeeper.log
pycentral.log
mysql.log
mysql.err
imapproxy_protocol.log
dpkg.log
btmp.1
btmp
aptitude
PEC1_SOGNU/LINUXBsico_DavidPlaza
Segn la ayuda, el -atime restringe la bsqueda a ficheros a los que se haya accedido (en lectura o escritura)
por unidades de tiempo de das, empezando por uno. De forma que el valor 7 representa 7 bloques de 09horas
ms el pico de la hora en que estemos, lo que siempre da un resultado n+1.
El resultado es que buscamos todos los ficheros desde raz a los que se haya accedido en los ltimos ocho
das.
La salida se concatena con un pipeline hacia el comando tee. Este comando lee el contenido de la salida
estndard (pantalla) y duplica el resultado mostrndolo por pantalla y envindolo a un fichero.
El ltimo pipeline cuenta las palabras (WC, word count) pero lnea a lnea lo que en realidad proporciona un
nmero del total de ficheros encontrados.
Si lanzamos el comando como root,
Endurance:/home/uoc09#
PEC1_SOGNU/LINUXBsico_DavidPlaza
2.- Cread un directorio llamado padre que contenga tres archivos llamados
hijo1.txt, hijo2.txt y hijo3.txt con el texto Hola, soy el hijo NUM, donde NUM es
el numero de hijo de cada fichero.
Comprimid cada uno de estos ficheros con gzip y ponedlos en un directorio
llamado padre.
Endurance:/home/uoc09/UOC/PEC1# mkdir padre
Endurance:/home/uoc09/UOC/PEC1# ls
david_plaza_jimenez_pec1.odt padre
Endurance:/home/uoc09/UOC/PEC1# cd padre/
Endurance:/home/uoc09/UOC/PEC1/padre# touch hijo1.txt
Endurance:/home/uoc09/UOC/PEC1/padre# touch hijo2.txt
Endurance:/home/uoc09/UOC/PEC1/padre# touch hijo3.txt
Endurance:/home/uoc09/UOC/PEC1/padre# echo
Endurance:/home/uoc09/UOC/PEC1/padre# echo
Endurance:/home/uoc09/UOC/PEC1/padre# echo
Proceso compresin.
Endurance:/home/uoc09/UOC/PEC1/padre# mkdir ../padregz
Endurance:/home/uoc09/UOC/PEC1# gzip -r padre
Endurance:/home/uoc09/UOC/PEC1/padre# ls
hijo1.txt.gz hijo2.txt.gz hijo3.txt.gz
Endurance:/home/uoc09/UOC/PEC1/padre# mv * ../padregz/
Despus de comprimir todos los ficheros del directorio padre, los movemos al directorio padregz.
PEC1_SOGNU/LINUXBsico_DavidPlaza
root/root
root/root
root/root
root/root
0
50
50
50
2009-03-09
2009-03-09
2009-03-09
2009-03-09
19:50:33
19:50:49
19:50:55
19:50:45
padre/
padre/hijo2.txt.gz
padre/hijo3.txt.gz
padre/hijo1.txt.gz
1 root
1 root
root
root
PEC1_SOGNU/LINUXBsico_DavidPlaza
Descomprimid los dos ltimos ficheros que habis creado (.gzip y .bz2) en
directorios distintos, i comprobad de forma automtica, que los
contenidos son idnticos.
Con el modificador -d puedo descomprimir tanto con el comando gzip como con el comando bzip2.
Endurance:/home/uoc09/linuxadmin/PEC1# gzip -d padre.tar.gz
Endurance:/home/uoc09/linuxadmin/PEC1# bzip2 -d padre_copia.tar.bz2
Endurance:/home/uoc09/linuxadmin/PEC1# tar -tvf padre.tar
drwxr-xr-x root/root
0 2009-03-09 19:50:33 padre/
-rw-r--r-- root/root
50 2009-03-09 19:50:49 padre/hijo2.txt.gz
-rw-r--r-- root/root
50 2009-03-09 19:50:55 padre/hijo3.txt.gz
-rw-r--r-- root/root
50 2009-03-09 19:50:45 padre/hijo1.txt.gz
Endurance:/home/uoc09/linuxadmin/PEC1# tar -tvf padre_copia.tar
drwxr-xr-x root/root
0 2009-03-09 19:50:33 padre_copia/
-rw-r--r-- root/root
50 2009-03-09 19:50:49 padre_copia/hijo2.txt.gz
-rw-r--r-- root/root
50 2009-03-09 19:50:55 padre_copia/hijo3.txt.gz
-rw-r--r-- root/root
50 2009-03-09 19:50:45 padre_copia/hijo1.txt.gz
Endurance:/home/uoc09/linuxadmin/PEC1# gzip -r -l padre > padre.lst
Endurance:/home/uoc09/linuxadmin/PEC1# gzip -r -l padre_copia > padre_copia.lst
Endurance:/home/uoc09/linuxadmin/PEC1#
PEC1_SOGNU/LINUXBsico_DavidPlaza
Contestad los siguientes puntos sobre el comando file y los magic numbers.
Donde se configuran y definen todos los magic numbers usados por el comando
file?
PEC1_SOGNU/LINUXBsico_DavidPlaza
\037\213
padre.tar.gz
BZh
>47
) \0
0000010
223
020
A \0
@ \0 177 200 \0 002 \0 \b
10
\0
o
PEC1_SOGNU/LINUXBsico_DavidPlaza
11
PEC1_SOGNU/LINUXBsico_DavidPlaza
NAME_REGEX
User names are checked against this regular expression. If the name doesnt match this regexp, user
creation is refused unless --force-badname is set. With --force-badname set, only weak checks are performed.
The default is the most conservative ^[a-z][-a-z0-9]*$.
Si lo forzamos,
Endurance:/etc# adduser --force-badname usuario_pec
Allowing use of questionable username.
Adding user `usuario_pec' ...
Adding new group `usuario_pec' (1004) ...
Adding new user `usuario_pec' (1004) with group `usuario_pec' ...
Creating home directory `/home/usuario_pec' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: contrasea actualizada correctamente
Cambiando la informacin de usuario para usuario_pec
Introduzca el nuevo valor, o presione ENTER para el predeterminado
Nombre completo []: Usuario Pec
Nmero de habitacin []:
Telfono del trabajo []:
Telfono de casa []:
Otro []:
Es correcta la informacin? [y/N] y
Con la configuracin del fichero adduser.conf, el directorio de trabajo se crea por defecto.
El resultado en /etc/passwd es la siguiente lnea:
Endurance:/etc# cat /etc/passwd | grep usuario_pec
usuario_pec:x:1004:1005:,,,:/home/usuario_pec:/bin/bash
La lnea creada contiene el directorio personal (/home/usuario) y la shell pero faltan los campos requeridos en
el enunciado. Entre ellos es necesario crear manualmente el grupo principal con el comando groupadd para
poder usarlo ms tarde:
Endurance:/etc# groupadd grupo_pec
12
PEC1_SOGNU/LINUXBsico_DavidPlaza
Nmero de das que deben transcurrir hasta que la contrasea se pueda volver a
cambiar.
Nmero de das tras los cuales hay que cambiar la contrasea. (-1 significa nunca). A
partir de este dato se obtiene la fecha de expiracin de la contrasea.
Fecha de caducidad de
1/Enero/1970 (epoch).
Reservado.
la
cuenta.
Se
expresa
en
das
transcurridos
desde
el
Para configurar el tiempo de vida de la clave y dems fechas asociadas cambiamos a mano el fichero y
modificamos los campos siguientes:
Caducidad de la contrasea: 30 das (la contrasea slo se podr cambiar cuando caduque, no antes)
(campos 4 y 5)
Das que tienen que pasar despus de que caduque la contrasea antes de bloquear
automticamente la cuenta de usuario: 7 das (campo 7)
13
PEC1_SOGNU/LINUXBsico_DavidPlaza
4-. Cread un script que admita como parmetro un fichero con la misma
estructura que el fichero /etc/passwd y dos parmetros ms que indicaran la
shell que queremos sustituir y el nuevo valor de shell a poner. El objetivo es
sustituir todas las apariciones en el fichero de la shell a sustituir por la nueva
shell. Hay que hacer las comprobaciones oportunas como por ejemplo que la
nueva shell existe en el sistema. Un ejemplo de la llamada del script podria ser
el siguiente:
$ shellreplace.sh /etc/passwd /bin/bash /bin/tcsh.
Se crea un fichero llamado change.sh:
touch change.sh
#!/bin/bash
echo -n 'Cadena origen: '
read origen
echo -n 'Cadena destino: '
read destino
sed
mv -f fich $1 # Renombra el fichero original con el fichero temporal con los cambios.
exit 0
Las comillas simples incluyen los argumentos del comando sed. El comando sed es un editor de cadenas que
es capaz de trabajar con la salida de un comando anterior (se puede encadenar con pipes). En el ejemplo no se
ha usado esta opcin (se podra haber hecho un cat $3 | sed . ) pero es la principal caracterstica del
comando.
Dentro de las comillas, el modificador s indica sustitucin. La g final significa que el cambio es global, que
afecta a todas las ocurrencias. Si no se pone, se cambia slo la primera aparicin.
Para que funcione correctamente es fundamental que la separacin entre la cadena origen y la destino se haga
con el separador ^ en lugar de con / . La razn es que el contenido de las cadenas a cambiar es una variable
origen o destino cuyo contenido es adems una ruta que contiene caracteres especiales /xxx/xxx.
Igualmente, la variable tambin hay que ponerla entre comillas simples.
Endurance:/home/uoc09# touch change.sh
Endurance:/home/uoc09# chmod a+x change.sh
Endurance:/home/uoc09# vi change.sh
14
PEC1_SOGNU/LINUXBsico_DavidPlaza
15
PEC1_SOGNU/LINUXBsico_DavidPlaza
En esta primera PEC se proponen dos temas de discusin. Para completar esta
pregunta ser necesario buscar informacin -- en Internet o cualquier otra
fuente -- exponerla en el espacio de debate y al final presentar las
conclusiones/comentarios en el informe de la PEC. La discusin se tiene que
desarrollar en el espacio 'Debate' del aula.
16
PEC1_SOGNU/LINUXBsico_DavidPlaza
A. RESUMEN OPENOFFICE.
El debate sobre la suite ofimtica OpenOffice ha cubierto cinco asuntos fundamentales:
Usabilidad.
ORIGEN Y EVOLUCIN.
Se sita el origen de la suite en la liberacin del cdigo de StartOffice tras la compra de StarDivisin por Sun. Sun public el
cdigo bajo doble licencia (SISSL de Sun) y LGPL hasta el 2005. Desde ese momento slo se mantiene la licencia LGPL que,
siendo libre, no coincide exactamente con la filosofa FSF de software libre.
Es un producto multiplataforma: existe OpenOffice para GNU/Linux y para sistemas derivados de Unix, Osx y Windows.
Es una suite ofimtica que contiene un procesador de Textos (Writer), una hoja de clculo (Cal), un diseador de diapositivas
(Impress), un diseador de graficos vectoriales (Draw) y una gestor de bases de datos.
ESTNDARES.
OpenOffice aporta ODF, un formato abierto de fichero basado en XML para aplicaciones de oficina, como documentos que
contengan texto, hojas de clculo, diagramas y elementos grficos. La especificacin v1.0 ha sido aprobada como la ISO y
IEC International Standard ISO/IEC 26300:2006.
La versin actual es la OpenDocument v1.1 Specification, aprobada como OASIS Standard el 2 de Febrero de 2007.
MIGRACIN y EXPERIENCIAS.
Algunas contribuciones han contado el proceso de migracin y experiencias de aprendizaje:
Hoy en da supone un esfuerzo mayor en el aprendizaje el pasar de un MS Office 2003 a un 2007 que a un Open Office 3.0 y
creo que esto puede ser un buen apoyo para esta plataforma, que tambin hay que decir que ha mejorado mucho en su
ltima versin. Aunque yo pienso que Office esta un paso por delante y que actualmente MS ha conseguido una interfaz ms
intuitiva y accesible para su suite.
En primer lugar mi experiencia propia ms directa fue la de aprender ms al detalle ambas suites para la imparticin de
cursos de aprendizaje sobre estas. Dio la casualidad de que tuve que ensear MS Office 2007 a gente adulta y Open Office
2.4 a nios de entre 8 y 14 aos. Sin tener en cuenta la gran capacidad de aprendizaje de un nio, les resultaba ms sencillo
aprender Open Office desde cero, ya que algunos no haban usado nunca una suite ofimtica que a un adulto el pasar a
manejar un MS Office 2007 habiendo usado anteriormente MS Office 2003.
CULTURA OPENOFFICE.
Se ha incidido en el uso de este tipo de software para ser usado en pases con lenguas minoritarias o en peligro de
desaparicin:
Un aspecto favorable en general del software libre y en especial del OpenOffice es su rol inclusivo; por ejemplo, en estas
latitudes pases como Chile, Per, Bolivia y Ecuador donde nos une el idioma ancestral: el quechua, mucha gente hablante
de este idioma adems que poco a poco acceden a las nuevas tecnologas gracias a muchas iniciativas como el OLPC,
renueva la identidad cultural en estos pases y qu mejor contar con iniciativas como el diccionario del OpenOffice en
quechua (actualmente disponible) y el proyecto Runasimipi (para crear una versin enteramente en quechua).
USABILIDAD.
Los participantes en el debate coinciden en la supremaca del paquete Office de Microsoft (la joya de la corona de la
multinacional norteamericana) en la interaccin y compatibilidad de sus mdulos pero tambin reconocen que para la mayora
de los usuarios el estado actual de la suite OpenOffice la hace funcional para la mayora de las tareas de uso diario. La
compatibilidad con formatos M$Office 2003 es muy alta y la inclusin de los formatos .docx o .xlsx como stndard ISO debe
mejorar la compatilidad a medio plazo.
17
PEC1_SOGNU/LINUXBsico_DavidPlaza
B. REMASTERING KNOPPIX.
Asuntos ms importantes sobre los que se ha hablado en el foro:
Qu es remasterizar.
Herramientas de remastering.
DEFINICIN REMASTER.
Se puede definir como personalizar una distribucin ya existente (Knoppix, por ejemplo) para aadir funciones que no estn
de entrada (idioma del teclado, logotipo, colores corporativos) o para quitar opciones innecesarias (aligerar el tamao y el
tiempo de carga). De alguna forma es convertir una distribucin ms o menos genrica en una distribucin dedicada a una
tarea especfica.
HERRAMIENTAS DE REMASTERING.
Algunas herramientas citadas en el foro para construir tu propia distribucin en base a una dada.
http://reconstructor.aperantis.com/
GUAS REMASTERING.
Algunos enlaces citados como guas paso a paso de remastering.
http://www.knoppix.net/wiki/Knoppix_Remastering_Howto_Spanish
http://www.knoppix-es.org/?q=knoppix-remaster
http://www.knoppix.net/wiki/Knoppix_Customizations
http://www.wikilearning.com/tutorial/distribucion_knopix_de_la_plataforma_gnu_linuxmodificar_una_distribucion_knoppix_livecd/8751-1
http://jornadas.kleenux.org/materiales/remasterizacion_victor_alonso/docremasterizacion_KNOPPIX_Educacion_Victor_Alonso_Elche2006.pdf.gz
INICIATIVAS REMASTERIZACIN.
Se han citado numerosas redistribuciones. Selecciono algunas que me interesan personalmente:
Knoppix STD (security tools distribution) es una distribucin a medida de Knoppix que se centra en las
herramientas de seguridad informtica.
Adriane Knoppix, proyecto que se basa en la creacin de una distribucin Linux orientada a las personas ciegas o
con problemas de visin.
https://www.linuxfromscratch.org
ClusterKnoppix es una distribucin basada en Knoppix y que utiliza Linux Terminal Server Project y openMosix. Es
una va conveniente para probar configuraciones en cluster de computadores cluster.
Kurumin es una distribucin basada en Knoppix que se fija en un mini-CD. Incluye aplicaciones estndares de
escritorio, documentacin y un e-book que sirve de introduccin a Linux para los usuarios.
18