UBUNTU: Instalación Ubuntu 19.10

SISTEMA

  • Actualizamos el sistema
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade && sudo apt-get check && sudo apt-get install -fy && sudo apt-get autoremove && sudo apt-get autoclean && sudo apt-get clean -y
sudo apt-get install linux-headers-`uname -r`
sudo apt install apt-transport-https
  • Traducir a español
sudo apt-get install firefox-locale-es language-pack-es language-pack-es-base  aspell-es myspell-es manpages-es -y
  • Reconfigurar el locales
sudo dpkg-reconfigure locales

REPOSITORIOS

  • Agregar repositorios de programas
sudo add-apt-repository ppa:ondrej/php -y 
sudo add-apt-repository ppa:libreoffice/ppa -y 
sudo add-apt-repository ppa:otto-kesselgulasch/gimp -y 
sudo add-apt-repository ppa:peterlevi/ppa -y 
sudo add-apt-repository ppa:linuxuprising/shutter -y
  • Actualizamos
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade && sudo apt-get check && sudo apt-get install -fy && sudo apt-get autoremove && sudo apt-get autoclean && sudo apt-get clean -y

PROGRAMAS

  • Instalamos
sudo apt-get install gnome-shell-extensions apt-transport-https python3-minimal arj audacious  apache2 audacity acetoneiso alien curl codeblocks chromium-browser cheese chromium-codecs-ffmpeg-extra deluge deluge-torrent devede easytag fonts-noto furiusisomount filezilla filezilla-common grub-customizer gstreamer1.0-plugins-base gscan2pdf hardinfo inkscape lzip language-pack-gnome-es language-pack-es language-pack-kde-es lmms mixxx mysql-server mysql-client mysql-testsuite mysql-utilities minicom openshot openjdk-8-jdk openssh-client openssh-server p7zip p7zip-full p7zip-rar php php-mysql php-gd php-ldap php-odbc php-pgsql php-curl php-json php-sqlite3 php-xml php-mbstring libapache2-mod-php firefox putty ppa-purge rar rhythmbox synaptic smplayer  samba subdownloader soundconverter ttf-dejavu ttf-bitstream-vera testdisk ttf-mscorefonts-installer ubuntu-restricted-extras unrar unace unzip unity-tweak-tool variety xpdf zip zlib1g unity-tweak-tool libavcodec-extra libdvd-pkg sharutils uudeview cabextract file-roller ffmpeg libdvdread4 icedax libdvd-pkg id3tool lame libxine2-ffmpeg nautilus-script-audio-convert libmad0 mpg321 gstreamer1.0-libav vlc unity-tweak-tool exfat-fuse exfat-utils hfsplus hfsutils ntfs-3g libavcodec-extra libappindicator1 aptitude gdebi lm-sensors hddtemp printer-driver-all gimp-gmic  gnome-tweak-tool gufw chrome-gnome-shell libreoffice git k3b  gparted gnome-tweaks chrome-gnome-shell shutter make build-essential net-tools minitube glabels terminator -y

CHROME

  • Instalamos chrome descargar
  • Chrome: Integración
  • Establecemos paginas de inicio
  • Carpeta descarga a escritorio

GIT

  • Configuramos
git config --global user.name "Gustavo Matamoros González"
git config --global user.email "gustavo.matamoros@gmail.com"
git config --global core.editor gedit
git config --global color.ui true

BASH-IT

  • Como usuario común del sistema no como root
cd /home/tavo
cd /home/ugit
cd /home/estudiante
git clone --depth=1 https://github.com/Bash-it/bash-it
cd bash-it
./install.sh
  • Plugins
bash-it enable alias apt
bash-it enable completion ssh

bash-it update
bash-it reload

FIREFOX DEVELOPER

  • Descargamos desde: descargar
  • Ingresamos a descargas
cd ~/Descargas/
  • Descomprimimos
tar -xvf firefox-*.tar.bz2 
  • Movemos a opt
sudo -s mv firefox /opt
  • Hacemos un enlace
sudo ln -s /opt/firefox/firefox /usr/local/bin/firefox
  • Creamos una acceso directo
