Advertisement
Guest User

Pr1 SO

a guest
Sep 19th, 2014
257
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 34.11 KB | None | 0 0
  1. Trabajo Práctico Nº 1
  2. Introducción a GNU/Linux
  3. Objetivo
  4. El objetivo de esta práctica es que el alumno se familiarice con los conceptos básicos
  5. del sistema operativo, así como su entorno y comandos principales
  6. 1.- Particiones:
  7. a) Definición. Tipos de particiones. Ventajas y Desventajas.
  8. b) ¿Cómo se identifican las particiones en GNU/Linux? (Considere discos IDE, SCSI
  9. y SATA)
  10. c) ¿Cuantas particiones son necesarias como mínimo para instalar GNU/Linux?
  11. ¿Cuáles?
  12. d) Ejemplifique diversos casos de particionamiento dependiendo del tipo de tarea
  13. que se deba realizar en su sistema operativo
  14. e) ¿Qué tipo de software para particionar existe? Menciónelos y compare
  15. 2.- Arranque de un Sistema Operativo
  16. a) ¿Qué es el MBR? ¿Qué es el MBC?
  17. b) ¿Cuál es la funcionalidad de un “Gestor de Arranque”? ¿Qué tipo existen?
  18. ¿Dónde se instalan? Cite gestores de arranque conocidos.
  19. c) Cuales son los pasos se suceden desde que se prende una computadora hasta
  20. que el Sistema Operativo es cargado (bootstrap).
  21. d) Analice el proceso de arranque en GNU/Linux.
  22. e) Cuales son los pasos que se suceden en el proceso de parada (shutdown) de
  23. GNU/Linux.
  24. f) ¿Es posible tener en una PC GNU/Linux y otro Sistema Operativo instalado?
  25. Justifique.
  26. 3.- Características de GNU/Linux
  27. a) Mencione y explique las características más relevantes de GNU/Linux.
  28. b) Mencione otros sistemas operativos y compárelos con GNU/Linux en cuanto a los
  29. puntos mencionados en el inciso a.
  30. c) ¿Por qué cree que en GNU/Linux
  31. ”todo es un archivo”? Justifique.
  32. d) Explique que es la multitarea preventiva, e indique si GNU/Linux hace uso de ella.
  33. e) ¿Qué es POSIX?
  34. 4.- Distribuciones de GNU/Linux
  35. a) Investigue acerca de las principias distribuciones de GNU/Linux.
  36. b) ¿En qué se diferencia una distribución de otra?
  37. 5.- Estructura de GNU/Linux.
  38. a) Nombre cuales son los 3 componentes más fundamentales de GNU/Linux.
  39. b) Mencione y explique la estructura básica del Sistema Operativo GNU/Linux.
  40. 6.- Kernel
  41. a) ¿Qué es?
  42. b) ¿Cuáles son sus funciones principales?
  43. c) ¿Que versiones existen? ¿Cómo se las diferencian? ¿Qué cambio en el
  44. versionado se impuso a partir de la versión 2.6?
  45. d) Es posible tener más de un Kernel de GNU/Linux.
  46. e) ¿Dónde se encuentran ubicados dentro del File System?
  47. f) ¿El Kernel de GNU/Linux es monolítico? Justifique.
  48. 7.- Intérprete de comandos (Shell)
  49. a) ¿Qué es?
  50. b) ¿Cuáles son sus funciones?
  51. c) Mencione al menos 3 tipos de intérpretes de comandos que posee GNU/Linux y
  52. compárelos entre ellos.
  53. d) ¿Donde se ubican (ruta) los comandos propios y externos al Shell?
  54. e) ¿Por qué considera que el Shell no es parte del Kernel de GNU/Linux?
  55. 8.- Sistema de Archivos (File System)
  56. a) ¿Qué es?
  57. b) Mencione sistemas de archivos soportados por GNU/Linux.
  58. c) ¿Es posible visualizar particiones del tipo FAT y NTFS en GNU/Linux? Que
  59. limitaciones existen actualmente en cuanto a las operaciones que se pueden hacer
  60. sobre ellas.
  61. d) ¿Cuál es la estructura básica de los file System en GNU/Linux?
  62. Mencione los
  63. directorios más importantes e indique que tipo de información se encuentra en ellos.
  64. ¿A qué hace referencia la sigla FHS?
  65. 9.- Comandos (Investigue su funcionamiento y parámetros más importantes):
  66. a) cd
  67. b) ls
  68. c) pwd
  69. d) df
  70. e) shutdown
  71. f) reboot
  72. g) halt
  73. h) find
  74. i) locate
  75. j) uname
  76. k) dmesg
  77. l) who
  78. m) lspci
  79. n) at
  80. o) touch
  81. p) netstat
  82. q) tail
  83. r) head
  84. s) mount
  85. t) umount
  86. u) losetup
  87. v) write
  88. w) mkfs
  89. x) fdisk (con cuidado)
  90. 10.- Indique en que directorios se almacenan los comandos mencionados en el ejercicio 9.
  91. 11.- Archivos
  92. a) ¿Cómo se identifican los archivos en GNU/Linux?
  93. b) Investigue el funcionamiento del editor vi, mcedit, el comando cat y more.
  94. c) Cree un archivo llamado “prueba.exe” en su directorio personal usando el vi. El
  95. mismo debe contener su número de alumno y su nombre.
  96. d) Investigue el funcionamiento del comando file. Pruébelo con diferentes archivos.
  97. ¿Qué diferencia nota?
  98. e) Utilice el editor vi para editar el archivo anteriormente creado.
  99.  
  100. 1.a)
  101. Una partición es el nombre genérico que recibe cada división presente es una sola unidad física de almacenamiento de datos.
  102. Existen 3 tipos de particiones diferentes:
  103. Partición primaria: Son aquellas particiones crudas del disco, solo puede haber 4 de estas o 3 y una extendida. Estas dependen de una tabla de particiones. Un disco completamente formateado consiste, en realidad, de una partición primaria que ocupa todo el tamaño del disco con un sistema de archivos. A este tipo de
  104. particiones básicamente cualquier tipo de S.O puede detectarlas y asignarle una unidad, siempre y cuando reconozca su sistema de archivos.
  105. Partición extendida: También conocida como partición secundaria, actúa como una partición primaria. Solo sirve para contener una infinidad de unidades lógicas en su interior. Fue ideada para romper la limitación de 4 particiones primarias en un solo disco físico. Solo puede existir una partición de este tipo por disco. Por lo tanto, es el único tipo de partición que no soporta un sistema de archivos directamente.
  106. Partición lógica: Ocupa una porción de la partición extendida o la totalidad de la misma, la cual se ha formateado con un tipo específico de sistema de archivos y se le ha asignado una unidad, así el S.O reconoce las particiones lógicas. Puede haber un máximo de 23 particiones lógicas en una partición extendida.
  107. Ventajas:
  108. Algunos sistemas de archivos (Ej. versiones antiguas de sistemas FAT de Microsoft) tienen tamaños máximos más pequeños que los que el tamaño que proporciona un disco, siendo necesaria una partición de tamaño pequeño, para que sea posible el adecuado funcionamiento de este antiguo sistema de archivos.
  109. Se puede guardar una copia de seguridad de los datos del usuario en otra partición del mismo disco, para evitar la pérdida de información importante. Esto es similar a un RAID, excepto en que está en el mismo disco.
  110. En algunos sistemas operativos aconsejan más de una partición para funcionar, como por ejemplo, la
  111. partición de intercambio (swap) en los sistemas operativos basados en Linux.
  112. A menudo, dos sistemas operativos no pueden coexistir en la misma partición, o usar diferentes formatos de disco “nativo”. La unidad se particiona para diferentes sistemas operativos.
  113. Uno de los principales usos que se le suele dar a las particiones (principalmente a la extendida) es la de almacenar toda la información del usuario (entiéndase música, fotos, vídeos, documentos), para que al momento de reinstalar algún sistema operativo se formatee únicamente la unidad que lo contiene sin perder el resto de la información del usuario
  114. Desventajas:
  115. Si la idea de la partición es el resguardo de la información no es una forma 100% segura, ya que en realidad no se poseen dos disco sino uno solo. Por lo que si el disco sufre algún daño físico irremediable la información que queríamos resguardar seguramente se vio afectada. En estos casos siempre es mejor guardar la información en otros dispositivos de almacenamiento.
  116. Entre más y más particionemos nuestros discos menor va hacer la capacidad de los mismos; no es de mucha utilidad tener varias particiones de poca capacidad a la hora de trabajar con programas complejos, utilizar archivos pesados, guardar mucha información en un mismo lugar.
  117. 1.b)
  118. En los discos IDE las particiones se ven de la siguiente manera:
  119. /dev/hda – Configurado como Master en el 1º bus IDE
  120. /dev/hdb – Configurado como Slave en el 2º bus IDE
  121. /dev/hdc – Configurado como Master en el 1º bus
  122. IDE
  123. /dev/hdd – Configurado como Slave en el 2º bus IDE
  124. /dev/hde –
  125. En los discos SATA y SCSI las particiones se ven de la siguiente manera:
  126. /dev/sda –
  127. /dev/sdb –
  128. /dev/sdc –
  129. /dev/sdd –
  130. /dev/sde –
  131. Donde (a, b, c, d, e, …) van acompañadas de números que van a partir de 1 en orden creciente conforme las letras. Las unidades o particiones primarias van del 1 al 4 (son las únicas que pueden ser marcadas como activas o boteables) y las extendidas a partir del 5 en adelante.
  132. 1.c)
  133. Generalmente se usan 3 particiones para la instalación de un sistema similar o basado en UNIX, pero mínimamente solo se necesitan las primeras 2 para que la instalación funcione correctamente.
  134. (/): Es la principal, indica el directorio raíz.
  135. (swap): Se usa para memoria virtual, es la partición de intercambio que posee réplicas de memoria RAM para dejarle a la RAM más espacio para tareas de primer plano. Esta partición tranquilamente puede instalarse es una partición lógica.
  136. (/home): Contiene la configuración de los usuarios, indica el directorio home (Mis Documentos en Windows).
  137. 1.d) Ejemplifique diversos casos de particionamiento dependiendo del tipo de tarea que se deba realizar en su sistema operativo
  138. 1.e)
  139. Existen 2 tipos de software para particionar los destructivos y los no destructivos.
  140. Destructivos: Es aquel software que permite crear y/o eliminar particiones. Ej fdisk
  141. No destructivos: Son aquellos software que permites crear, eliminar y modificar particiones. Ej fips,
  142. Easeus.
  143. 2.a)
  144. El MBR (Master boot record) es el primer sector ("sector cero") de un dispositivo de almacenamiento de datos, como un disco duro (CHS 0, 0, 1). A veces, se emplea para el arranque del sistema operativo con bootstrap, otras veces es usado para almacenar una tabla de particiones (a partir del byte 446) y, en ocasiones, se usa sólo para identificar un dispositivo de disco individual, aunque en algunas máquinas esto último no se usa y es ignorado.
  145. Si el disco es "bootable", los primeros 446 bytes del MBR, están ocupados por un pequeño trozo de código denominado código maestro de carga MBC ("Master Boot Code") o cargador inicial (bootstrap loader), que es cargado por la BIOS para comenzar el proceso de carga. Este repasa la tabla maestra de particiones buscando una partición activa. En caso de encontrarla, busca su sector inicial, carga su código en memoria, y le transfiere el control. Dicho código es ya capaz de cargar y ejecutar cualquier otro programa situado en cualquier partición del disco. Que a su vez inicializará directamente el SO, o tal vez una utilidad conocida como gestor de arranque, que permite elegir entre distintas alternativas.
  146. 2.b)
  147. Gestores de arranque
  148. Son sistemas de computación impulsados por un procesador central o un conjunto de procesadores, sólo pueden ejecutar código en la memoria de funcionamiento. Que pueden ser implementados en varias tecnologías: ROM, RAM, dispositivos no volátiles de memoria periférica y dispositivos de almacenamiento masivo.
  149. La funcionalidad de un gestor de arranque es preparar todo lo que el S.O necesite para funcionar correctamente. A estos muchas veces se le suman pequeños programas hasta que el último de ellos carga efectivamente el S.O.
  150. Hay varios tipos de gestores de arranque:
  151. * Gestor de arranque de segunda etapa: Lilo o Grub (permiten elegir entre varios S.O que se encuentre instalados).
  152. * Gestor de arranque flash: Aquellos basados en protocolo Can
  153. * Gestor de arranque de red: Aquellos basados en protocolo Trivial File Transfer Protocol (Preboot eXecution Environment)
  154. Hay otros tipos de gestores de arranque para procesadores de señal digital:
  155. * Modo de arranque de serie
  156. * Modo paralelo de arranque
  157. * HPI boot
  158.  
  159. 2.c)
  160. Bootstrap:
  161. * Se alimenta la BIOS y esta carga de su ROM una rutina llamada POST (Power On Selt-Test) que se encarga de realizar una serie de test para verificar el estado de los hardware.
  162. * La BIOS carga el MBR del disco y comprueba su tabla de particiones en busca de una bootable.
  163. * Toma el control el cargador de arranque GRUB (GNU), Lilo (Linux) o NTLDR (Windows) que continua con la carga del S.O.
  164. * Toma el control el S.O.
  165. 2.d)
  166. Todo el proceso de arranque se lleva a cabo en 4 etapas reconocidas por el código que en ese momento tiene control sobre la CPU; al inicio solo el BIOS tiene control, después será el cargador de arranque quien tenga en control, más adelante el control pasa al propio kernel, y en la última etapa será cuando
  167. tengamos en memoria los programas de usuario conviviendo junto con el propio S.O y serán ellos quienes tengan el control del CPU.
  168. * BIOS: Se lleva acabo el POST, una vez reconocido y listo el hardware, el BIOS carga en memoria el código ejecutable del cargador de arranque y le pasa el control. Hay variedad de BIOS que permiten elegír el dispositivo/partición donde se encuentra dicho cargador de arranque.
  169. * Cargador de arranque: Como en la mayoría de arquitecturas, este programa se encuentra en el MBR, el cual es de 512 bytes, no es suficiente para cargar en su totalidad un sistema operativo. Por eso, el cargador de arranque consta de varias etapas.
  170. GRUB se carga y se ejecuta en 4 etapas:
  171. 1. La primera etapa del cargador lee el BIOS desde el MBR.
  172. 2. La primera etapa carga el resto del cargador (segunda etapa). Si la segunda etapa está en un dispositivo grande, se carga una etapa intermedia (llamada etapa 1.5), la cual contiene código extra que permite leer cilindros mayores que 1024 o dispositivos tipo LBA.
  173. 3. La segunda etapa ejecuta el cargador y muestra el menú de inicio de GRUB. Aquí se permite elegir un sistema operativo junto con parámetros del sistema.
  174. 4. Cuando se elige un sistema operativo, se carga en memoria y se pasa el control.
  175. LILO es más antiguo y es casi idéntico a GRUB en su proceso, excepto que no contiene una interfaz de línea de comandos. Por lo tanto todos los cambios en su configuración deben ser escritos en el MBR, y
  176. reiniciar el sistema.
  177. * KERNEL: El proceso del kernel se lleva en dos etapas; la etapa de carga y la etapa de ejecución. El kernel generalmente se almacena en un archivo comprimido con zlib. Este archivo comprimido se carga y se descomprime en memoria, también se cargan los drivers necesarios por medio de un disco RAM (initrd). Una vez que el kernel se ha cargado en memoria y está listo, se lleva a cabo su ejecución mediante la función startup_32(), esta establece el manejo de memoria, detecta el tipo del CPU y funcionalidad adicional. Después cambia a funcionalidades que no dependen del hardware por medio de la llamada a la función start_kernel().El proceso de arranque en GNU/Linux monta el disco RAM que fue cargado anteriormente como un sistema de archivos temporal. Se inicializan dispositivos virtuales con la intención de ser usados para crear sistemas de archivos, como LVM o software RAID antes de desmontar la imagen initrd. El sistema de archivos es cambiado por medio de la función pivot_root() la cual desmonta el sistema de archivos temporal y lo reemplaza con el real, el cual más tarde estará totalmente disponible liberando la memoria que ocupaba el temporal. Una vez listo el manejador de excepciones, el planificador de tareas y demás, por fin el sistema se considera totalmente operacional a nivel de procesos, por lo tanto se ejecuta el proceso init (el primer proceso en espacio de usuario), y luego inicia una tarea de inactividad por medio de cpu_idle().
  178. *
  179. PROGRAMAS DE USUARIO (INIT): El proceso init establece el entorno de usuario. Verifica y monta los sistemas de archivos, inicia servicios de usuario necesarios y cambia a un entorno basado en usuario cuando el proceso de inicio termina. Es similar a los procesos init de Unix y BSD del cual deriva, pero en algunos casos tiene diferencias y personalizaciones. En un sistema GNU/Linux estándar, init se ejecuta con un parámetro, conocido como runlevel, que toma un valor de 0 a 6, y que determina cuales subsistemas serán operacionales. Cada runlevel tiene sus propios scripts los cuales involucran un conjunto de programas. Estos scripts se guardan en directorios con nombres como "/etc/rc...". El archivo de configuración de init es /etc/inittab. Cuando el sistema se arranca, se verifica si existe un runlevel predeterminado en el archivo /etc/inittab, si no, se debe introducir por medio de la consola del sistema. Después se procede a ejecutar todos los scripts relativos al runlevel especificado.
  180. 2.e)
  181.  
  182. SHUTDOWN
  183. Para detener correctamente un sistema Unix hemos de situar el proceso INIT en un determinado runlevel, generalmente 0 o 6 (podemos comprobarlo simplemente echando un vistazo a/etc/inittab). Para ello, el sistema ofrece al superusuario varios mandatos que pueden ser invocados desde el shell, y que se suelen encontrar en el directorio /sbin/, como shutdown, halt o reboot. Tanto halt como reboot detienen el sistema; la diferencia entre ellos es que la segunda orden lo reinicializa.
  184. En
  185. principio sólo vamos a poder invocar estas órdenes cuando nos encontremos en los runlevels 0 o 6; si nos encontramos en otro nivel de operación habremos de utilizar shutdown para poder asegurar la estabilidad del sistema. Sin embargo, en la mayoría de Unices no existen problemas por esta causa, ya que INIT detecta el estado actual del sistema, y si no es alguno de los anteriores, invoca de forma automática a shutdown con los parámetros adecuados.
  186. Shutdown (reinicio) va a detener la máquina de una forma ordenada, siguiendo unos pasos definidos. En primer lugar, notifica el hecho a todos los usuarios conectados (mediante wall) y bloquea el proceso de registro (login). Posteriormente invoca a INIT en un runlevel 0 (para simplemente detener el sistema), 6 (para reinicializarlo) o incluso 1 (monousuario, para realizar tareas administrativas). Entonces INIT ejecuta el script correspondiente (leído de /etc/inittab), que suele encargarse de eliminar todos los procesos de la máquina, notificar el evento en el fichero de log correspondiente, desmontar los sistemas de ficheros que existan, desactivar el área de swap (intercambio) y, según se haya invocado la orden, detener el sistema o reinicializarlo.
  187. La forma habitual de invocar a shutdown es:
  188. shutdown -r/-h now
  189. Con el parámetro -r hacemos un reboot, y con -h un halt (simplemente detenemos el sistema, sin reinicializar). El parametro "now" puede ser substituido por una hora o puede indicarse el tiempo que deberá esperar el sistema para
  190. proceder al reinicio/parado del sistema. Algún ejemplo sobre el reinicio del sistema sería:
  191. shutdown -h/-r 20:00
  192. shutdown -h/-r +10
  193. 2.f)
  194. Es posible si cada S.O se encuentra en una partición única, esto genera menos problemas en la compatibilidad, y en algunos casos es más que necesario ya que no todos los S.Os usan el mismo File System, así que requieren un tipo de formato especifico.
  195. 3.a)
  196. * Estabilidad.
  197. * Acceso al código fuente (lo que permite personalizar el funcionamiento y auditar la seguridad y privacidad de los datos tratados).
  198. * Independencia de proveedor.
  199. * Alta seguridad.
  200. * Rapidez con que incorpora los nuevos adelantos tecnológicos.
  201. * Activa comunidad de desarrollo que hay a su alrededor y a la abundancia de documentación relativa a los procedimientos.
  202. 3.b)
  203. | GNU/Linux | Windows   |
  204. Estabilidad | Muy estable y compatible con otros S.O    | Estable consigo mismo pero no tan compatible con otro S.O |
  205. Acceso al código fuente    | Si    | No    |
  206. Independencia del proveedor | Si    | No    |
  207. Seguridad   | Alta  | Baja  |
  208. Incorporación de nuevas tecnologías   | Muy rápidamente  | Lentamente    |
  209. Comunidad de desarrollo | Alta  | Poca  |
  210.  
  211. 3.c)
  212. Linux utiliza archivos de configuración en vez de un registro centralizado. Es conocida aquella frase que dice que en Linux todo es un archivo. Esta descentralización, que permite evitar la creación de una enorme base de datos hipercompleja y enredada, facilita enormemente la eliminación y detección de los
  213. programas maliciosos así como dificulta su reproducción teniendo en cuenta que un usuario normal no puede editar archivos del sistema.
  214. En Linux todo es archivo. Esto significa que el núcleo del sistema operativo interpreta que cualquier dispositivo conectado a la PC (ya sea discos duros, lectoras de CD, impresoras, etc.) son de alguna manera archivos e interactúa con estos como si realmente lo fueran. Esto tiene una gran ventaja, sobre todo en el ítem de la estabilidad del sistema, ya que cualquier dispositivo que falle, no hará inestable el sistema.
  215. 3.d)
  216. Multitarea preventiva es una característica de los sistemas operativos. Consiste en que cuando varias aplicaciones se ejecutan al mismo tiempo es el procesador el que asigna tiempos de CPU a las tareas que se están ejecutando. En sistemas antiguos, son los programas los que toman el control del procesador. Tal situación lleva a que si la aplicación se cuelga el procesador queda inutilizado provocando un error del sistema. Linux es un sistema operativo con multitarea preventiva.
  217. 3.e)
  218. (Portable Operating System Interface para UNIX). Familia de estándares relacionados especificados por la IEEE para definir APIs para la compatibilidad de software entre los diferentes sistemas operativos Unix. El término "POSIX" fue sugerido por Richard Stallman en respuesta a un requerimiento de la IEEE, que deseaba un nombre memorable.
  219. La familia de estándares POSIX es formalmente designada como IEEE 1003, y el nombre del
  220. estándar internacional ISO es ISO/IEC 9945.
  221. Si los diseñadores de programas se adecúan a POSIX, sus aplicaciones podrán ejecutarse en cualquier sistema operativo compatible con POSIX.
  222.  
  223. Los sistemas operativos que soportan POSIX son:
  224. * A/UX
  225. * AIX
  226. * BSD/OS
  227. * HP-UX
  228. * INTEGRITY
  229. * Irix
  230. * LynxOS
  231. * Mac OS X
  232. * MINIX
  233. * OpenVMS
  234. * QNX
  235. * RTEMS (POSIX 1003.1-2003 Profile 52)
  236. * Solaris
  237. * OpenSolaris
  238. * UnixWare
  239. * VxWorks
  240. * Windows con kernel NT (usados en Windows NT, 2000, 2003; XP, Vista): sólo en algunas ediciones o con determinadas aplicaciones instaladas.
  241.  
  242. 4.a)
  243.  
  244. UBUNTU
  245. Distribución basada en Debian, con lo que esto conlleva y centrada en el usuario final y facilidad de uso. Muy popular y con mucho soporte en la comunidad. El entorno de escritorio por defecto es GNOME.
  246. REDHAT ENTERPRISE
  247. Esta es una distribución que tiene muy buena calidad, contenidos y soporte a los usuarios por parte de la empresa que la distribuye. Es necesario el pago de una licencia de soporte. Enfocada a empresas.
  248. FEDORA
  249. Esta es una distribución patrocinada por RedHat y soportada por la comunidad. Facil de instalar y buena calidad.
  250. DEBIAN
  251. Otra distribución con muy buena calidad. El proceso de instalacion es quizas un poco mas complicado, pero sin mayores problemas. Gran estabilidad antes que últimos avances.
  252. SuSE LINUX ENTERPRISE
  253. Otra de las grandes. Muy buena calidad, contenidos y soporte a los usuarios por parte de la empresa que la distribuye, Novell. Es necesario el pago de una licencia de
  254. soporte. Enfocada a empresas.
  255. SLACKWARE
  256. Esta distribución es de las primeras que existio. Tuvo un periodo en el cual no se actualizo muy a menudo, pero eso es historia. Es raro encontrar usuarios de los que empezaron en el mundo linux hace tiempo, que no hayan tenido esta distribucion instalada en su ordenador en algun momento.
  257. GENTOO
  258. Esta distribución es una de las unicas que incorporaron un concepto totalmente nuevo en Linux. Es una sistema inspirado en BSD-ports. Podeis compilar/optimizar vuestro sistema completamente desde cero. No es recomendable adentrarse en esta distribucion sin una buena conexion a internet, un ordenador medianamente potente (si quereis terminar de compilar en un tiempo prudencial) y cierta experiencia en sistemas Unix.
  259. KUBUNTU
  260. Distribución basada en Ubuntu, con lo que esto conlleva y centrada en el usuario final y facilidad de uso. La gran diferencia con Ubuntu es que el entorno de escritorio por defecto es KDE.
  261.  
  262. 4.b)
  263. * Proceso de instalación.
  264. * Ayudantes en la configuración de tu máquina.
  265. * Gestores de paquetes.
  266. * Secuencia en el proceso de arranque.
  267. * Interfaz gráfica.
  268. * Estabilidad
  269. * Nivel de configuración permitida al usuario
  270. 5.a) Nombre cuales son los 3 componentes más fundamentales de GNU/Linux.
  271.  
  272. 5.b) Mencione y explique la estructura básica del Sistema Operativo GNU/Linux.
  273.  
  274. 6.a)
  275. En informática, un núcleo o kernel (de la raíz germánica Kern) es un software que actúa de sistema operativo.
  276. 6.b)
  277. En
  278. informática, el núcleo es el programa informático que se asegura de:
  279. * La comunicación entre los programas que solicitan recursos y el hardware.
  280. * Gestión de los distintos programas informáticos (tareas) de una máquina.
  281. * Gestión del hardware (memoria, procesador, periférico, forma de almacenamiento, etc.)
  282. 6.c)
  283. La versión del núcleo Linux actualmente consta de cuatro números. Por ejemplo, asumamos que el número de la versión está compuesta de esta forma: A.B.C[.D] (ej.: 2.2.1, 2.4.13 ó 2.6.12.3).
  284. El número A denota la versión del núcleo. Es el que cambia con menor frecuencia y solo lo hace cuando se produce un gran cambio en el código o en el concepto del núcleo. Históricamente sólo ha sido modificado dos veces: en 1994 (versión 1.0) y en 1996 (versión 2.0).
  285. El número B denota la subversión del núcleo.
  286. Antes de la serie de Linux 2.6.x, los números pares indicaban la versión “estable” lanzada. Por ejemplo una para uso de fabricación, como el 1.2, 2.4 ó 2.6. Los números impares, en cambio, como la serie 2.5.x, son versiones de desarrollo, es decir que no son consideradas de producción.
  287. Comenzando con la serie Linux 2.6.x, no hay gran diferencia entre los números pares o impares con respecto a las nuevas herramientas desarrolladas en la misma serie del núcleo. Linus Torvalds dictaminó que este será el modelo en el futuro.
  288. El número C indica una revisión mayor en el núcleo. En la forma anterior de versiones con tres números, esto fue cambiado cuando se implementaron en el
  289. núcleo los parches de seguridad, bugfixes, nuevas características o drivers. Con la nueva política, solo es cambiado cuando se introducen nuevos drivers o características; cambios menores se reflejan en el número D.
  290. El número D se produjo cuando un grave error, que requiere de un arreglo inmediato, se encontró en el código NFS de la versión 2.6.8. Sin embargo, no habían otros cambios como para lanzar una nueva revisión (la cual hubiera sido 2.6.9). Entonces se lanzó la versión 2.6.8.1, con el error arreglado como único cambio. Con 2.6.11, esto fue adoptado como la nueva política de versiones. Bug-fixes y parches de seguridad son actualmente manejados por el cuarto número dejando los cambios mayores para el número C.
  291. También, algunas veces luego de las versiones puede haber algunas letras como “rc1” o “mm2”. El “rc” se refiere a release candidate e indica un lanzamiento no oficial. Otras letras usualmente (pero no siempre) hacen referencia a las iniciales de la persona. Esto indica una bifurcación en el desarrollo del núcleo realizado por esa persona, por ejemplo ck se refiere a Con Kolivas, ac a Alan Cox, mientras que mm se refiere a Andrew Morton.
  292. 6.d) Es posible tener más de un Kernel de GNU/Linux.
  293.  
  294. 6.e) ¿Dónde se encuentran ubicados dentro del File System?
  295.  
  296. 6.f)
  297. Un núcleo monolítico es un tipo de núcleo o kernel de un sistema operativo. Como ejemplo de sistema operativo de núcleo monolítico están UNIX, Linux y FreeBSD.
  298.  
  299. Un sistema operativo con núcleo
  300. monolítico concentra todas las funcionalidades posibles (planificación, sistema de archivos, redes, controladores de dispositivos, gestión de memoria, etc) dentro de un gran programa. El mismo puede tener un tamaño considerable, y deberá ser recompilado por completo al añadir una nueva funcionalidad. Todos los componentes funcionales del núcleo tienen acceso a todas sus estructuras de datos internas y a sus rutinas. Un error en una rutina puede propagarse a todo el núcleo.
  301.  
  302. 7.a)
  303. Es un modo de comunicación entre el usuario y el S.O.
  304.  
  305. 7.b)
  306. Sus funciones son la ejecución de programas por medio del ingreso de comandos.
  307. Cada usuario tiene una interfaz o shell, las mismas son programables.
  308.  
  309. 7.c)
  310. Bourne Shell (sh): Incorpora características tales como control de procesos, redirección de entrada/salida, listado y lectura de ficheros, protección, comunicaciones y un lenguaje de órdenes para escribir programas por lotes o scripts . Fue el intérprete usado en las primeras versiones de Unix y se convirtió en un estándar de facto.
  311. Korn Shell (ksh): Es totalmente compatible con el Bourne Shell y también incluye muchos elementos del intérprete de comandos C, como historia de órdenes.
  312. La principal ventaja de ksh sobre otros intérpretes de comandos tradicionales de Unix, es su uso como lenguaje de programación. Desde su concepción, se le agregaron gradualmente muchas capacidades, mientras se mantenía amplia compatibilidad con el Bourne Shell.
  313. La versión ksh93 soporta arreglos asociativos y aritmética de
  314. punto flotante integrada. Sus funciones avanzadas para manejar archivos de comandos lo pusieron a la par con lenguajes de programación especializados como awk y perl.
  315. Bourne Again Shell (bash): Está basado en la shell de Unix y es compatible con POSIX. Fue escrito para el proyecto GNU y es el intérprete de comandos por defecto en la mayoría de las distribuciones de Linux. Su nombre es un acrónimo de Bourne-Again Shell (otro shell bourne) — haciendo un juego de palabras (born-again significa renacimiento) sobre el Bourne shell (sh), que fue uno de los primeros intérpretes importantes de Unix.
  316. 6.d)
  317. Los comandos propios (internos) son los que provee el shell, estos comandos se encuentran en /bin.
  318. Los comandos externos son los que no provee el shell. Para acceder a estos se debe poner toda la ruta del programa. /etc/misprogramas/programa1. En la variable PATH también se encuentras las rutas donde el S.O por lo general va a buscar los comandos que no encuentra en /bin,
  319.  
  320. 6.e) ¿Por qué considera que el Shell no es parte del Kernel de GNU/Linux?
  321.  
  322. 8.a)
  323. Los sistemas de archivos o ficheros (filesystem en inglés), estructuran la información guardada en una unidad de almacenamiento (normalmente un disco duro de una computadora), que luego será representada ya sea textual o gráficamente utilizando un gestor de archivos. La mayoría de los sistemas operativos manejan su propio sistema de archivos.
  324.  
  325. 8.b)
  326. ext2
  327. ext3
  328. ext4
  329. FAT (File Allocation Table, usado en DOS y Windows hasta
  330. Windows ME)
  331. NTFS (New Technology File System, usado en Windows NT y derivados, como XP o Vista)
  332. ReiserFS
  333. Reiser4
  334.  
  335. 6.c) ¿Es posible visualizar particiones del tipo FAT y NTFS en GNU/Linux? Que
  336. limitaciones existen actualmente en cuanto a las operaciones que se pueden hacer
  337. sobre ellas.
  338.  
  339. 6.d)
  340. Un sistema de archivos UFS (Unix File System) se compone de las siguientes partes:
  341. * Unos pocos bloques al inicio de la partición reservados para bootstrap (el cual debe ser inicializado separadamente del sistema de archivos).
  342. * Un superbloque que contiene un número mágico (del inglés magic number) identificando esto como un UFS, y algunos otros números vitales describiendo la geometría y parámetros de puesta a punto del comportamiento.
  343. * Una colección de grupos de cilindros. Cada grupo de cilindros tiene estos componentes:
  344. * Un respaldo del superbloque.
  345. * Una cabecera de cilindro, con estadísticas, lista de espacio libre, etc. acerca de este bloque de cilindros, similar a los que se encuentran en el superbloque.
  346. * Un número de inodos, cada cual conteniendo los atributos del archivo.
  347. * Un número de bloques de datos.
  348. Los inodos son numerados secuencialmente. Los primeros inodos están reservados por razones históricas, seguidos por los inodos del directorio raíz.
  349. Los archivos de directorio contienen sólo la lista de archivos en el directorio y el inodo asociado para cada archivo. Todos los metadatos (metadata) son mantenidos en el inodo.
  350.  
  351.  
  352.  
  353. El Filesystem
  354. Hierarchy Standard (FHS, en español Estándar de jerarquía del sistema de archivos) es una norma que define los directorios principales y sus contenidos en el sistema operativo GNU/Linux y otros sistemas de la familia Unix. Se diseñó originalmente en 1994 para estandarizar el sistema de archivos de las distribuciones de Linux, basándose en la tradicional organización de directorios de los sistemas Unix. En 1995 se amplió el ámbito del estándar a cualquier Unix que se adhiriese voluntariamente.
  355.  
  356. 9)
  357. a) cd: Cambia de directorio.
  358. b) ls: Lista el contenido del directorio.
  359. c) pwd: Muestra la ruta actual del directorio.
  360. d) df: Muestra el espacio libre en las particiones existentes.
  361. e) shutdown: Apaga de manera correcta (cierra sesiones) el ordenador.
  362. f) reboot: Reiniciar el ordenador.
  363. g) halt: Apaga el ordenador.
  364. h) find: Busca el archivos/s; -name busca en el directorio actual o en cualquier subdirectorio
  365. i) locate: Busca un archivo en una base de datos indexada para aumentar la velocidad.
  366. j) uname: Brinda información del tipo de Unix que usamos actualmente.
  367. k) dmesg: Lista el buffer de mensajes del nucleo.
  368. l) who: Listar los nombres de los usuarios conectados; am i nombre de usuario de quien lo invoca
  369. m) lspci: Muestra los periféricos conectador al puente pci.
  370. n) at: Ejecuta un comando más tarde.
  371. o) touch: Cambia las fechas de un archivo. Sin opciones crearía un fichero con la fecha actual
  372. p) netstat: Muestra un listado de las conexiones activas de un ordenador
  373. q)
  374. tail: Muestra el final de un archivo.
  375. r) head: Muestra el inicio de un archivo.
  376. s) mount: Montar dispositivos y particiones. Montar es hacer que el sistema operativo proyecte el contenido de ese dispositivo o partición en un enlace lógico (un directorio).
  377. t) umount: Desmontar dispositivos y particiones.
  378. u) losetup: Para separar los dispositivos de bucle y para consultar el estado de uno.
  379. v) write: Mandar un mensaje a otro usuario.
  380. w) mkfs: Crear un File System de Linux en un dispositivo, usualmente una partición del disco duro.
  381. x) fdisk (con cuidado): Manipular las tablas de particiones.
  382.  
  383. 10)
  384. /usr/bin    |   | Comandos HP-UX utilizados con frecuencia. |
  385. /usr/sbin   |   | Comandos que utiliza el administrador del sistema.    |
  386. /usr/bin/sh |   | Shell POSIX.  |
  387. /usr/contrib/bin    |   | Programas aportados que no admite Hewlett-Packard.    |
  388. /usr/local/bin  |   | Programas y comandos escritos en la ubicación.   |
  389. $HOME/bin   |   | Directorio que podría crear para colocar sus propios archivos de comandos y programas shell. |
  390. 11.a)
  391. Todos los archivos se identifican con un numero de i-nodo en el que se guardan las propiedades del archivo como tipo de archivo, el uid, el guid, fecha de ultimo acceso, de modificación, tamaño.. etc.
  392.  
  393. 11.b)
  394. cat: Concatena archivos y los muestra en el salida estándar.
  395. more: Mostrar texto en la pantalla del terminal. Permite sólo movimiento hacia detrás.
  396.  
  397. 11.c)
  398. El comando file muestra de que tipo es el archivo en GNU/Linux.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement