MarSpainBcn
jueves, 29 de agosto de 2019
Linux Shell
ACCIÓN COMANDO
Información de ordenador lsusb, lspci, lscpu, inxi -S , directorio /proc, lshw -short, dmidecode --type memory
Información Distribución Linux lsb_release -a
Ver información de Red ifconfig , ip route show
Verificar Hash (MD5,SHA) md5 /ruta/archivo.iso . shasum -a 1 /ruta/archivo.iso . shasum -a 256 /ruta/archivo.iso
Ver CPUs de Nuestro PC lscpu | grep '^CPU(s):'
Buscar en Carpeta sudo find '/ruta-carpetas ' -name 'texto a buscar*'
Buscar Texto en Ruta grep -r "el texto" /home/
Reiniciar Servidor X Crtl + Alt + Retroceso / Desde la Terminal en Gnome Shell > ~$ gnome-shell --replace
Cambiar permiso usuario carpeta: chown -R usuario:grupo /home/carpeta
Recargar bashrc (ALIAS) source ~/.bashrc
Actualizar base de datos Clamav freshclam
Analizar archivo clamscan /cualquier/archivo
Analizar carpeta clamscan -r /cualquier/carpeta
Crear Password Aleatorio date +%s | sha256sum | base64 | head -c 10 ; echo
Especificar que los archivos infectados solo sean movidos a un directorio de cuarentena clamscan --move=/directorio/de/cuarentena -r /cualquier/directorio
Especificar que los archivos infectados sean eliminados clamscan --remove=yes -r /cualquier/directorio
Para que solo se muestre la información de los archivos infectados clamscan --infected --remove=yes -r /cualquier/directorio
Para Excluir Directorios ya que el scaneo de directorios como /sys da errores.. clamscan -r --bell --exclude-dir=/sys --exclude-dir=/dev --exclude-dir=/proc --quiet /
Para que el mandato clamscan guarde la información de su actividad en una bitácora clamscan --log=/home/usuario/clamscan.log --infected --remove=yes -r /cualquier/directorio
Apargar Equipo a la 20:00 shutdown -h 20:00
Apagar equipo en 50 min shutdown -h +50
Programar Apagado con crontab crontab -e https://docs.oracle.com/cd/E24842_01/html/E23086/sysrescron-1.html
Cancelar Apagado Ctrl+c o shutdown -c
Reiniciar el equipo en 30 min shutdown -r +30
Reiniciar el equipo a las 20:00 shutdown -r 20:00
Descomprimir Zip unzip archivo.zip
Calculadora bc (para salir 'quit')
Lista de paquetes instalados en arch, impresa en archivo en home/usuario pacman -Q > ~/lista
Matar Procesos listanto con ps -a / ps aux / top Listamos con = $ ps -a y después $ sudo kill -9 'proceso' $ killall proceso
Información y Ayuda Ejemplo = $ man nmap Ejemplo: $ nmap --help ( Para ver el manual de nmap o ver Ayuda)
Ver y auditar conexiones a de red con netstat netstat
Hablar entre Terminales write mar10 (Mensajes bidireccionales entre terminales del mismo sistema) En este caso mar10 tiene una terminal abierta y le mando un mensaje. mar10 podrá responder escribiendo sólo la primera vez (write miusurario) y podremos seguir conversando.
Comprobar conexión con servidor en un puerto específico telnet conexionweb.es 25
Mostrar los procesos que más memoria están consumiendo ps aux --width 30 --sort -rss | head
Mostrar tamaño de directorio du -sch /cualquier/ruta
Mostrar tamaño y espacio usado , porcentace etc , de particiones df
Obtener información básica de nuestro sistema sudo dmidecode -t System
Información del Bios sudo dmidecode -t BIOS
Información de Procesador sudo dmidecode -t Processor
Copiar carpeta desde servidor a pc con el COMANDO SCP
usage: scp [-12346BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P port] [-S program]
-p: Preserva permisos, así como tiempos de modificación y acceso.
-q: No muestra la barra de progreso.
-r: Copia recursiva, es decir que copia los sud directorios.
-v: Muestra los mensajes para debugging.
COPIAR DIRECTORIO DESDE SERVIDOR A PC scp -P 22200 -rpC info@servidor:/home/mar/junio /home/mar10
scp -P (puerto-ssh) -rpC user@dominio:<directorio-a-copiar-del-server> <directorio local del pc>
------------------------------------------------------------------------------------
COPIAR ARCHIVO DESDE PC A SERVIDOR
scp archivo usuario@servidor:/ruta/valida/
COPIAR DIRECTORIO LOCAL A REMOTO
scp -rp /ruta/valida usuario@servidor:/ruta/valida
COPIAR DESDE SERVIDOR REMOTO A SERVIDOR REMOTO
scp usuario1@servidor1:/ruta/valida/archivo usuario2@servidor2:/ruta/valida/
Listar Directorios con el comando du , ejemplo en raiz:
Listando Directorios y ver su tamaño : du -sxh /*
du -h | grep \/.*\\/ -v
Formatear Pendrive desde la terminal, ( miramos con fdisk -l donde esta el pendrive)
sudo mkfs.vfat /dev/sdd1
Ver librerias de un programa
ldd /ruta-al-programa
ejemplo:
ldd /usr/bin/gimp
Verificar firma cryptográfica a partir de archivo .sig gpg --keyid-format long --verify tails-i386-1.0.1.iso.sig tails-i386-1.0.1.iso
Checksum md5sum tails-i386-1.0.1.iso
Redimensionar Disco duro de máquina virtual en virtualbox
VBoxManage modifyhd /ruta/archvio/Centos.vdi --resize 20000
Ver Todas las Direcciones IP de la RED LOCAL Con NMAP nmap -sP 192.168.1.*
Ver Particiones y discos HDD sudo blkid sudo fdisk -l
Crear Multiples Carpetas Numeradas
mkdir -p E{000001..000500}
Monitor de trafico de red, puertos etc sudo iptraf-ng
Muestra todo el tráfico que circula por un puerto en concreto sudo tcpdump
Muestra todos los usuarios conectados al sistema y que hacen W
Samba desde la terminal
smbclient -L 192.168.1.130 -U poner-user -p 445
(Con el modificador -L nos listará los recursos compartidos en red de la ip)
smbclient //192.168.1.130/Users -U fruteroloco -p 445
(Con este nos abrirá un prompt smb >)
Opciones:
https://www.samba.org/samba/docs/man/manpages/smbclient.1.html
FTP desde la terminal
ftp fruteroloco.es
Navegación igual que en las terminales linux/unix
Comandos:
get recivir 1 o varios ficheros de la máquina remota
put enviar 1 o varios ficheros desde equipo local
quit para desconexión
ascii: especifica tipo de transferencia de ficheros ASCII, en contraposición a ficheros binarios (no texto).
binary: especifica tipo de transferencia binaria (por defecto).
bell: le indica al sistema que ejecute un pitido (o "bell") cuando se finalice la ejecución de los comandos. Así podemos ejecutar "bell", y dejar un fichero de gran
tamaño descargándose, sabiendo que tras su finalización oiremos un pitido, lo cual nos permite dejar la ventana minimizada y hacer cualquier otra tarea.
bye, quit: termina la sesión FTP y sale.
cd, dir, ls, list, mkdir, rmdir, pwd: órdenes básicas de acceso a directorios, equivalentes a la del propio sistema operativo.
close: termina la sesión FTP sin salir del programa.
delete y mdelete: borran uno o varios ficheros en la máquina remota.
get y mget: recibir uno o varios ficheros de la máquina remota.
Ejemplos:
"mget *.doc"
'get "datos.doc"'
reget: continuar bajando un fichero cortado anteriormente
Ejemplo:
"reget datos.doc"
open: conectar a un FTP remoto (por ejemplo, "open ftp.xoom.com").
rename: renombrar fichero en la máquina remota.
Ejemplo:
"rename juan.html index.html"
user y pass: especificar nuestro nuevo nombre y password.
verbose: activar o desactivar modalidad informativa.
lcd: Cambiar directorio local. Su utilidad radica en que cuando hacemos un download, éste irá a parar al directorio local donde estemos, de modo que
cambiando de directorio podemos dejar los ficheros que nos bajamos en los lugares adecuados.
Ejemplo:
"lcd /home/sromero/downloads
"help, ?: imprimir información de ayuda del programa local"
Ver Permisos desde la Terminal
sudo ls -al | grep archivo-o-directorio
Y al principio de cada fila, en la primera columna, veremos algo así:
-rwxrwxrwx el guión inicial indica que es un archivo.
drwx—— la d inicial indica que es un directorio o carpeta (directory).
Cada carpeta o fichero tiene 3 grupos de permisos con 3 permisos cada uno.
* El primer grupo indica los permisos del usuario dueño del fichero.
* El segundo grupo indica los permisos del grupo de usuarios del fichero.
* El tercer grupo indica los permisos para el resto de usuarios.
Los 3 tipos de permisos que hay son:
* Lectura (r): Se representa con la letra r, que viene del inglés Read. Indica si puedes abrir el fichero y ver su contenido.
* Escritura (w): Se representa con la letra w, que viene del inglés Write. Indica si puedes modificar el contenidoo del fichero.
* Ejecución (x): Se representa con la letra x, que viene del inglés eXecution. Indica si podemos ejecutar el archivo (script, instalador…).
El resumen a la hora de la verdad es que nosotros vemos que los ficheros tienen los permisos del tipo:
rwxrwxrwx -> 777 (se lee siete, siete, siete)
rw-r-xr-x -> 655 (se lee seis, cinco, cinco)
r——– -> 400 (se lee cuatro, cero, cero)
El equivalente númerico viene del binario.
el 7 equivale en binario a 111 y el 0 a 000.
111 -> RWX -> 7
110 -> RW- -> 6
101 -> R-X -> 5
100 -> R– -> 4
011 -> -WX -> 3
010 -> -W- -> 2
001 -> –X -> 1
000 -> — -> 0
El binario va por potencias de dos, entonces 111 en binario = 2²+2¹+2⁰ = 4+2+1=7. 101 = 2²+0+2⁰ = 5
Otra forma de verlo es que el 1 equivale a que se pone algo y el cero a que no se pone nada, entonces sabiendo que el orden de los permisos es rwx, podemos deducir que un 7, que equivale a 111 querrá decir que escribimos rwx y un 5, que equivale a 101, quiere decir que pongamos permisos donde hay un 1 siguiendo el orden, es decir r-x.
Ahora si aplicamos esto una vez por cada grupo (usuario, grupo, otros) nos salen los permisos de la forma rwxrwxrwx.
Desfragmentar Partición sudo e4defrag /dev/sda1 ------- sudo e4defrag /dev/sda* (Para todas las particiones sda)
ARREGLAR PARTICION WINDOWS
sudo ntfsfix /dev/sda1
sudo ntfsfix /dev/sda2
-------------------------------------------------------
REPARAR PARTICIÓN AL INTENTAR INICIAR EN LINUX CUANDO TENEMOS UN DUAL BOOT CON WINDOWS.
ERROR:
Error mounting /dev/sda5 at /media/itsfoss/01BC76G7Z2628FB0: Command-line `mount -t “ntfs” -o “uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177” “/dev/sda5” “/media/itsfoss/01BC76G7Z2628FB0″‘ exited with non-zero exit status 14: The disk contains an unclean file system (0, 0).
Metadata kept in Windows cache, refused to mount.
Failed to mount ‘/dev/sda5’: Operation not permitted
The NTFS partition is in an unsafe state. Please resume and shutdown
Windows fully (no hibernation or fast restarting), or mount the volume
read-only with the ‘ro’ mount option.
* [Ctrl]+[Alt]+[Del]: Shutdown. Apaga el sistema de forma organizada desde una terminal texto.
* [Ctrl]+[Alt]+[F1]: Cambia a la primera terminal de texto.
* [Ctrl]+[Alt]+[Fn]: Cambia a la terminal de texto numero n (n=1,...,6)
* [Ctrl]+[Alt]+[F7]: Cambia a la primera terminal X (si se esta usando alguna)
* [Ctrl]+[Alt]+[Fn]: Cambia a la terminal X número n (n=7,...,11)
* [Tab]: Autocompleta el nombre de un comando, archivo, directorio o programa, cuando trabajamos en una terminal texto. P.ej: Si vamos a usar el programa "programa_de_prueba", podemos escribir progr y pulsar [Tab], el sistema se encargara de rellenar el resto.
* [ArrowUp]: (Flecha arriba) Va editando la historia de comandos que hemos escrito anteriormente en terminal texto.[Enter] para ejecutar.
* [Shift][PgUp]: Scroll la salida de la terminal hacia arriba, en terminal texto.
* [Shift][PgDown: Scroll la salida de la terminal hacia abajo, en terminal texto.
* [Ctrl]+c: Termina el proceso actual. Cuando lo comenzamos sin & ([localhost]$ proceso)
* [Ctrl]+d: Termina la terminal actual.
* [Ctrl]+s: Para la transferencia a la terminal.
* [Ctrl]+z: Manda el proceso actual (comenzado sin &) a "Background". Lo mismo que si comenzamos el proceso con & ([localhost]$ proceso &).
Lista de comandos mas usados
* hostname: Devuelve el nombre de la máquina.
* uptime: Devuelve la cantidad de tiempo trascurrido desde la última vez que se arrancó el sistema, la cantidad de usuarios trabajando en el sistema y el load average (carga del sistema).
* uname -a: Información sobre el sistema operativo de la máquina.
* dmesg|more: Imprime el "ring buffer" del kernel.
* free -tm: Información sobre la cantidad de memoria disponible y usada.
* df -h: Información sobre todo los dispositivos montados en la máquina.
* du: Muestra el espacio que esta ocupado en disco.
* du -bh /|more: Información sobre el espacio ocupado por cada subdirectorio, comenzando en el directorio raiz /.
* ps: Información sobre los procesos del actual usuario, que se están ejecutando.
* ps axu: Información sobre todos los procesos que se estan ejecutando en la máquina.
* top: Información sobre el uso de cpu y memoria de los procesos del sistema.
* cat /proc/cpuinfo: Información sobre el microprocesador.
* cat /proc/interrupts: Información sobre las interrupciones en uso.
* cat /proc/dma: Información sobre dma en uso.
* cat /proc/filesystems: Información sobre los sistemas de archivos que se pueden utilizar (compilados en el kernel).
* /sbin/lsmod: Información sobre los módulos en uso.
* finger usuario: Información sobre el usuario.
* who: Información sobre los usuarios usando el sistema.
* id usuario: Información sobre UID, GID y GROUPS del usuario.
* last: Información sobre los últimos usuarios que han usado el sistema.
* set|more: Información sobre el entorno de usuario actual.
* passwd: Cambia la clave de acceso para el usuario actual. Root puede cambiar la clave de cualquier usuario passwd usuario
* /usr/sbin/groupadd grupo: Crea un nuevo grupo.
* /usr/sbin/groupdel grupo: Borra un grupo.
* more /etc/passwd: Muestra el fichero de claves del sistema. (Si no se usa shadow password)
* more /etc/group: Muestra los grupos registrados en el sistema.
* chmod permisos fichero/directorio: Cambia los permisos de ficheros/directorios
* chown: Cambia los permisos de usuario: grupo de archivos/directorios.
* chgrp: Cambia el grupo de un archivo o directorio.
* umask: Establece que permisos serán deshabilitados para los archivos nuevos.
* lpr archivo: Añade un documento a la cola de impresión.
* lpq: Muestra los documentos en cola de impresión.
* lprm: Cancela la impresión del documento activo.
* tar: Archivador de ficheros.
* gunzip: Descompresor compatible con ZIP.
* mount: Montar unidades de disco duro, diskette, cdrom, etc.
* wget: Programa para descargar archivos por http o ftp.
* lynx: Navegador web con opciones de ftp, https.
* ftp: Cliente FTP.
* whois: Whois de dominios.
* who: Muestra los usuarios de sistema que han iniciado una sesión.
* mail: Envío y lectura de correo electrónico.
* sort: Ordena el contenido de un archivo.
* ln: Link para crear enlaces, accesos directos.
* tail: Muestra el final de un archivo.
* head: Muestra la cabecera de un archivo.
* file: Nos dice de que tipo es un archivo.
* cp fichero1 fichero2: Copia fichero1 como fichero2
* rm fichero: Borra fichero
* rm -R directorio: Borra el contenido completo (ficheros/subdirectorios) de directorio
* mv fichero1 fichero2: Cambia el nombre de fichero1 a fichero2
* mkdir directorio: Crea un subdirectorio
* rmdir directorio: Borra un subdirectorio
* shutdown -t3 -r now: Reinizializa el sistema (hay que hacerlo como root).
* shutdown -t3 -h now: Apaga el sistema (hay que hacerlo como root).
* reboot: Reinicia el sistema.
* poweroff: Apaga el sistema.
* sysctl: Configurar los parámetros del kernel en tiempo de ejecución.
* ulimit: Muestra los límites del sistema (máximo de archivos abiertos, etc...)
* adduser: Añadir usuario de sistema.
* userdel: Eliminar usuario de sistema.
* ping máquina: Para comprobar si tenemos contacto con la máquina máquina (máquina: nombre o IP)
* /sbin/route: Tabla de enrutamiento de nuestro sistema.
* /sbin/ifconfig: Información sobre los distintos dispositivos de red
* netstat: Información valiosa sobre la conexión de red (Este comando tiene muchas posibilidades, ejecutar man netstat
* ls: Lista archivos y directorios, funciona como elcomando dir de DOS.
* dir: Idem. anterior.
* cp: Copia archivos/directorios.
* rm: Borra archivos/directorios.
* mkdir: Crea directorios.
* rmdir: Borra directorios (deben estar vacíos).
* mv: Renombrar o mover archivos/directorios.
* date: Indica la fecha y hora del sistema.
* pwd: Indica la ruta absoluta donde se está ubicado.
* history: Muestra el historial de comandos introducidos por el usuario.
* more: Muestra el contenido de un archivo con pausas cada 25 líneas.
* grep: Filtra los contenidos de un archivo.
* diff: Compara archivos.
* wc archivo: Muestra el número de palabras, líneas y caracteres de un archivo.
* wc -c archivo: Muestra el tamaño en bytes de un archivo.
* calendar: Recordatorio de fechas.
* cal: Despliega un calendario.
* cal -my: Calendario completo del año.
* traceroute: Herramienta de red que nos muestra el camino que se necesita para llegar a otra máquina.
* ifconfig: Configuración de interfaces de red, modems, etc.
* route: Gestiona las rutas a otras redes.
* iptraf: Muestra en una aplicación de consola todo el tráfico de red.
* tcpdump: Vuelca el contenido del tráfico de red.
* lsof: Muestra los archivos que utiliza cada proceso.
* lsmod: Muestra los módulos de kernel que están cargados.
* modprobe: Trata de instalar un módulo, si lo encuentra lo instala pero de forma temporal.
* rmmod: Elimina módulos del kernel que están cargados.
* sniffit: Husmeador del tráfico de red.
* su: Te conviertes en administrador(root) después de introducir la clave de acceso. Ideal para realizar alguna tarea de administración sin necesidad de salir del sistema y entrar de nuevo como root.
* /usr/sbin/adduser usuario: Registra y crea una cuenta de usuario.
* /usr/sbin/userdel usuario: Borra la cuenta de usuario usuario.
* passwd: Cambia la clave de acceso para el usuario actual. Root puede cambiar la clave de cualquier usuario passwd usuario
* glxinfo: Información sobre la biblioteca gráfica OpenGL y su extensión GLX.
* showrgb: Lista los colores reconocidos por el sistema y su valor RGB.
* bsdgames: Colección de juegos para consola.
* sl: Tren pasando.
* apt-get moo: La supervaca del apt.
* cowsay muuuuu: Una vaca hablando en su idioma.
* cowthink -p ¿¿muuuuu??: Una vaca pensando.
* cowsay -f tux hola: Tux saludando.
* banner (texto): Muestra un cartel en pantalla.
* xwd -root -screen > pantalla.xwd: Capturar la pantalla.
* xwd > ventana.xwd: Capturar la ventana.
* import -window root pantalla.ps (también jpg, png, gif, etc...): Capturar en otros formatos.
* md5sum archivo.iso > archivo.iso.txt: Generar la suma control MD5 de un archivo.
* md5sum -w -c archivo.iso.txt: Verifica la suma control MD5 de un archivo.
------------------------------------
USO BÁSICO DE PACMAN
------------------------------------
Instalar paquetes
---------------------------------------------------------------------------------------------
pacman -S “paquete” Instala un paquete.
pacman -Sy “paquete” Sincroniza repositorios e instala el paquete.
Actualizar paquetes
---------------------------------------------------------------------------------------------
pacman -Sy Sincroniza repositorios.
pacman -Syy Fuerza la sincronización de repositorios incluso para paquetes que parecen actualizados.
pacman -Syu Sincroniza repositorios y actualiza paquetes.
pacman -Syyu Fuerza sincronización y actualiza paquetes.
pacman -Su Actualiza paquetes sin sincronizar repositorios.
Buscar paquetes
---------------------------------------------------------------------------------------------
pacman -Ss “paquete” Busca un paquete.
pacman -Si “paquete” Muestra información detallada de un paquete.
pacman -Sg “grupo” Lista los paquetes que pertenecen a un grupo.
pacman -Qs “paquete” Busca un paquete ya instalado.
pacman -Qi “paquete” Muestra información detallada de un paquete ya instalado.
pacman -Qdt Muestra paquetes huérfanos.
Eliminar paquetes
---------------------------------------------------------------------------------------------
pacman -R “paquete” Borra paquete sin sus dependencias.
pacman -Rs “paquete” Borra paquete y sus dependencias no utilizadas.
https://wiki.archlinux.org/index.php/Pacman_(Espa%C3%B1ol)
----------------------------
Uso de yaourt
----------------------------
Puede instalar paquetes (incluyendo los paquetes de AUR) con:
$ yaourt nombredelpaquete
---------------------------------------
Puede actualizar el sistema, incluyendo los paquetes de AUR, con:
$ yaourt -Syua
---------------------------------------
Ejemplos
Busca e instala:
$ yaourt <expresión de búsqueda>
--------------------------------------------------
Sincroniza la base de datos, actualiza paquetes, actualiza buscando en AUR y los que están en desarrollo (todos los paquetes basados en cvs, svn, git, bzr(...)-version):
$ yaourt -Syua --devel
--------------------------------
Compila el paquete desde el código fuente:
$ yaourt -Sb <paquete>
---------------------------------
Comprueba, edita, fusiona o elimina archivos *.pac*:
$ yaourt -C
----------------
Descarga un PKGBUILD (soporta paquetes separados):
$ yaourt -G <paquete>
-------------------------------
Crea y exporta paquetes, con sus fuentes a un directorio:
$ yaourt -Sb --export <directorio> <paquete>
------------------------------------------------------------
Realiza una copia de seguridad («backup») de la base de datos:
$ yaourt -B
-----------------
Consulta el archivo backup:
$ yaourt -Q --backupfile <archivo>
------------------------------------------------
Solución de problemas
Yaourt pide la contraseña dos veces
Si se desactiva el tiempo de salida («timeout») de la contraseña de sudo añadiendo:
Defaults timestamp_timeout=0
a /etc/sudoers, entonces yaourt le pedirá la contraseña dos veces cada vez que se intenta realizar una operación que requiera root. Para evitar este comportamiento, añada:
SUDONOVERIF=1
a /etc/yaourtrc o a ~/.yaourtrc
Yaourt congela / desacelera el sistema
Este problema se plantea, sobre todo, para los sistemas con poca memoria RAM o un espacio swap pequeño. Yaourt utiliza /tmp para compilar de forma predeterminada. Por defecto, esto se hace todo en la memoria RAM, ya que es un tmpfs. Para solucionar el problema, cambie la ubicación de la carpeta de compilación en /etc/yaourtrc (descomentando la línea "TMPDIR = ") a otro lugar (distinto de /tmp), para evitar que se congele/ralentice el sistema.
https://wiki.archlinux.org/index.php/Yaourt_(Espa%C3%B1ol)
------------------------------
USO BÁSICO DE APT
------------------------------
Todos conocemos synaptic, una herramienta grafica que nos permite instalar aplicacion o actualizarlas de manera muy sencilla. Pero tambien es cierto que todos hemos hecho uso de apt-get al menos una vez y el proposito de este post sera el de aprender un poco mas sobre la herramienta apt.
APT significa Advanced Packaging Tool y es usado por todas las distribuciones basadas en Debian. Y es una herramienta que esta orientada a ser usada con conexion internet aunque tambien puede funcionar sin conexion.
El uso basico que casi todos les hemos dado a apt es el de actualizar la lista de paquetes y posteriormente instalar un paquete. Entonces podemos decir que las tareas que realiza APT son las siguientes:
Buscar los paquetes en Internet o localmente
Solucionar las dependencias (a veces para que un paquete funcione necesita que haya otros paquetes instalados previamente: se dice que ‘depende de’)
Descargar de Internet (cuando sea necesario) los paquetes y sus dependencias
Instalar y configurar en el orden correcto los paquetes y sus dependencias
APT obtiene la lista de paquete desde los repositorios. Los repositorios son algo muy mencionado tambien y basicamente son un conjunto de direcciones de internet donde estan los listados de los paquetes como los propios paquetes.
Es tambien importante aclarar que APT debe ser usado en modo superusuario o root. Por ejemplo estos serian los comandos para las tareas mas usadas, en una consola escribimos:
------------------------------------------
sudo apt-get update
con eso actualizamos los repositorios
------------------------------------------
sudo apt-get install paquete
con eso instalamos el paquete y APT se encargara automaticamente de las dependencias y el orden de instalacion como ya habia mencionado mas arriba.
Ahora veamos otros comandos que normalemente no son muy conocidos:
------------------------------------------
sudo apt-get -d paquete
con eso se baja el paquete y todas sus dependencias pero no se instala, es util cuando queremos instalar los paquetes en otra pc.
----------------------------------------------------
sudo apt-get --reinstall install paquete
con eso podemos actualizar a una version mas nueva o solucionar algun problema cuando ocurre algun error con ese paquete.
---------------------------------------------------------------------
sudo apt-get install paquete1 paquete2- paquete 3
con eso instalamos paquete 1 y paquete y al colocar el signo “-” delante de paquete2 le decimos que ese debe ser desinstalado
---------------------------------------------------------------------
sudo apt-get remove paquete
desintala paquete y todas sus dependencias
-------------------------------------------------------------
sudo apt-get --purge remove paquete
esta opcion es preferible, al menos por mi ya que ademas de desintalar borra todos los archivos de configuracion.
Existen unos cuantos comandos que a veces dan algo de miedo pero que pueden llegar a ser muy utiles, pero yo solo recomendaria que los usen si se consideran usuarios avanzados porque puede llegar a ocasionar inestabilidad en el sistema. Son los siguientes:
-------------------------------
sudo apt-get upgrade
esa orden actualizara todos los paquetes a su version mas nueva, obviamente antes es preferible haber actualizado los repositorios con un sudo apt-get update
------------------------------------
sudo apt-get dist-upgrade
esto actualizara la distribucion de linux que esten usando a su version mas nueva.
Ahora, una vez que instalamos un paquete este se queda en la cache (/var/cache/apt/archives) pero podemos ahorrar espacio en disco si los borramos, para ello existen 2 comandos….ha pero ojo que si los borramos y luego necesitamos instalarlos de nuevo APT tendra que bajarlos de nuevo. Bueno estos son los comandos:
----------------------------------
sudo apt-get autoclean
Eso eliminara los paquetes de los que ya exista una nueva version
-----------------------------
sudo apt-get clean
eso borrara todos los paquetes de la cache
Ahora veamos un poco de como usar las opciones de consulta que normalmente todo el mundo realiza con synaptic. Para ello haremos uso de apt-cache:
-------------------------------------------
sudo apt-cache search palabra
busca todos los paquetes que tengan “palabra” en el nombre o en las descripciones y nos muestra un listado de ellos.
-------------------------------------------
sudo apt-cache show paquete
Nos mostrara informacion sobre el paquete.
------------------------------------------------
sudo apt-cache depends paquete
Nos mostrara la lista de paquetes de los cuales depende paquete.
-------------------------------------------------------------------------------------------------
USO BÁSICO DE YUM
-------------------------------------------------------------------------------------------------
Permite instalar los paquetes que le indique al Sistema, a su vez los paquetes obsoletos:
yum -y upgrade
Permite actualizar el Sistema, no requiere confirmación:
yum -y update
Permite actualizar el Sistema, excepto PHP, no requiere confirmación:
yum -y update –exclude=php
Permite instalar el paquete que se le indique al Sistema, requiere de confirmación:
yum install paquete
Permite instalar el paquete que se indique al Sistema, no requiere confirmación:
yum -y install paquete
Permite instalar los paquetes que se indiquen en el Sistema, no requiere confirmación:
yum -y install paquete_1 paquete_2 paquete_n
Permite actualizar el paquete indicado en el Sistema, en este caso en servicio apache, no requiere confirmación:
yum -y update httpd
Permite listar los paquetes que se necesitan actualizar , pero sin instalarse en el Sistema:
yum check-update
Permite mostrar una descripción completa del paquete:
yum info paquete
Permite listar los todos los paquetes para actualización, instalación o bien los ya instalados:
yum list
Permite listar los paquetes instalados en el Sistema:
yum list installed
Permite listar todos los paquetes disponibles para ser actualizados:
yum list updates
Permite listar todos los paquetes disponibles para ser instalados:
yum list available
Permite listar el paquete disponible o ya instalado en el Sistema, en este caso MySQL:
yum list | grep mysql
Permite remover el paquete del Sistema:
yum remove paquete
Permite hacer una búsqueda del paquete en el Sistema:
yum search paquete
Permite limpiar paquetes y archivos de encabezados:
yum clean all
Permite listar todos los repositorios que estén contenidos en YUM:
yum repolist
-----------------------------------------
LA TERMINAL EN OPEN SUSE
-----------------------------------------
http://opensuse-guide.org/command.php
http://opensuse-guide.org/installpackage.php
Fuente
COMPRIMIR Y DESCOMPRIMIR DESDE LA TERMINAL
Ficheros tar
Empaquetar: tar -cvf archivo.tar /dir/a/comprimir/
Desempaquetar: tar -xvf archivo.tar
Ver contenido: tar -tf archivo.tar
* Ficheros gz
Comprimir: gzip -9 fichero
Descomprimir: gzip -d fichero.gz
* Ficheros bz2
Comprimir: bzip fichero
Descomprimir: bzip2 -d fichero.bz2
gzip ó bzip2 sólo comprimen ficheros [no directorios, para eso existe tar]. Para comprimir y archivar al mismo tiempo hay que combinar el tar y el gzip o el bzip2 de la siguiente manera:
* Ficheros tar.gz
Comprimir: tar -czfv archivo.tar.gz ficheros
Descomprimir: tar -xzvf archivo.tar.gz
Ver contenido: tar -tzf archivo.tar.gz
* Ficheros tar.bz2
Comprimir: tar -c ficheros | bzip2 > archivo.tar.bz2
Descomprimir: bzip2 -dc archivo.tar.bz2 | tar -xv
Ver contenido: bzip2 -dc archivo.tar.bz2 | tar -t
* Ficheros zip
Comprimir: zip archivo.zip ficheros
Descomprimir: unzip archivo.zip
Ver contenido: unzip -v archivo.zip
* Ficheros lha
Comprimir: lha -a archivo.lha ficheros
Descomprimir: lha -x archivo.lha
Ver contenido: lha -v archivo.lha
Ver contenido: lha -l archivo.lha
* Ficheros arj
Comprimir: arj a archivo.arj ficheros
Descomprimir: unarj archivo.arj
Descomprimir: arj -x archivo.arj
Ver contenido: arj -v archivo.arj
Ver contenido: arj -l archivo.arj
* Ficheros zoo
Comprimir: zoo a archivo.zoo ficheros
Descomprimir: zoo -x archivo.zoo
Ver contenido: zoo -L archivo.zoo
Ver contenido: zoo -v archivo.zoo
* Ficheros rar
Comprimir: rar -a archivo.rar ficheros
Descomprimir: rar -x archivo.rar
Ver contenido: rar -l archivo.rar
Ver contenido: rar -v archivo.rar
BACKUP COMPLETO DEL SISTEMA LINUX DEDE TERMINAL
La sintaxis es la siguiente:
tar [par·metros]
Las operaciones mas usadas son:
-z: Comprime usando gzip
-c: Crea el archivo
-v: Verbose mode. (Muestra el progreso mientras se crea el archivo)
-f: Para indicar el nombre del archivo
-p Conserva los permisos de los archivos
-x Extraer
Ejemplo de uso:
Para comprimir un directorio completo, usamos lo siguiente:
tar -zcvf backup-home.tar.gz /home/* ñ> Hace un backup de todos los archivos que estan en el directorio home.
Backup del sistema completo:
Si queremos hacer un backup completo del sistema, para que en caso de una perdida total podamos restaurar nuestro servidor de manera completa, datos/programas/configsÖ TODOÖ debemos ejecutar esto:
tar cvpzf /hdd2/backup-full.tar.gz --exclude=/proc --exclude=/lost+found --exclude=/hdd2/backup-full.tar.gz --exclude=/mnt --exclude=/sys --exclude=dev/pts /
Importante: la barra del final ì/î no es un error, eso le dice haga el backup desde el root ì/î.
Todos esos ìexcludeî son, como su nombre lo dice, para excluir directorios que el sistema llena con archivos dinamicos, que van a producir errores a la hora del backup, y no son importante.
Como restaurar los backups:
Para restaurar un backup, se utiliza el comando -x
tar -zxvpf /fullbackup.tar.gz ñ> extrae los contenidos en el directorio actual, conservando los permisos (-p).
tar -zxvf backup-home.tar.gz ñ> extrae los contenidos en el directorio actual.
tar -zxvf backup-home.tar.gz /home ñ> extrae los contenidos en /home.
----------
Version 2
mkdir /backup
cd /backup
tar cvpjf backup.tar.bz2 ñ-exclude=/proc ñ-exclude=/lost+found ñ-exclude=/backup.tar.bz2 ñ-exclude=/mnt ñ-exclude=/sys / --exclude=/tmp
Y listo. Con eso, se crear· un archivo llamado backup.tar.bz2 dentro de dicha carpeta, el cual contiene todo tu sistema. Si querÈs excluir otros directorios de como por ejemplo el /home, solo agregar ì-exclude=/homeî al final del comando.
Luego, para recuperar:
tar xvpfj backup.tar.bz2 -C /
Y listo. Con eso, se volver·n a copiar todo su / en el lugar correcto, volviendo todo al sistema al punto en el que estaba al comienzo.
Es m·s, llegado el caso de una cat·strofe, se podrÌa descomprimir todo el .tar.bz2 en una particiÛn vacÌa. Instalar GRUB o alg˙n gestor de arranque configur·ndolo de forma correcta y entonces, serÌa como ìinstalarî a mano todo nuestro sistema desde el backup. Es asÌ de simple ??
Nota: Este tipo de backup es una forma sencilla para recuperar datos, pero est· pensando para usuarios con un nivel intermedio o avanzado de conocimientos en linux, dado que la recuperaciÛn desde el backup puede ser bastante compleja como en el caso de necesitar reinstalar el sistema o un grub desde cero. Para usuarios principiantes, es recomendable usar otros sitemas de backups diferentes.
Conexión de Web PHP (Linux) a base de datos MS SQL (Windows)
Imaginemos el siguiente escenario:
Tenemos una web en PHP en un servidor Linux con Apache y tenemos una base de datos en un servidor SQL alojado en una máquina Windows. La base de datos tiene todos los registros de clientes con sus datos y facturación. Queremos que al hacer login en la web esta haga consultas a la base de datos de Microsoft SQL server.
VERIFICADO y TRABAJANDO EN DEBIAN 6-7-8 Y CENTOS 7 CON PHP 5 && EN DEBIAN 9 CON PHP 7.3
------------------------------------------------------------------------------------------------------------------------------------------------
(CON PHP 7 PROCEDIMIENTO PARA PHP 7.) Debian 9 Stretch, PHP 7 and Microsoft SQL Server access
Requisitos del sistema para los controladores de Microsoft para PHP para SQL Server )
------------------------------------------------------------------------------------------------------------------------------------------------
Para poder hacer la conexión entre PHP5 y MS SQL utilizaremos Freetds (set de librerías Linux & Unix) y la extensión MS SQL. En la familia Debian lo instalamos así:
DEBIAN
--------------------------------------------------------------------------------------------------------------------------
sudo apt-get install freetds-common freetds-bin unixodbc php5-sybase
-----------------------------------------------------------------------------------------------------------------------------
CENTOS
--------------------------------------------------------------------------------------------------------------------------
Añadir repositorio EPEL## RHEL/CentOS 7 64-Bit ##
wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm
----------------------------------------------------------------------------------------------------------------------------------------
sudo yum update
--------------------------------------------------------------------------------------------------------------------------
sudo yum install php-mssql
------------------------------------------------------------------------------------------------------------------------------
Running transaction
Instalando : unixODBC-2.3.1-11.el7.x86_64
Instalando : freetds-0.95.81-1.el7.x86_64
Instalando : php-mssql-5.4.16-7.el7.x86_64
Comprobando : unixODBC-2.3.1-11.el7.x86_64
Comprobando : php-mssql-5.4.16-7.el7.x86_64
Comprobando : freetds-0.95.81-1.el7.x86_64
Reiniciamos apache:
DEBIAN
sudo /etc/init.d/apache2 restart
CENTOS
service apache2 restart
El archivo de configuración de FREETDS:
DEBIAN
nano /etc/freetds/freetds.conf
CENTOS
nano /etc/freetds.conf
Podemos ver en phpinfo si tenemos la libreria freetds activa: Para comprobarlo creamos un archivo de nombre info.php con el siguiente contenido:
<?php phpinfo(); ?>
Si tenemos xampp movemos el archivo info.php al directorio /opt/lampp/htdocs o si tenemos apache instalado en sistema en /var/www/html. Si tenemos webmin/virtualmin encontraremos nuestro public_html en la carpeta /home ahí estará la carpeta con el nombre del dominio del servidor virtual ejemplo: /home/marspain.sytes.net/public_html/.
Abrimos el navegador y en la url :
http://localhost/info.php
Ahora desde la terminal podemos testear si conecta con MSSQL.
Abrimos una terminal:
tsql -H mi_servidor_sql -p puerto -U usuario_sql -P contraseña -D base_de_datos
Ejemplo:
tsql -H 192.168.1.221 -p 1433 -U sa -P sql123 -D EMPRESA
También podemos utilizar este código php para comprobar la conexión.
Igual que con el info.php el archivo test.php lo copiamos al directorio web y llamamos al archivo desde la url del navegador:
Creamos un archivo test.php con el siguiente código PARA PHP5 (los codes php están al final del post para descargar):
<?php
$link = mssql_connect('192.168.1.221', 'sa', 'sql123');
if(!$link) {
echo 'Could not connect';
die('Could not connect: ' . mssql_error());
}
echo'Successful Sql Connection';
msssql_close($link);
?>
En la linea :
$link = mssql_connect () sustituimos "192.168.1.221" por la ip de la máquina windows con el servidor sql apuntando a la instancia SQL, por ejemplo:
192.168.1.130\VIRTUAL (Si hemos apuntado ya la instancia en freetds sólo con la ip es suficiente para establecer la conexión)
192.168.1.130
"VIRTUAL" es el nombre de la instancia SQL del servidor MSSQL. Depende de la configuración. Si hemos apuntado ya a la instancia en freetds sólo con poner la ip bastará.
"sa" es el usuario admin de SQL, lo sustituimos por el usuario que tenemos en SQL asociado y con permisos a la base de datos.
"sql123" es la contraseña. Sustituimos por la nuestra.
Si la conexión se establece con éxito podremos ver en el navegador:
Successful Sql Connection
Adjunto archivos info.php y test.php en zip a pie de post.
TRABAJANDO EN DEBIAN 6-7-8 CON PHP 5
TRABAJANDO EN CENTOS 7 CON PHP 5
ip servidor linux-> 172.16.52.130
ip servidor windows-> 172.16.52.128
CLICK EN LA IMAGEN PARA VER INSTRUCCIONES PARA ESTABLECER LA CONEXIÓN EN PHP-7:
SI YA HAS HECHO TODOS LOS PASOS PARA PODER CONECTAR DESDE PHP7
CREA UN ARCHIVO PRUEBA.PHP CON EL SIGUIENTE CODE:
<?php
$serverName = "yourServername";
$connectionOptions = array(
"database" => "yourDatabase",
"uid" => "yourUsername",
"pwd" => "yourPassword"
);
// Establishes the connection
$conn = sqlsrv_connect($serverName, $connectionOptions);
if ($conn === false) {
die(formatErrors(sqlsrv_errors()));
}
// Select Query
$tsql = "SELECT @@Version AS SQL_VERSION";
// Executes the query
$stmt = sqlsrv_query($conn, $tsql);
// Error handling
if ($stmt === false) {
die(formatErrors(sqlsrv_errors()));
}
?>
<h1> Results : </h1>
<?php
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
echo $row['SQL_VERSION'] . PHP_EOL;
}
sqlsrv_free_stmt($stmt);
sqlsrv_close($conn);
function formatErrors($errors)
{
// Display errors
echo "Error information: <br>";
foreach ($errors as $error) {
echo "SQLSTATE: ". $error['SQLSTATE'] . "<br>";
echo "Code: ". $error['code'] . "<br>";
echo "Message: ". $error['message'] . "<br>";
}
}
?>
TRABAJANDO EN DEBIAN 9 CON PHP 7.3
RaRcrack instalar y utilizar crackeador de rar,zip y 7z
RarCrack es un programa que utiliza el algoritmo de fuerza bruta para encontrar y recuperar la contraseña correcta para el archivo comprimido en. Rar (WinRAR), .7 z (7-Zip) y. Zip (WinZip) de formato en cualquier sistema operativo compatible con POSIX. Como tal, RarCrack es útil cuando se ha olvidado o perdido la contraseña para el paquete de archivos comprimidos en el formato compatible. Para hacer fuerza bruta contraseña romper más rápido, RarCrack permite especificar una selección de caracteres y dígitos que se utilizarán en las generaciones contraseña para poder romper la clave.
La siguiente guía es una breve explicación sobre el uso de RarCrack para recuperarse y recuperar de nuevo la contraseña. Rar, z 0.7 o archivos. Zip. Tenga en cuenta que RarCrack requiere glibc 2.4, pthreads y bibliotecas libxml2 para trabajar. Utilice rpm, pkg_add, los comandos apt-get y otros para instalar las dependencias si no está instalado todavía.
INSTALACIÓN ( TERMINAL )
Bajar de Sourceforge
wget https://sourceforge.net/projects/rarcrack/files/rarcrack-0.2/%5BUnnamed%20release%5D/rarcrack-0.2.tar.bz2
Extraer Archivo
tar -xjf rarcrack-0.2.tar.bz2
Situarnos con el comando cd en la carpeta rarcrack
cd rarcrack-0.2
Instalamos
make
sudo make install
DEPENDENCIAS
sudo aptitude install libxml2-dev
Esta es la sintaxis para romper la contraseña en el terminal:
rarcrack encrypted_archive.ext [--threads thread_num] [--type rar|zip|7z]
Ejemplo:
rarcrack archivo_prueba.rar --threads 3 --type rar
para más información:
rarcrack --help
man rarcrack
RarCrack! 0.2 by David Zoltan Kedves (kedazo@gmail.com)
Código:
Usage: rarcrack encrypted_archive.ext [--threads NUM] [--type rar|zip|7z]
Options: --help: show this screen.
--type: you can specify the archive program, this needed when
the program couldn't detect the proper file type
--threads: you can specify how many threads
will be run, maximum 12 (default: 2)
Info: This program supports only RAR, ZIP and 7Z encrypted archives.
RarCrack! usually detects the archive type.
Como podéis ver el número de threads debe estar entre 1 y 12, ambos inclusive.Ir probando el que mejor os funcione.
Ejemplo de errores comunes por mala sintaxis:
Código:
ERROR
The specified file (3) is not exists or
you don’t have a right permissions!
---------------------------------------
ERROR
violacion de segmento
Es muy importante como ya sabéis la sintaxis en consola si no se escribe exactamente como toca tirará error.
Al lanzar RarCrack se creará automáticamente el archivo XML relacionado con el archivo comprimido.
Si apenas puede recordar la contraseña, pero estás bastante seguro de que sólo ciertos caracteres o dígitos se utilizan, modificar el "abc" conjunto de caracteres para incluir los caracteres o números. El primer uso, ejecute el RarCrack para generar el archivo de estado XML, a continuación, editar el archivo y luego vuelva a ejecutar la RarCrack nuevo.Estos śolo en el caso que sea una contraseña nuestra que recordemos que por ejemplo no lleva números entonces CRTL+C abrimos archivo XML con editor de texto y sprimimos los caracteres que estamos seguros que no están en el password:
Código:
<abc>0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ</abc>
Archivo XML
Código:
<?xml version="1.0" encoding="UTF-8"?>
<rarcrack>
<abc>0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ</abc>
<current>2wN</current>
<good_password></good_password>
</rarcrack>
Conjunto de caracteres: Se corresponde con el conjunto de caracteres (letras, números y/o símbolos) que se utilizarán en el ataque por fuerza bruta.
Código:
<abc>0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ</abc>
Contraseña actual: Es la contraseña por la que debe comenzar si se interrumpe la ejecución actual.
Código:
<current>2wN</current>
Contraseña correcta: Contraseña del archivo comprimido, cuando la encuentre.
Código:
<good_password></good_password>
Triple Boot con Linux Mint, Windows 7 y Mac OSX Lion (Modificar grub2)
Cualquier persona con un poco de sentido común se estará preguntando ¿para que necesito tener 3 sistemas operativos en mi ordenador? , la respuesta es muy sencilla:
Nos gusta saber que podemos hacerlo y tenerlo, aunque en realidad usemos un sistema el 90 por ciento , en mi caso Linux.
Bueno , vamos al tema. Tenía instalado Linux Mint Debian Edition , Backtrack y Windows 7. Como backtrack lo tengo también en el portátil y desde el pc últimamente no lo usaba he borrado desde el instalador de MAC esa partición y he instalado Lion ahí. Después de instalar MAC OSX , una operación un tanto delicada sobre todo en el punto de la elección de los controladores ( Drivers ) en osx se llaman Kext. Teniendo en cuenta que este sistema operativo está concebido para el hardware de Apple os podeis hacer una idea de que no es fácil que vuestro PC no acabe en Kernel Panic después de la instalación. Aunque por supuesto este software lo podemos tener en pc gracias al trabajo y esfuerzo de varios proyectos que desde que mac hiciera la migración de los procesadores Powerpc a Intel , han estado trabajando para poder cocinar una versión de mac en pc. Pero bueno dando por hecho todo esto vamos a contar como modificar el grub2 para que MACOSX arranque bien. Cuando acabas de instalar Mac , este sobreescribe el grub de Ubuntu y pierdes el arranque. Recuperalo es sencillo. Arrancamos con un LiveCD de ubuntu 11.10 por ejemplo (cualquiera que tenga grub2) y seguimos estos pasos):
1 Primer Paso ( Recuperar Grub ) Usando una distribución Live Consiste en usar una distribución en modo LiveCD para instalar nuevamente el GRUB. Usaremos el LiveCD de Ubuntu 9.10 o superior (debe ser la versión Live o Desktop), aunque puede ser cualquier otra distribución que use GRUB2 como gestor de arranque y no LILO ni Grub 1. Lo primero que debemos hacer es arrancar el live-cd y abrir una terminal.
Despues escribimos los siguiente para ver las particiones de los distintos discos duros:
Código:
$ sudo fdisk -l
Después vemos cual es la partición donde tenemos Ubuntu y la montamos en /mnt (en la mayoría de los casos esta partición será sda1, el ejemplo lo haré con esa partición pero mira cual es tu partición con el comando fdisk):
Código:
$ sudo mount /dev/sda1 /mnt
Ahora, monta el resto de los dispositivos: Código:
$ sudo mount --bind /dev /mnt/dev
$ sudo mount --bind /dev/pts /mnt/dev/pts
$ sudo mount --bind /proc /mnt/proc
$ sudo mount --bind /sys /mnt/sys
Y ejecuta el comando chroot de forma que accedemos como root al sistema de archivos de nuestro antiguo Ubuntu:
Código:
1
$ sudo chroot /mnt
Por último cargamos el Grub en el MBR ejecutando el siguiente comando:
Código:
1
# grub-install --recheck /dev/sda
(sda lo debemos substituir por el disco duro que utilizamos para arrancar los sistemas operativos, casi siempre es sda. Ojo!! no poner el número de partición, solo sda). Reiniciamos y cuando vuelva a arrancar ubuntu (no el del LiveCD), podemos ajustar en el menú del GRUB manualmente para que aparezca en el menú de arranque el nuevo sistema operativo que nos borró el MBR, o dejar que lo haga el automáticamente con el siguiente comando: Código:
$ sudo update-grub2
Si el comando no te funciona, quizás necesites instalar el paquete grub2:
Código:
$ sudo aptitude install grub2
Una vez reiniciado el sistema ya tendremos nuestro grub trabajando. Entramos en linux ( ya el nativo ) y después de ejecutar update-grub2 , ya nos reconoce MAC OSX pero por lo menos en mi caso y en el de muchos aunque reconoce la entrada no puede arracar, me explico: Después del update-grub2 te crea en el arranque las entradas a Linux,Windows 7 que ya tenemos y agreaga dos entradas de Mac , una de 32 y otra de 64 bits, aunque no están operativas osea el sistema no arranca.
Segundo Paso , Dejar Operativa la entrada del Grub a Mac OSX SOLUCIÓN Agregar manualmente cualquier sistema operativo (Ejemplo: MacOS)
Esta es la solución si el grub no detecta la partición o si la detecta pero no la arranca correctamente. Es el equivalente a insertar una entrada manualmente en el antiguo menu.lst. En este ejemplo insertamos una particion de MacOS.
Abrimos el archivo /etc/grub.d/40_custom:
Código:
sudo gedit /etc/grub.d/40_custom
En la última línea del archivo pegamos las siguientes líneas (importante cambiar hd0,1 por la particion que corresponda): Si no tenemos claro en que partición tenemos instalado Mac OSX , en la terminal
Código:
sudo fdisk -l
y sustituimos el 1 del hd0,1 por el número de nuestra partición donde está mac.
Código:
menuentry "MacOS X (en hd0,1)" {
insmod hfsplus
set root=(hd0,1)
multiboot /boot
}
Equivalencias
fd0
/dev/fd0
fd0
hd0
/dev/sda
sda
hd1
/dev/sdb
sdb
hd2
/dev/sdc
sdc
set root=(hd0,1) (modificar aquí ,hd0,1 por la partición donde tú tienes instalado mac. Si fuera en la partición sda8 tendrías que poner hd0,8) Por Último Escribimos el comando:
Código:
1
sudo update-grub2
Si en el menú del grub aparecen 2 entradas para mac (la que creamos manualmente nosotros y otra que aparece automáticamente) debemos abrir el archivo 30_os-prober, ir a la sección de mac y comentar las líneas dedicadas a ese sistema operativo (si no has modificado el archivo, desde la 158 hasta la 207, incluidas). Las líneas son las siguientes:
Código:
$ sudo gedit /etc/grub.d/30_os-prober
Código:
# macosx)
# OSXUUID="`grub-probe --target=fs_uuid --device ${DEVICE} 2> /dev/null`"
# cat << EOF
. . .
# xnu_splash /Extra/splash.tga
# fi
# fi
#}
#EOF
Otra opción para ocultar entradas del grub que no queremos que aparezcan: En el menú del Grub tenemos alguna entrada que no queremos que nos aparezca, entramos en la ruta /boot/grub/ y editamos el archivo grub.cfg. Primero hacemos la saludable copia de seguridad:
Código:
sudo cp /boot/grub/grub.cfg grub-copia.cfg
Después editamos el archivo grub.cfg y comentamos las lineas ( # ) de la entrada a sistema que no queremos que nos aparezca en el grub.
Código:
sudo gedit /boot/grub/grub.cfg
Ejemplo de comentar:
Código:
# menuentry "Memory test (memtest86+, serial console 115200, experimental multiboot)" {
# insmod part_msdos
# insmod ext2
Y así sucesivamente a todas la lineas de la entrada que no queremos que nos aparezca. Una vez hecho esto ya podemos agregar pijadas tipo burg para tener un gestor de arranque con imágenes de nuestros sistema etc. He tenido instalado burg pero como me he acostumbrado a la entrada de texto casi me gusta más. En el foro linux hay un tema para instalar burg Saludos !!!
Suscribirse a:
Entradas (Atom)