sudo touch /usr/share/applications/firefox-developer.desktop
  • Abrimos el archivo
sudo nano /usr/share/applications/firefox-developer.desktop
  • Agregamos
[Desktop Entry]
Name=Firefox Developer
GenericName=Firefox Developer Edition
Exec=/usr/local/bin/firefox
Terminal=false
Icon=/opt/firefox/browser/chrome/icons/default/default48.png
Type=Application
Categories=Application;Network;X-Developer;
Comment=Firefox Developer Edition Web Browser
  • Damos permisos
sudo chmod +x /usr/share/applications/firefox-developer.desktop
  • Instalamos complementos (EN ambos Firefox común y developer)

https://addons.mozilla.org/en-US/firefox/addon/video-downloadhelper/

https://addons.mozilla.org/en-US/firefox/addon/font-inspect/

https://addons.mozilla.org/en-US/firefox/addon/wappalyzer/

https://addons.mozilla.org/en-US/firefox/addon/html-validator/

https://addons.mozilla.org/en-US/firefox/addon/mjsonviewer/

https://addons.mozilla.org/en-US/firefox/addon/colorzilla

https://addons.mozilla.org/en-US/firefox/addon/qr-coder

  • Agregamos extensiones en AMBOS

https://addons.mozilla.org/en-US/firefox/addon/gnome-shell-integration/

https://extensions.gnome.org/extension/307/dash-to-dock/

WPS

Onlyoffice

ATOM

  • Instalamos atom: https://atom.io/
  • Instalamos plugins: vamos a Preferencias->install
    • atom-file-icons: Este simple plugin añade iconos y colores a los archivos que tenemos en Atom según su tipo concreto para que nos sea más sencillo identificarlos
    • minimap: Si eres programador, seguro que muchas veces te encuentras con archivos bastante largos. Pues con minimap podrás ver una representación de los contenidos del archivo en la parte derecha del código
    • pigments: Este plugin te muestra los colores que encuentra en tus archivos
    • chrome-color-picker: CMD-SHIFT-C/CTRL-ALT-C
    • highlight-selected: Este plugin añade una funcionalidad que parece increíble que no venga ya por defecto en el propio core de Atom. Simplemente con hacer doble clic en una palabra en el editor nos resaltará esa palabra y todas las ocurrencias adicionales de la palabra en el resto del archivo que tengamos abierto. Highlights the current word selected when double clicking
    • git-plus: Este plugin integra el control de versiones con Git dentro de tu editor Atom. De esta forma podrás hacer todo lo que haces con Git habitualmente sin tener que ir al terminal. https://atom.io/packages/git-plus-plus
    • linter
    • linter-csslint: control de errores en archivos CSS.
    • linter-jscs: control de errores en archivos JavaScript.
    • linter-jsonlint: control de errores en archivos JSON.
    • linter-php: control de errores en archivos PHP.
    • linter-phpcs: control de errores en archivos PHP utilizando PHP_CodeSniffer (útil para las guías de estilo de WordPress).
    • atom-beautify: Este plugin hará que tus archivos se vean más bonitos y sean más legibles ya que se encarga de controlar que su indentación sea correcta
    • atom-ternjs: autocompletado javascript
    • emmet: autocompletado
    • php-integrator-autocomplete-plus
    • linter-ui-default
    • intentions
    • busy-signal

VISUAL CODE

Instalar draw.io

OPERA

VIRTUALBOX

  • Instalamos virtualBox: descargar
  • Añadir el usuario al grupo vboxusers para corregir problema de USB
sudo adduser nombre_usuario vboxusers
sudo adduser tavo vboxusers
sudo adduser ugit vboxusers
sudo adduser estudiante vboxusers

NEXCLOUD

sudo add-apt-repository ppa:nextcloud-devs/client -y
sudo apt-get update
sudo apt install nextcloud-client -y
  • A este punto hacemos un upgrade
sudo apt update
sudo apt upgrade
  • Si da el error
/usr/src/libdvd-pkg/libdvdcss_1.4.2.orig.tar.bz2: La suma coincide
libdvd-pkg: `apt-get check` failed, you may have broken packages. Aborting.
  • Ejecutamos
