Publicacion de problemas informaticos y su resolución en mi vida diaria -trabajo y casa- para mi documentación personal y para quien le sirva. Temas corrientes aqui son: Linux, macOS, Deployement, bash, configuraciones, DHCP, optimización, Samba, Programas, DOSBOX, Comandos de consola, Scripts, Virtualización, DNS,
viernes, 27 de marzo de 2020
FreeBSD experiencias III - Desktops
Nombre de los escritorios: Workspace 1,
en el archivo ~/.fluxbox/init
fluxbox solito me gusta mucho, aunque me molesta el tener que hacer clic para llamar al menu, por lo que me instale xfce-desktop, que te permite poner lanzadores, accesos y carpetas en el escritorio, ademas de permitir configurar colores para los workspaces. El menu de xfce me parece sobrecargado, por lo que me los salto y xfce-panel, tampoco me agrega demasiado (aparte del calendario y los escritorios en miniatura)
xfce-desktop se puede llamar desde el terminal o crear un menu en fluxbox para llamarlo. Para salir tenia un error porque quiere regresar al session-manager, que no uso ni quiero usar, entonces para saltar el error cree un lanzador que mata todo (sale a la consola de texto) y uno que mata a xfce (sale a fluxbox) con:
kill all miusuario
pkill xfce-desktop
viernes, 12 de julio de 2019
el administrador y el usuario
La pregunta me perturbó puestro que tuve que argumentar pros y contras, y aun más convencerme a mi mismo y establecer parámetros.
Porque habría de querer el usuario instalarse programas?
pues porque lo necesita, es decir, necesita el programa.
Pero si lo necesita porque no puede pedir al administrador que se lo instale?
Pues porque no sabe que lo necesita, es decir, el usuario quiere tener el poder de instalar cualquier cosa en cualquier momento pero no sabe qué.
Para esta actitud reaccionaria (que sólo reacciona ante la necesidad sin planificar) se pueden encontrar contras:
- es conocido que existen spamers y sitios web que ofrecen algun archivo que en un momento el usuario puede necesitar o necesitar abrir: como el programa necesario no existe en el computador, el usuario cae en un enlace de un programa que le permite abrir el archivo, el usuario lo baja lo instala y así se queda funcionando con un troyano, gusano o virus. Las mas de las veces el usuario no se molesta en desinstalar el programa, en otros casos, aunque lo haga pueden quedar escorias.
También el usuario puede argumentar que necesita instalar dispositivos: impresoras, discos externos, etc.
Nuevamente el contraargumento es parecido: si el usuario cambia la configuracion del sistema, este podría dañarse.
El usuario administrador quiere "tener el poder" porque se siente capaz de administrar su computador. Claro que en el punto que no pueda quiere tener la posibilidad de llamar al administrador que le resuelva el problema que él causó.
Si el usuario es suficientemente experto para administrar su equipo, entonces no necesita mas ayuda. El administrador que sólo esta para contestar preguntas donde la capacidad administrativa del usuario se termina esta condenado a correr de aqui para alla apagando fuegos.
La administración de IT se fundamenta en un trabajo pro-activo, en la que el administrador crea herramientas para configurar los equipos de manerea automatizada y correcta, normalemente lejos de lo que el usuario final esta acostumbrado a hacer siendo ayudado por asistentes de configuración presentes en los programas.
El usuario debe entender su rol como empleado para tareas definidas que normalmente estan bastante lejos de la administracion de IT. El administrador establece la infrastructura adecuada para que el usuario trabaja de la manera más eficiente y adecuada.
Si el administrador cumple su rol correctamente, es innecesario que el usuario tenga derechos administrativos. El usuario y el administrador no son enemigos sino que estan en una relacion reciproca de servicios y clientes.
principio de seguridad del mínimo privilegio
Aunque la velocidad de reacción para la solución de problemas puede ser la misma para un equipo externo y desconocido por el departamento de IT que para equipos configurados y mantenidos por él, la velocidad de solución de los problemas puede ser drasticamente diferente, puesto que los equipos externos resultan desconocidos, no tienen documentación alguna y además no estan anexados a las herramientas de configuración del departamento.
Secretarias y Jefes con altos privilegios y acceso a datos sensibles ponen además en juego esas informaciones -personbezogenedaten-
Admin o no Admin he ahi el dilema:
Si los usuarios se empeñan en que el único camino es que ellos tengan derechos administrativos, el administrador puede ofrecer un "servicio limitado", para esto es bueno tener una lista de los servicios que engloba el depto. de IT y tachar los que no se pueden ofrecer.
La realización de SLA podría también ser útil. El usuario quiere ayuda pero también quiere instalar su OS, programas y todo lo le alcance su capacidad. Al instalar todo de manera manual por DVS o downloads, el administrador no tiene mucho camino para arreglar problemas que estas instalaciones y malas configuraciones puedan ocacionar.
El departamento de IT puede por ejemplo ofrecer reinstalacion completa del sistema con configuración básica y programas standard para digamos un ejemplo, 3 horas. Si una computadora no pertenece al dpto. un rescate de los datos podría ser necesario, cosa que en algunos casos -como disco duro danado- podría durar hasta días y costar una pequena fortuna.
Asimismo, el departamento de IT puede ofrecer instalacion remota de programas en digamos 10 minutos o menos, mientras que para computadoras no administradas no se ofrece instalación remota -dado que el usuario quiere instalar- y si fuera requerido podría ser necesaria una cita, además de tiempos de traslado y atención.
Otras tareas engorrosas como la configuración de email, podrían realizarse de manera automatizada a traves de servidores de perfiles o GPO pudiendo tardar también sólo algunos minutos, mientras que estas mismas configuraciones para equipos no administrados requieren también citas y traslados.
Quizás lo más recomendable sea hacer listas de los servicios automatizados que ofrece IT cuando la administración es completa y compararla con las posibilidades cuando el usuario quiere hacer el trabajo.
https://www.security-insider.de/mehrheit-der-firmen-gibt-mitarbeitern-adminrechte-a-682765/
viernes, 5 de julio de 2019
FreeBSD - Crear una presentación en modo quiosco
adduser show
2.- Instalar el escritorio Lumina (esta basado en fluxbox pero ya viene con unas cuantas herramientas preinstaladas):
pkg install slim xorg lumina-desktop
3.- Instalar VLC (soporta más formatos y es muy configurable)
4.- configurar el usuario para que se logee automaticamente en
/etc/ttys:
ttyv1 "/usr/libexec/getty show" xterm onifexistt secure
5.- configurar vlc para que arranque en pantalla completa, en círculo, y con videos aleorios:
comando :
vlc -f --loop --random "carpetaconvideos"
6.- buscar en la configuración de Lumina (por menus) la opcion Autostart, poner ahi la aplicación vlc. Esto creará un archivo vlc dentro de la carpeta
~/.config/autostart/vlc.desktop
7.- abrir este archivo y editarlo comentando (o borrando) la linea Exec y agregando la linea:
Exec=/usr/local/bin/vlc -f --loop --random "3D-Hologram"
9.- Agregar las lineas a .profile para que ejecute lumina, y también deslogee al show al salir:
start-lumina-desktop&
exit
10.- disminuir el delay del arranque a tres:
/boot/loader.conf :
autoboot_delay="3"
11.- algunas cosas anexas que siempre pongo a FBSD:
pkg install firefox
pkg install xoterm (el xterm que viene es horrible)
pkg install vim
pkg install zsh (hay que ponerlo como shell standard de c/usuario, por eso mejor instalar antes de crear show-user) tambien se puede hacer con chsh, FBSD no recomienda combiar el shell de root por acceso al sistema de archivos
/usr/local/etc/X11/xinit/xinitrc
- Im Wörterbuch speichern
- Keine Wortliste für Portugiesisch -> Spanisch...
- Eine neue Wortliste erstellen...
- Keine Wortliste für Portugiesisch -> Spanisch...
- Kopieren
- Im Wörterbuch speichern
- Keine Wortliste für Spanisch -> Spanisch...
- Eine neue Wortliste erstellen...
- Keine Wortliste für Spanisch -> Spanisch...
- Kopieren
jueves, 4 de julio de 2019
Fast SSH (resumen) FreeBSD / macOS
Server:
vi /etc/ssh/sshd_config ==>
PermitRootLogin yes <== IMPORTANTE no sólo descomentar sino cambiar NO por YES !!!:/etc/rc.d/sshd restart
Client:
ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.10.10.10
ssh root@10.10.10.10
Si hay problemas:
por defecto estan y debe estar activadas las siguientes configs:
esta activada ssh? => less /etc/rc.conf ==> ssh_enable="YES"
ssh corre? ==> /etc/rc.d/sshd start/stop/restart
el cliente ya debe tener su llave generada sino hay que hacerlo con ssh-keygen. Comprobarlo es mirar en ~/.ssh
Cambiar el shell standard del que se logea por ssh (remoto es macos):
- me importa porque uso zsh y estandar viene el bash
sudo chpass -s /bin/zsh administrator
Lindo zsh prompt coloreado con directorios, usuario y computername:
en un solo comando (copia y pega)
setopt PROMPT_SUBST
wvb11% PROMPT='%{$(pwd|([[ $EUID == 0 ]] && GREP_COLORS="mt=01;31" grep --color=always /|| GREP_COLORS="mt=01;34" grep --color=always /))%${#PWD}G%} %(!.%F{red}.%F{cyan})%n%f@%F{yellow}%m%f%(!.%F{red}.)%#%f '
https://superuser.com/questions/49092/how-to-format-the-path-in-a-zsh-prompt
ls con colores (por supuesto tambien por ssh)
ls -lhaG
zsh con historial:
zsh a traves de ssh no tiene archivo de configuracion ni historial, para que funcionen transladando los comandos de bash, es necesario lo siguiente:
vim ~/.zshrc
HISTFILE=.zhistory
SAVEHIST=1000
cp ~/.bash_history .zhistory
Simple .zshrc con todo:
vim .zshrc
HISTFILE=.zhistory
SAVEHIST=1000
setopt PROMPT_SUBST
setopt HIST_IGNORE_DUPS
setopt HIST_IGNORE_SPACE
setopt INC_APPEND_HISTORY
PROMPT='%{$(pwd|([[ $EUID == 0 ]] && GREP_COLORS="mt=01;31" grep --color=always /|| GREP_COLORS="mt=01;34" grep --color=always /))%${#PWD}G%} %(!.%F{red}.%F{cyan})%n%f@%F{yellow}%m%f%(!.%F{red}.)%#%f '
alias ls='ls -G'
i
- Im Wörterbuch speichern
- Keine Wortliste für Englisch -> Spanisch...
- Eine neue Wortliste erstellen...
- Keine Wortliste für Englisch -> Spanisch...
- Kopieren
domingo, 3 de febrero de 2019
django
creamos una carpeta en ~ como: django-projects entramos en ella con cd y activamos el entorno con:
-- mkdir django-projects
-- cd django-projects
-- source bin/activate
-- pip install django
-- django-admin startproject projecto01
-- cd projecto01
-- tree
-- vim settings.py
---- ALLOWED_HOSTS = ['192.168.10.100'] <--ip del servidor django
-- cd ..
-- python manage.py runserver 192.168.0.241:8000
-- ctrl + c
-- python manage.py migrate
-- python manage.py createsuperuser
para trabajar con pycharm sera util tener una carpeta compartida es bueno tener samba. Para eso hay que ver mi post de samba simple.
sábado, 2 de febrero de 2019
Crea una maquina virtual optimizada para virt-manager
Hay un cliente para virt en docker. Lo he bajado e instalado. No me agradó, no funciona muy limpiamente. Tambien hay una formula para instalarlo en mac con brew, pero tambien genera toda suerte de errores, ademas de desconfigurarse con actualizaciones de python. Lo que hasta ahora mejor me ha funcionado y sin falla, ha sido una maquina virtual de linux con virt-manager, pero siempre con problemas de video, con los monitores, los teclados, las ventanas, etc. Como a pesar de estos problemillas ha sido hasta ahora la mejor solucion que he encontrado, me he decidido a encontrar la solucion a los problemillas y crear la solucion (quasi) perfecta.
Esta nueva VM no debe presentar problemas con las aditions o guest-tools, por lo que he desechado parallels y he regresado al buen virtualbox. Me he comprado parallels porque solo este y vmfusion pueden (o podian correr vm de macos). Pero para que corra ubuntu 18 con Guest-tools y asi la resulucion optima, debo comprar la version 13 pues la mia, 11 tiene problemas. Como un software pago no puede lo que uno free sí es una sinverguenzura, pero también harina de otro costal. Ahora que esta vm debe ser liviana, por lo que opte por ubuntu server alternate con openbox y algunas utilidades minimas. Aunque xfce me gusta tambien, openbox me parece aun mas pequeno y liviano.
Como el proposito general de la vm es virt-man, salta la mayoría de las opciones de eleccion, siendo lo unico necesario el login con password y salta de una vez a virtman con todas las vm en el vm-server.
Ademas de todo, he procurado ahorrar los comandos ya conocidos como apt, cosa que cualquiera que esta buscando una solucion asi ya debe saber y me he concentrado en los problemas o cosas poco conocidas.
1. ubuntu server 18.04 alternate con openssh-server (viene en el instalador, se puede instalar despues tambien)
sudo apt update / upgrade
install xinit
install openbox
install nautilus, xterm, firefox, arand, grub-customizer, feh
sudo apt-get install virtualbox-guest-additions-iso
---- configurar el menu de openbox:
copiar /srv/.../openbox/menu. a ~/.config/openbox/menu.xml
agregar las entradas:
virt-manager, terminal blue, nautilus, firefox, openbox conf, arandr, grub-customizer,
reboot, shutdown.
---- iniciar openbox al login:
~/.bashrc
(al final del archivo)
if [[ ! $DISPLAY && $XDG_VTNR -eq 1 ]]; then startx fi
--- iniciar grub ohne menu und 30 sec timeout
aqui encontramos muchos tips sobre editar /etc/default/grub y
poner en la variable GRUB_TIMEOUT=0 o -1
tambien probé grub-customizer
pero parece que grubd.config reescribe esto y al final lo unico que funciona es
editar manualmente /boot/grub/grub.cfg y cambiar TODAS las variables timeout a 0
ADVERTENCIA: se cambiará otra vez con cualquier cambio en grub al ejecutar update-grub
--- iniciart app (virt-manager) automaticamente con openbox
crear archivo en:
~/.config/openbox/autostart.sh
y dentro:
virt-manager &
--- configurar una resolucion optima:
monitor principal macbook retina 13 pulgadas 1680 x 1050
monitor secundario acer 24 pulgadas 1920 x 1080
vbvm 1440 x 900 (puede estar en ambos monitores) debe ser grande para ver las maquinas virtuales corriendo en pantalla de comandos
1. crear una configuracion y guardarla con arandr
2. ir a ~/.screenlayout$ y hacer la configuración ejecutable con chmod +x conf.sh
3. ejecutarla, se puede cambiar la configuracion y ejecutar el script de nuevo
dirigir el script a .config/openbox/autostart.sh asi:
sh ~/.screenlayout/1440x900.sh
--- Poner un fondo de pantalla (hace las ventanas mas visibles)
1. instalar feh con apt
2. bajarse un fondo de escritorio
3. poner en .config/openbox/autostart el comando
feh --bg-fill /pfad/zu/wallpaper.jpg
viernes, 26 de octubre de 2018
Glusterfs y Virsh 2
1- Ambiente Físico: Una unidad de disco física será adicionada al sistema de archivos
2- Cluster, se creará un cluster con Glusterfs que debe replicarse entre dos servidores
3- Virtualizacion, se creará un pool almacenado en el cluster, que permitirá encender las maquinas virtuales en cualquiera de los dos servidores (migración)
1- Ambiente Físico:
la primera unidad de disco fisico : /dev/sda
la primera partición en el primer disco: /dev/sda1
Al agregar un segundo disco a este se le asigna (autom.) /dev/sdb
al crear la primera partición se le asigna: /dev/sdb1
CREAR PARTICION
fdisk /deb/sdb/
mkfs.btrfs -i size=512 /deb/sdb1
MONTAR PARTICION
mkdir -p /export/sdb1
echo "/dev/sdb1 /export/sdb1 btrfs defaults 0 0" >> /etc/fstab
mount -a
root@vsh05:~# blkid
/dev/sda1: UUID="c7ad3108-758a-4920-8a95-c94865901ea3" UUID_SUB="2a7234b0-6b59-48fd-b711-255f4f378675" TYPE="btrfs" PARTUUID="32dc5157-01"
/dev/sdb1: UUID="2Tkg0j-OIlG-wEWt-guI6-dfFw-TJnh-RLcchK" TYPE="LVM2_member" PARTUUID="46936cbd-01" <<- esta unidad es con LVM
/dev/mapper/vg00--vm05-data: UUID="bcbb8eb9-a861-4348-a848-c545af674c7c" TYPE="ext4" <<-esta entrada sólo aparece cuando agregamos glusterfs
Comandos útiles:
blkid
cat /etc/fstab [comparar ambas salida]
gluster volume delete almacen
2- Cluster:
conectar los nodos:
gluster peer probe node2 <<-- inicia los nodos debe hacerse cruzado
gluster peer status
mkdir -p /export/sdb1/brick
gluster volume create almacen replica 2 servidor01:/export/sdb1/brick servidor02:/export/sdb1/brick <<-- xq simplemente ambos servidores tienen los mismos directorios. Este comando creará la entrada "dev/mapper" en fstab (ver arriba)
gluster volume start almacen
gluster volume info
gluster volume status
gluster peer status
gluster volume create almacen replica 2 servidor01:/export/sdb1/brick servidor02:/export/sdb1/brick force
Links:
https://www.youtube.com/watch?v=LlczFSvdYkQ
https://libvirt.org/storage.html#StorageBackendGluster
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/virtualization_deployment_and_administration_guide/sect-managing_guest_virtual_machines_with_virsh-storage_pool_commands
viernes, 12 de octubre de 2018
Debian 9 en Macbook early 2008
Empece por la version Debian-mac 9.5 amd64
Para salvar la lentitud en el arranque: rEFInd
Desktop escojido LXCE (una mejora de openbook)
Problemas:
Con el brillo, con las teclas de control de brillo
Con las teclas de control de audio
Con la techla de expulsion de cd
Con el WiFi
- tools :
-- lspci -vvnn | grep 14e4
-- iw list
-- iwlist chan
Con la WebCam
Montar la particion Macos:
- Encontrarla con fdisk -l
- Crear carpeta y montarla con mount /dev/hda2 APPLE
Sacar el driver desde: System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBVideoSupport.kext/Contents/MacOS/AppleUSBVideoSupport
Con un teclado externo de otro idioma
Con un monitor externo
Con algunos dvds
*LightDM me obliga cada vez a escribir mi usuario (no solo la contrasena):
https://wiki.debian.org/LightDM#Enable_user_list
[Seat:*] greeter-hide-users=false
martes, 9 de octubre de 2018
Una facil mudanza a shell zsh
Despues de trabajar casi 20 años con el MS-DOS de microsoft y otros 5 con powershell, los interpretes de comandos te resultan simpáticos.
El uso frecuente de linux me acerco a bash, csh y sh, donde por ser el mas usado, me quedé largo tiempo con bash.
Pero el brinco a mac y su sabor por lo fácil y bonito me hizo buscar una alternativa "mac" al esqueletico shell estandar de macos.
Lo primero fue cambiar el terminal estandar por iTerm. Cuidado que el terminal no es el shell, sino un "metashell"
A medida que lo fuí usando fui experimentando problemas habituales y repetitivos que el buen bash no podia salvar, como es el hecho que las historia de las sesiones no se guardan de manera confiable. Me refiero a las incongruencias que ocurren cuando el usuario esta logeado en varias consolas del mismo servidor.
Los cambios a zsh no fueron en nada duro (ni siquiera en mi servidor FreeBSD), instalar zsh:
en mac ya estaba en /bin/ (lo habre instalado en otra ocasion?)
en bsd : pkg install zsh
Luego ponerle el fancy skin "oh-my-zsh" con el sabor "agnostec" que es el mas pichirruchi que se puede escojer.
Los caminos cortos descritos en el sitio github de oh-my-zsh no me funcionaron muy bien en los diferentes sistemas que uso, pero el camino largo: advanced installation --> manual installation no presentan ningun problema.
En mac para mi iTerm tuve que instalarme una coleccion de letras especiales llamadas
"Powerline", tambien presentes en github. Mi FreeBSD no lo necesita.
UPDATE Agosto 2020
Despues de algunos años usando zsh me han liado las configuraciones, la instalacion de git y wget, para instalar ohmyzsh, la configuracion, etc. He probado FiSH, que tiene casi todo lo que necesito desde el principio sin tanto trabajo. Me lo quedo!
simplemente:
pkg install fish
chsh root /usr/local/bin/fish
jueves, 4 de octubre de 2018
Usando VIM
Bien por lo poderoso o lo complicado, hace ya desde algun tiempo que empecé a incursionar en el uso de vim, alternando con otros editores, por lo que ahora escribo mis experiencias:
Casi todo lo configurable y lo más importante de VIM se puede configurar a traves de este archivo de configuración:
~/.vimrc
------------------------------------------------------------
filetype plugin indent on
syntax on
set nocompatible
set number #<-- numera las lineas
set filetype=XML
autocmd BufEnter *.recipe :setlocal filetype=xml
execute pathogen#infect() #<--carga el instalador de plugins "pathogen"
set laststatus=2 #<-- permite que funcione el plugin light..
map <C-o> :NERDTreeToggle<CR> #<-- mapea a ctrl-o la aparicion del plugin NERDTree
------------------------------------------------------------
Vim tiene, dos o hasta 3 modos de edición, que yo uso asi:
-------------------------------------------------------------------------
Modo Comandos, que es el que abre Vim, o se llama con ESC + :
Modo Insercion (Insert), que se llama cuando estas en modo comando y presionas "i"
Modo Visual que aparece cuando usas el ratón, desde una GUI y con lo que puedes cortar y pegar. En algunos contextos tambien se puede cortar y pegar sin modo Visual.
Los comando son un queso, por lo que hay que buscarlos y memorizarlos, yo (todavía) uso una chuleta que de vez en cuando actualizo y pego en mi monitor:
=====================================================
Chuleta Comandos Importantes de VIM:
-------------------------------------------------------------------------
:set number
:set nonum
:ha! --> hard copy (imprimir)
:wq --> guardar y salir
:w archivo.txt --> guardar con nombre "archivo.txt"
:q! --> salir sin guardar
u --> deshacer
p --> pegar
dd --> cortar (y borrar) linea
dw --> delete word --> borrar/cortar palabra
37dd --> cortar 37 lineas
yy --> copiar linea
23y(espacio) --> copiar 23 lineas a la derecha
y8(espacio) --> copiar 8 caracteres a la derecha
y6l(espacio) --> copiar 6 car a la izq
:tab archivo.txt --> abre una nueva pestaña (tab) con el archivo.txt
:tabnew
gt --> go tab , siguiente pestaña
:tabc --> tab close
:e archivo.txt --> cambiar (abrir) a archivo.txt
/palabra --> buscar "palabra" (hacia adelante)
?palabra --> buscar "palabra" (hacia atras)
:vsp archivo.txt --> split con archivo.txt
:windo diffthis --> encuentra las diferencias entre las dos ventanas (del split)
ctrl + ww ---> cambia entre ventanas
ctrl + wr ---> intercambia las ventanas (el derecho va a la izq y viceversa)
:%s/^/textoaagregar --> agregar caracteres o espacios en todas las lineas, bueno para agregar espacios
:125, 189s/^/# --> agrega el comentario # desde la linea 125 hasta la 188
copiar lineas desde la 81 a a 91:
81,91y osea que :
%= todos
n-inic, n-fin= rango
s = linias
/^/# = agregar #
cambiar un texto por otro:
:g/texto_a_sustituir/s//texto_nuevo/g
ó también:
:%s/texto_a_sustituir/texto_nuevo/g==============================================
Plugins para VIM
------------------------------------------------------
Además, se puede complementar VIM con plugins que le agregan funcionalidades o lo hermosean, como por ejemplo:
- NERDTree --> agrega un arbol interactivo de directorios y archivos
- lightline --> agrega color funciona la barra de comandos e infos
y asi muchos más que se pueden encontrar en vim-awesome, que es una pagina web dedicada a las herramientas para vim
Estos plugins se pueden installar con varios gestores de plugins. Yo uso pathogen, creo que fortuitamente y no recuerdo ninguna razon especial por la que le haya escojido. Hasta ahora me funciona bien y me parece fácil. Otros gestores son: Vundle, Neobundle und VimPlug.
-- Pathogen instalacion :
----------------------------
Básicamente se trata de copiar el paquete pathogen.vim en la carpeta ~/.vim/autoload
En el apartado instalación de github se explica muy bien:
https://github.com/tpope/vim-pathogen
en resumen:
mkdir -p ~/.vim/autoload ~/.vim/bundle && \
curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim
y agregar a vimrc. la linea
exit:
execute pathogen#infect()
eso es todo!
-- Instalar Plugins NERDTree y lightline con Pathogen:
------------------------------------------------------------------
Para instalar cualquier plugin con Pathogen, basta copiarlo en la carpeta ~/.vim/bundle, esto es lo que hacen los comandos siguientes:
git clone https://github.com/scrooloose/nerdtree.git ~/.vim/bundle/nerdtree
git clone https://github.com/itchyny/lightline.vim ~/.vim/bundle/lightline.vim
--- Trics con NERDTree y Lightline
NT se activa con el comando
:NERDTree
Pero si lo usas mucho, pronto te fastidiara ese engorroso comando, asi que se puede
mapear a una combinacion de comando, eso es lo que sale arriba en mi ejemplo de .vimrc
Lightline no me funcionó asi nada mas hasta que agregé a .vimrc
set laststatus=2
-- Agregar algo al final de cada linea:
:%norm A algo
Explicacion:
:%norm A*
This is what it means: % = for every line norm = type the following commands A* = append '*' to the end of current line
-- Imprimir (en impresora) los numeros de linea:set number
set printoptions=number:y
jueves, 13 de septiembre de 2018
Como imprimir un documento de Word directamente desde el formato PDF
La encargada de crear estas plantillas, las crea en Word Windows y no tiene estos problemas, por lo que esta dificil de convencerla que realice unas plantillas limpias donde todo funcione. Además las plantillas no presentan manchas ni faltas en otras impresoras, aun desde mac y desde word.
Por otro lado las mismas plantillas se dejan imprimir sin problemas desde los mismos clientes pero con LibreOffice, que como es absurdamente normal, nadie quiere usar.
También se imprimen las plantillas sin problemas cuando se exportan a .pdf y luego desde .pdf se imprimen, por lo que un error en la impresora es casi descartable.
Buscando infos en la red, me he topado con toda clase de foros que vociferan (una vez más) contra Microsoft y su update 16 para MS-Office. Super, que tengo que hacer? desinstalar el software y reinstalar el viejo?
Aunque no sea la solución más limpia, he tenido que trabajar y presentar una solución, que es la siguiente:
En macOS, he configurado una
Carpeta con acciones automáticas llamada "to-pdf-to-print"
--> imprimir Objetos de Finder
--> Borrar (a Papelera) objetos de Finder
Todo lo que se guarde en esta carpeta se imprimirá y luego irá a la papelera.
En MS-Office, he configurado una macro que exporta como pdf, al exportar, el usuario escoje la carpeta de impresion automática, que ligue en un favorito al finder*.
Sub Save_to_PDF()
' Save_to_PDF Macro
With Dialogs(wdDialogFileSaveAs)
.Format = wdFormatPDF
.Show
End With
End Sub
Claro que se siempre se puede hacer todo el proceso de manera manual, pero cuandoel empresa son flojitos y tu un consentidor admin...
* Puede parecer una estupidez no configurar el VBA para que directamente guarde en esta carpeta, asi nos ahorramos el favorito en Finder y algunos clic al ejecutar el script, pero lo que pasa es que el soporte de VBA para las rutas en macOS es bien deficiente y es otro quebradero de cabeza que no he querido ahondar.
https://wordmvp.com/FAQs/MacrosVBA/ChangeSaveAsPath.htm
https://www.rondebruin.nl/mac/mac007.htm
http://ideophone.org/one-click-save-as-pdf-word-2007-2010-2013/
-----
Como instalar la solución?
miércoles, 5 de septiembre de 2018
FreeBSD experiencias - parte II
Debo confesar que FBSD toca el limite de lo soportable para usuarios comunes y esta lleno de pequenas pesadillas. Esto aqui no funciona, esto alla, y asi. Ahora sé porque el diablito es su mascota.
Pero muy aparte de los problemas que he tenido, debo admitir que he tenido con FBSD una diversión que hacía mucho tiempo no tenía.
Todos los problemitas tienen soluciones relativamente simples y el sistema corre estable (despues que lo estabilizas).
Me gusta la universalidad de freebsd. Mientras en linux te ahogas en foros y blog que tratan sobre diversas distribuciones, en fbsd es todo un poco mas centralizado, un poco mas unificado. Lamentablemente no de manera absoluta, pues encontramos también unas cuantas versiones, de las cuales muchas estan medio o bien muertas, o les cambiaron el nombre y asi.
Bueno, mi primera prioridad con mi FBSD laptop (un viejo thinkpad x61s) fue formar un sistema usable en modo texto para usuario. Para esto instalé mis herramientas favoritas:
- zsh (fbsd por defecto es el csh)
-- oh-my-zsh (es demasiado cool)
- vim (fbsd viene con ee, que me parece terrible)
- mc (midnight commander como filemanager)
- w3m (navegador text)
- git
- curl
Lo más del trabajo en esta primera fase estuvo en configurar, editando archivos rc y demás.
En este segundo capítulo voy a referirme a la configuración del entorno xorg para usar aplicaciones gráficas, esto fue realmente muy fácil con
pkg install xorg
-- y digo fácil porque x11 funcionó de un tiro en modo vesa. El driver gráfico de Intel no me funcionó automaticamente con la distribución TrueOS por lo que puedo derivar que tampoco funcionará con FreeBSD, pero aún tengo que probar.
Para empezar traté de trabajar con el entorno por defecto twm, cosa que abandone relativamente rápido, puesto que además de su exageradamente espartana simplicidad, es bastante lento. Por ahora estoy trabajando con blackbox que es bonito, simple, configurable y rápido.
Desde los tiempos en que empece con algun linux slackware que venía en una revista tengo la costumbre (no se si es correcta) de instalar xorg, y ejecutarlo manualmente despues del login en modo texto por el comando startx o xinit. Despues instalo xdm. En FBSD tuve el problemilla que hacía un loop, devolviendose a xdm cada vez que introducía nombre y contrasena.
Al mirar en ~/.xsesions-error encontré la causa:
/usr/local/bin/xsm not found
la solución:
pkg install xsm
a pesar de que xdm a la finale funcionó, pronto me di cuenta de que estaba bastante obsoleto y su configuración es bien terrible ya que cuenta con varios grupos de archivos que se guardan en varias carpetas, que además difieren entre distribuciones. En el camino a realizar todos estos cambios, me fui topando con mas y mas foros en los que se hablaba de lightdm, el cual decidí probar en lugar de xdm.
Para cambiar lo que se ejecuta con el comando startx, hay que editar:
/usr/local/etc/X11/xinit/xinitrc
aqui comente twm y todos los "nice programs" y agregé al final del archivo "blackbox" sin "".
Especialidad del Thinkpsad x61s con el adaptador grafico y el control de brillo:
--------------------------------------------------------------------------------------------------------
de En la primera instalación de xorg, escojí el adaptador vesa por ser mas confiable, ya que por experiencia es el unico que siempre funciona. Gracias a esto el thinkpad se veía brilloso y la imagen aunque bastante aceptable, no muy fina. Al buscar una solucion para el broblema del control de brillo, llegue al punto en el que con el controlador vesa no podía ir mas alla. Lo tenia que cambiar entonces por otro mas específico. Simplemente:
pkg install xf86-video-intel
y como magia, en el proximo arranque funcionaba el control de brillo y la calidad estaba mucho mejor!
un mensaje de la consola en el arranque decía:
VT: Replacing driver "vga" with new "fb"
NOTA Sobre el brillo:
los comandos:
xrandr --listmonitors
xrandr --output LVDS1 --brightness 1.1
pueden resultar muy utiles. En mi caso mi monitor es LVDS1, lo cual me enseno el primer comando.
Problema con WLAN
-------------------------------------------------------------------------------------------
el adaptador en rc.conf para wlan no debe estar igual que el ethernet "DHCP" sino que debe decir "WPA SYNCDHCP", entonces funciona. Así:
ifconfig_eth0="DHCP"
ifconfig_wlan0="WPA SYNCDHCP"
Problema con el teclado Ingles UK de una Thinkpad x61s
-------------------------------------------------------------------------------------------
En esta constelación mi Thinkpad tiene un teclado un poco extrano, pues en la esquina superior izquierda, antes del uno, esta una tecla --| ` | y entre la mayuscula izquierda y la z estan | (partida) y \ . Concuerda con el articulo de wikipedia https://en.wikipedia.org/wiki/QWERTY#United_Kingdom . La herramienta kbconf no me funciono para poner ninguna de las opciones para teclados UK.
Este problemilla, de solución simple, tarde un poco en solucionar, ya que ningun foro apunta como problema exacto, y fue sólo que por ahí alguien compartió su rc.conf y al probar su linea funcionó, claro que ahora tengo el problema que el tenía!
https://lists.freebsd.org/pipermail/freebsd-questions/2003-August/015709.html
Claro, que como en el foro, ahora a mi tampoco me funciona el signo de Libra (que antes si funcionaba), aunque para mi es una solución, porque creo que en mi vida he usado este signo menos de 10 veces mientras que los slash, pipes y arrobas me resultan mucho mas importantes...
en pocas palabras: agrega al /etc/rc.conf la linea
keymap="uk.cp850"
Lamentablemente esto no se acaba aqui, pues la configuracion de rc.conf no se extiende
hasta xorg, y el problema persiste al entrar en startx. La solución aqui, me resulto
ser:
setxkbmap -rules xorg -model cp850 -layout bg
aunque este comando era "provisorio" pues volvía el problema con cada salida de X.
Traté de solucionar el problema agregando las lineas
xxx
a .xorg.conf.new pero no sirvió de nada, por lo que opte por simplemente agregar el
comando a /usr/local/etc/x11/xinit/xinitrc, al final, pero antes de fluxbox, esto funcionó de
maravilla.
Update 17.04.2020: ya no funciona :-(
Funcionalidad de Portapapeles para Fluxbox
facil: instalar copyq. Esta aplicacion permite compartir portapapeles entre casi todas las aplicaciones incluyendo el terminal.
----
Pasar los Escritorios de izq. a derecha con ctrol + --> y con ctrol + <-- como en macOS:
configurar en ~/.fluxbox/keys
las lineas:
Control Right :NextWorkspace
Control Left :PrevWorkspace
ademas: el menu de FLUXBOX se configura en ~/.fluxbox/menu
---
24.03.2020
Cambiar el fondo de escritorio en Fluxbox
Muchas configuraciones de Fluxbox se realizan a través de los comandos fbset... (root, bg)
Aunque estos comandos ya estan instalados, dependen de otros como Esetroot(ETerm), feh o wmsetbg. A mi me funcionó bien feh, con:
pkg install feh
fbsetroot -solid grey15
Update: 26.03.2020
El comando anterior sólo cambia el escritorio por sesion. Es decir que el proximo restart ya esta igual que antes. Tengo que probar si se puede meter en algún script de inicio.
---
Hacer un usuario sudoer
Primero debes instalar sudo porque no viene por defecto: pkg install sudo
Despues debes editar el archivo
/usr/local/etc/sudoers de los sudoers con los comandossu -
visudo
root ya es sudoer, por lo que puedes copiar su linea y agregar tu usuario:
root ALL=(ALL) ALL
tuusuario ALL=(ALL) ALL
---
como Actualizar FreeBSD
uname -a <--muestra la version actual como "11.2-RELEASE
freebsd-update fetch
freebsd-update -r 12.1.RELEASE -upgrade
freebsd-update install
la instalación pedirá varios reboots y fbs-update install y al final pedirá actualizar
los programas instalados cosa que se puede hacer bien con:
ports update
pkg bootstrap -fpkg update
pkg upgrade
- Im Wörterbuch speichern
- Keine Wortliste für Englisch -> Spanisch...
- Eine neue Wortliste erstellen...
- Keine Wortliste für Englisch -> Spanisch...
- Kopieren
viernes, 31 de agosto de 2018
sábado, 25 de agosto de 2018
FreeBSD experiencias
------------------------
ee /etc/rc.conf
ifconfig_re0="inet 10.10.0.0 netmask 255.255.255.0"
ee /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 208.67.222.222
nameserver 208.67.220.220
/etc/rc.d/netif startoder ifconfig em0 up / down configurar ssh:
-------------------------
ssh-keygen
- desde el computador administrador:
- ssh-copy-id usuario@freebsdcomp
CUIDADO: ssh-copy-id solicitará un password que no aceptará sin no se acepta passwords-logins
ee /etc/ssh/sshd_config
agregar linea: PasswordAuthentication yes
CUIDADO: root ssh no esta activado, se puede con otro usuario entonces hay que agregarlo a sudoers
-- activar ssh root login:
ee /etc/ssh/sshd_config
agregar linea: PermitRootLogin yes
encontrar una unidad anadida (p.e. USB-Stick)
------------------------
servicios:
-------------------------
service sshd restart / status / stop / start
editar archivos:
-------------------------
vi esta instalado pero no va tan bien como editor estandar de FreeBSD, que se puede llamar con
edit ó con ee (easy editor)
montar discos
-------------------------
Ver informacion de discos:
--------------------------------
camcontrol devlist
https://www.cyberciti.biz/faq/freebsd-hard-disk-information/
diskinfo -v ada1
mount
cat /etc/fstab
Instalar otros shells
---------------------------
pkg install zsh / bash
echo $SHELL <-- para ver que shell tengo y su ruta
cambiar el shell standar: chsh -s zsh
Problemas con el teclado:
------------------------------------
/etc/login.conf editar:
german:German Users Accounts:\ :charset=UTF-8:\ :lang=de_DE.UTF-8:\ :tc=default:
/etc/rc.conf editar:
# Zu verwendende Konsoleschrift (iso8859-15) font8x14="iso15-8x14" font8x16="iso15-8x16" font8x8="iso15-8x8" # Deutsche Tastaturbelegung keymap="german.iso"
correr el commando:
cap_mkdb /etc/login.conf
y como no sirve de nada, reiniciar. Entonces si va todo en aleman!
miércoles, 22 de agosto de 2018
Usar la herramienta "ping" para vigilar si un sistema se prende o se apaga
ping -i 10 -a sistema.local.net
-i 10 = interval --> manda el ping cada 10 segundos en lugar de cada segundo
-a = audio senal, hará bip si el sistema se activa
Hace una senal auditiva cuando el sistema deja de responder (sin conexion o apagado)
ping -i 10 -A sistema.local.net
miércoles, 6 de junio de 2018
Python en macOS, un poco de K-os ó CAOS?
Mac viene con Python 2.7 por defecto preinstalado.
La version 3.x la he instalado manualmente a través del paquete original creado por Python.org
Para ejecutar scripts de python 3 simplemente ejecuto en iTerm
python3 script.py
python script.py --> para ejecutarlo con el 2.7
Pero tengo problemas a la hora de instalar librerias y otras mejoras, pues normalmente se van a 2.7 por ser el python por defecto.
Para revelar donde esta qué, se puede usar:
>>> ~ >>> type -a python
python ist /usr/bin/python
>>> ~ >>> type -a python3
python3 ist /Library/Frameworks/Python.framework/Versions/3.6/bin/python3
así si quiero instalar un modulo en python3 puedo ir a
cd /Library/Frameworks/Python.framework/Versions/3.6/bin/
y con un ls ver que hay...
ahi encontraré pip3 pudiendo entonces instalar el módulo que deseo con él así:
>>> ~ /Library/Frameworks/Python.framework/Versions/3.6/bin>>> pip3 install wxPython
Eso es todo, así se pueden instalar modulos estando seguro de que corren en el python correcto.
martes, 5 de junio de 2018
Libre Office - Aumentar el número de ultimos documentos abiertos
miércoles, 9 de mayo de 2018
Atributos extendidos en Apple macos
Esta arroba significa que esos archivos poseen atributos extendidos.
Es una especialidad UNIX por lo que esta presente en BSD y macOS, aunque anda por ahí en Linux.
Podemos ver esto al ejecutar el comando
$ ls -lha
-rw-r--r--@ 1 root wheel 1.7M May 9 10:23 PSOeci.icc
-rw-r--r--@ 1 root wheel 1.7M May 9 10:23 PSO2.icc
-rw-r--r--@ 1 root wheel 1.7M May 9 10:23 PSO3.icc
-rw-r--r--@ 1 root wheel 1.7M May 9 10:23 PSO4.icc
Para saber de que se trata el atributo podemos:
$ xattr PSOeci.icc
com.apple.quarantine
Y para eliminarlo:
$ sudo xattr -d com.apple.quarantine PSOeci.icc
También se pueden borrar todos con "clear"
$ sudo xattr -c PSOeci.icc
Recursividad tambien funciona con el comando, asi limpia todas los atributos extendidos de una carpeta.
$ sudo xattr -rc Perfiles
jueves, 3 de mayo de 2018
borrar la historia de github sin eliminar los archivos actuales
https://gist.github.com/heiswayi/350e2afda8cece810c0f6116dadbe651
si has trabajado con github y de pronto te das cuenta que en tu proyecto has dejado datos sensibles personales o de tu empresa te darás cuenta que no sólo alcanza borrarlos del archivo que estas programando.
GitHub guarda una útil historia de todos los cambios que has ido realizando, asi que si deseas eliminar alguna info, tendrás que eliminar toda esta historia también.
Cabe la posibilidad de que tu, como yo no trabajes tan directamente con la linea de comandos git, sino que uses github desde alguna interfaz mas amigable como TextWrangler, Notepad++, PyCharm, Netbeans, etc.
Si así es tendrás un pequeno problema.
Pero los amigos de GitHub concientes de esto han escrito algunas direcciones que yo trataré de mejorar con unos tipps entremedio y correcciones.
Recomiendo el segundo método:
# si todavia no has configurado tu git
git config --global user.name "xastherion"
git config user.name "xastherion"
git init
git clone https://github.com/xastherion/mi_proyecto
# ahora debe haber una carpeta "mi_proyecto" en la carpeta ~/.git
cd .git
ls
cd mi_proyecto
ls -lha # para que se vean las carpetas de punto .git
rm -rf .git # borra toda la carpeta .git ojo: dentro de "mi_proyecto" # aqui esta la historia
git remote add origin https://github.com/xastherion/mi_proyecto
git remote -v # v para verbose
git add --all
git commit -am "Primer Commit" # -am interative + msg
git push -f https://github.com/mi_proyecto
miércoles, 25 de abril de 2018
Instalar wordgrinder en macOS (sierra)
# xcode intallation --> ask for accept (please accept!)
xcode-select --install
# homebrew installation --> ask for sudoer password (please give it!) /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"brew install ninja
# install wordgrinder
git clone https://github.com/davidgiven/wordgrinder.git
cd wordgrinder
make
make install
rm -Rf wordgrinder
# put a beautiful clickable icon in desktop:
echo '#!/bin/bash'>~/Desktop/wordgrinder.commandecho '~/bin/wordgrinder'>>~/Desktop/wordgrinder.command
chmod +x ~/Desktop/wordgrinder.command
Instalar
sudo make install PREFIX=/usr