sudo dpkg-reconfigure libdvd-pkg

MYSQL Y WORKBENCH

  • Para maquinas que administren a MYSQLP
  • descargar e instalar workbench 8.0.13
  • Para maquinas cliente normales
  • Luego: descargar
  • Editamos el archivo
sudo gedit /etc/mysql/mysql.conf.d/mysqld.cnf
  • Buscar y comentar
bind-address		= 127.0.0.1
X
#bind-address		= 127.0.0.1
  • Reiniciar MYSQL
sudo service mysql restart
  • Configurar hora
dpkg-reconfigure tzdata
  • Selecionamos:
    • America
    • Costa Rica
  • Mandamos a configurar el mysql
mysql_secure_installation
  • Resultado
Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?

Press y|Y for Yes, any other key for No: n
Please set the password for root here.

New password: HB3

Re-enter new password: HB3
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : y

 ... skipping.


Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : n

 ... skipping.
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


Remove test database and access to it? (Press y|Y for Yes, any other key for No) : 

 ... skipping.
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : 

 ... skipping.
All done! 
  • Para poder ingresar con el usario root en workbench
sudo mysql -u root
  • Ejecutamos
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'HB0';
  • Crear usuario remoto
  • Logearse desde la terminal a MYSQL
sudo mysql -u root -p
  • Creamos el usuario remoto
CREATE USER 'remoto'@'%' IDENTIFIED BY 'RB0';
  • Le damos los permisos
GRANT ALL PRIVILEGES ON *.* TO 'remoto'@'%' IDENTIFIED BY 'RB0' with grant option;
  • Refrescamos los permisos
FLUSH PRIVILEGES;
  • Podemos verificar los permisos:
SHOW GRANTS FOR remoto;
  • Si necesitamos revocar algún permiso
REVOKE ALL PRIVILEGES ON basedatos.* FROM remoto;
  • Si necesitamos eliminar el usuario:
DROP USER remoto;
  • Para poder conectar workbench con el usuario root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
  • Salimos de MYSQL
exit

SUBLIME-TEXT

  • Agregamos PPA
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add -
echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
sudo apt update && sudo apt install sublime-text
  • Ingresar a sublime text 3->Tools->Install Package Control
  • Luego ingresar a Preferences->Package Control->Digitar Install Package instalar:
    • AdvancedNewFile: permite crear nuevos archivos digitando toda la ruta
    • Alignment: permite alinear elementos
    • AutoSemiColon: corrige el punto y coma si lo colocamos en un lugar erroreneo
    • AutoFileName: permite autocomepletar nombres de carpetas y archivos
    • ApacheConf: establece un estilo de color para los archivos del apache conf
    • BracketHighlighter: marca el inicio o fin de unas llaves
    • Color Highlighter: le coloca el color a los elementos
    • DocBlockr: para mejorar la documentación
    • EMMET: autocomplete
    • HTML Nest Comments: permite comentar HTML
    • HTML5: autocompleta html5
    • sublimeCodeIntel: autocomplete JavaScript, SCSS, Python, HTML, Ruby, Python3, XML, Sass, HTML5, Perl, CSS, Twig, Less, Node.js, TemplateToolkit and PHP
    • sublimeLinter: muestra errores de sintaxis
    • HTMLAttributes
    • HTML Minifier
    • Material Theme

APACHE Y PHP

  • Configuramos apache
  • Le damos permisos de escritura a la carpeta «html»
sudo chmod 777 -R /var/www/html
  • Establecer codificación UTF-8
sudo gedit /etc/apache2/conf-enabled/charset.conf
  • Descomentar la línea:
#AddDefaultCharset UTF-8
X
AddDefaultCharset UTF-8
  • Reiniciar apache
sudo service apache2 restart
  • Creamos 2 carpetas en el escritorio
sudo mkdir /home/nombre_usuario/Escritorio/session
sudo mkdir /home/nombre_usuario/Escritorio/errores

sudo mkdir /home/tavo/Escritorio/session
sudo mkdir /home/tavo/Escritorio/errores

sudo mkdir /home/ugit/Escritorio/session
sudo mkdir /home/ugit/Escritorio/errores

sudo mkdir /home/estudiante/Escritorio/session
sudo mkdir /home/estudiante/Escritorio/errores
  • Le damos permisos a las carpetas
sudo chmod 777 /home/nombre_usuario/Escritorio/session
sudo chmod 777 /home/nombre_usuario/Escritorio/errores

sudo chmod 777 /home/tavo/Escritorio/session
sudo chmod 777 /home/tavo/Escritorio/errores

sudo chmod 777 /home/ugit/Escritorio/session
sudo chmod 777 /home/ugit/Escritorio/errores

sudo chmod 777 /home/estudiante/Escritorio/session
sudo chmod 777 /home/estudiante/Escritorio/errores
  • Abrimos el archivo de configuración
sudo gedit /etc/php/7.4/apache2/php.ini
  • Modificamos
max_execution_time = 30
X
max_execution_time = 60
-----------------------------------------------------------------------
;error_log = syslog
X
error_log = /home/tavo/Escritorio/errores/errores.txt
-----------------------------------------------------------------------
post_max_size = 8M
X
post_max_size = 30M
-----------------------------------------------------------------------
upload_max_filesize = 2M
X
upload_max_filesize = 25M
  • Reiniciamos apache
sudo service apache2 restart 
  • Agregamos el usuario «tavo» al grupo www-data
sudo chgrp -R www-data /var/www/html
sudo chmod -R g+w /var/www/html
sudo find /var/www/html -type d -exec chmod 2775 {} \;
sudo find /var/www/html -type f -exec chmod ug+rw {} \;


sudo usermod -a -G www-data tavo
sudo usermod -a -G www-data ugit
sudo usermod -a -G www-data estudiante

sudo chmod g+s /var/www/html/
sudo setfacl -d -m g::rwx /var/www/html/
sudo chmod 777 -R /var/www/html
  • Instalamos
sudo apt install ca-certificates apt-transport-https acl git
  • Verificar versión de php
php -v
  • Módulos
sudo a2enmod ssl
sudo a2enmod headers
sudo a2enmod rewrite
sudo systemctl restart apache2
  • NOTA: SOLO PARA SAE Si necesitamos crear certificados SSL
sudo apt-get install openssl
cd /home/tavo
openssl genrsa -out server.key 1024
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
sudo cp server.crt /etc/ssl/certs/
sudo cp server.key /etc/ssl/certs/
  • Abrimos el archivo
sudo nano /etc/apache2/sites-available/default-ssl.conf
  • Borramos todo y agregamos
<IfModule mod_ssl.c>
  <VirtualHost _default_:443>
    ServerName sae2.siua.ac.cr
    ServerAdmin gustavo.matamoros@gmail.com
    DocumentRoot /var/www/html/Sistemas/sae2019
    SSLEngine on
    SSLCertificateKeyFile /etc/ssl/certs/server.key
    SSLCertificateFile /etc/ssl/certs/server.crt
  </VirtualHost>
</IfModule>
  • Reiniciamos
sudo service apache2 reload

FECHA

  • Ejecutar -> America->Costa Rica
sudo dpkg-reconfigure tzdata

ACTIVAR COLORES TERMINAL

  • Ejecutamos
cp /etc/skel/.bashrc ~/.bashrc
nano ~/.bashrc
  • Modificamos
#force_color_prompt=yes
X
force_color_prompt=yes
  • Reiniciamos
source ~/.bashrc

TEMAS

  • Creamos dentro de «/home/nombre_usuario/» una carpeta oculta de nombre «.themes»
  • Y otra «.icons»
mkdir /home/tavo/.themes
mkdir /home/ugit/.themes
mkdir /home/estudiantes/.themes

mkdir /home/tavo/.icons
mkdir /home/ugit/.icons
mkdir /home/estudiantes/.icons
  • Descargamos los siguientes temas: descargar y los colocamos en la carpeta «.themes»
  • Descargamos los siguientes iconos descargar y los colocamos en la carpeta «.icons»

Personalización

  • Abrimos la configuración

TWEAKS