Al instalar Linux lo primero que necesitaremos es poder dar permisos de instalación al usuario que estamos utilizando, lo que quiere decir agregarlo al listado de sudoers del sistema
/sbin/usermod -aG sudo yec
El archivo SUDOERS se encuentre normalmente en el directorio /etc y se auxilia del archivo /etc/sudoers.d/
Es probable que te salga este error cuando tengas que instalar.
please insert the disc labeled
'Debian GNU/Linux 7.0.0 _Wheezy_ - Official amd64 CD Binary-1 20130504-14:44'
in the drive '/media/cdrom/' and press enter
Si ese es el caso debes comentar la búsqueda en el cd rom de repositorios, esto se hace desde el archivo.
sudo nano /etc/apt/sources.list
Dentro del archivo comentar lo siguiente.
#deb cdrom:[Debian GNU/Linux 11.5.0 _Bullseye_ - Official amd64 DVD Binary-1 20>
Con esto el cdrom de Debian dejará de ser el primero en la lista de búsqueda de repositorios
sudo apt install samba smbclient cifs-utils
Una vez instaladas las dependencias de samba hay que configurar en el archivo
sudo nano /etc/samba/smb.conf
Cambiar el workgroup
workgroup = NUEVOGRUPO
Ahora agregar la carpeta compartida de la siguiente forma
[public]
comment = PUBLIC
path = /home/usr/Public
writeble = yes
guest ok= yes
guest only = yes
force create mode =775
force directory mode=775
Visual Studio Code
se baja y se instala de la pagina
sudo apt update
Instalación de apache
sudo apt install apache2
checkar que funcione
sudo systemctl status apache2
lo primero será crear una copia del archivo de configuración de apache, con el siguiente comando
cd /etc/apache2/sites-available/
sudo cp 000-default.conf desarrollo.com.conf
sudo nano desarrollo.com.conf
<VirtualHost *:80>
# The SeverName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
ServerName desarrollo.com
ServerAlias www.desarrollo.com
ServerAdmin webmaster@localhost
DocumentRoot /home/usr/Documents/desarrollo
<Directory "/home/usr/Documents/desarrollo">
AllowOverride All
Require all granted
</Directory>
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
luego debemos poner en uso el virtual host
sudo a2ensite desarrollo.com.conf
ahora debemos reiniciar el apache
sudo systemctl restart apache2
esto lo pasará a la siguiente direccion /etc/apache2/sites-enabled
Ahora debemos crear el directorio de pruebas en la carpeta documentos del usuario
mkdir /home/usr/Documents/desarrollo
hay que dar permisos correctos
sudo chown -R usr:www-data /home/usr/Documents/desarrollo/
ahora los permisos correctos
sudo chmod 770 /home/usr/Documents/desarrollo/
ahora debemos crear un index.html para que el directorio muestre algo
Para que todo funcione correctamente debemos configurar el archivo host
sudo nano /etc/hosts
luego debemos añadir lo siguiente para que redireccione correctamente
192.168.0.4 desarrollo.com
para descargar desde consola
sudo apt install curl
Instalar PHP
sudo apt update && sudo apt upgrade
sudo apt -y install php php-common
Probando si ya tenemos php
php -v
ahora que ya tenemos php sale asi
Para comprobar la configuración del php creamos un archivo con lo siguiente
<?php
// Muestra toda la información, por defecto INFO_ALL
phpinfo();
// Muestra solamente la información de los módulos.
// phpinfo(8) hace exactamente lo mismo.
phpinfo(INFO_MODULES);
?>
Todavía falta instalar los modulos y addons
sudo apt -y install php-cli php-fpm php-json php-pdo php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath
y para el servidor apache instalar
sudo apt -y install libapache2-mod-php
Extension Internacional de PHP,
sudo apt install php7.4-intl
sudo apt install python
sudo wget -O /usr/local/bin/dropbox "https://www.dropbox.com/download?dl=packages/dropbox.py"
sudo chmod +x /usr/local/bin/dropbox
dropbox
Tiene una variedad de comandos en linea, lo que se ha instalado con lo anterior es la CLI de dropbox para usar desde consola, al ejecutar dropbox nos desplegará la lista de comandos
ote: use dropbox help <command> to view usage for a specific command.
autostart automatically start Dropbox at login
exclude ignores/excludes a directory from syncing
filestatus get current sync status of one or more files
help provide help
lansync enables or disables LAN sync
ls list directory contents with current sync status
proxy set proxy settings for Dropbox
puburl get public url of a file in your Dropbox's public folder
running return whether Dropbox is running
sharelink get a shared link for a file in your Dropbox
start start dropboxd
status get current status of the dropboxd
stop stop dropboxd
throttle set bandwidth limits for Dropbox
update download latest version of Dropbox
version print version information for Dropbox
Es necesario instalar el daemon de dropbox y actualizarlo, para ello ejecutamos el siguiente comando
dropbox update
ahora pedira instalar el servicio de dropbox
para listar los directorios de la cuenta de dropbox hacer lo siguiente
dropbox ls
una vez se instala el servicio empezará a sincronizar en la carpeta de dropbox /home/usr/Dropbox
para ver como va la sincronización podemos usar el siguiente comando
dropbox status
Bajar de aquí https://rclone.org/
sudo dpkg -i rclone-v1.59.2-linux-amd64.deb
rclone config
para configurar el rclone y usarlo con google debemos crear una credenciales de api de google, para ello debemos ir a la pa
https://console.cloud.google.com/apis/
debemos crear un nuevo proyecto o bien seleccionar uno existente, yo lo hice en uno ya existente
y ahora debemos ir a la parte izquierda donde dice credenciales, lo que hay que hacer es generar una nueva token para ingresarlo en el Rclone y asi que se pueda conectar a mi cuenta de google
una vez en credenciales podemos seleccionar lo siguiente
seleccionamos la opcion de ID de cliente de OAuth
Seleccionar App de escritorio
poner un nombre y crear
ahi generar la clave secreta y el id de cliente para Rclone
Volviendo a Rclone ahi seleccionar la opción de google
ahora ingresar el id cliente que generamos en cloud engine
a continuación Rclone nos pedirá si deseamos la autoconfiguración y decimos que si
ahí debemos autorizar nuestra propia y seleccionar la cuenta con la que queremos logearnos es decir el correo de gmail donde está los archivos que deseamos de Drive
recuerda que esta autenticación expira en una hora
ahora ya podemos enviar comando que nos devuelvan por ejemplo el listado de archivos de la cuenta que he seleccionado
rclone lsd nombredelremoto:
mas informacion sobre comandos de Rclone y ayuda aqui https://www.tecmint.com/rclone-sync-files-from-cloud-storage/
ahora quier crear un directorio en google drive para guardar la informacion de mi compu
primero crearmos una carpeta en el google drive
rclone mkdir nombredelremoto:bckremoto
ahora podemos subir todo lo que tenemos ahi
rclone sync /home/usr/Google/ nombredelremoto:bckremoto
si quisiera descargar lo haria al reves
rclone nombredelremoto:bckremoto sync /home/usr/Google/
ADVERTENCIA: La sincronización de Rclone no es perfecta no resuelve conflictos ni tiene cuidado de lo que baja o sube, simplemente actualiza todo, por lo que debes ser cuidadoso, para efectos prácticos es lo equivalente a copiar y sustituir en el remoto o en el local dependiendo de la operación que este haciendo
mas información https://rclone.org/docs/
sudo apt install nodejs npm -y
Recomiendo instalar nvm ya que permite tener a nuestra disposición las versiones de node que necesitemos simplemente con un comando, puede ser útil si necesitamos una versión más reciente o una mas antigua por cuestiones de compatibilidad de paquetes
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.2/install.sh | bash
Podríamos reiniciar el sistema operativo para que nvm quede funcional pero existe un comando que nos recarga la configuración del perfil de nuestro usuario
source ~/.profile
Comandos de NVM
Instalar la versión más reciente de node
nvm install node
Instalar una versión en específico
nvm install 14.7.0
listar las versiones disponibles remotamente
nvm ls-remote
poner en uso la versión default
nvm use node
Descargar de aqui https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/#apt-repo-fresh-install las claves con los repositorios de instalación e instalarlos
https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/#apt-repo-fresh-install
sudo dpkg -i mysql-apt-config_0.8.23-1_all.deb
sudo apt-get update
sudo apt-get install mysql-server
systemctl status mysql
https://dbeaver.io/download/
sudo dpkg -i dbeaver-ce_22.2.2_amd64.deb
Ahora es probable que de un problema al momento de conectar a mysql, es necesario buscar estas dos propiedades en driver properties
Instalar todo los modulos de php necesarios
sudo apt -y install wget php php-cgi php-mysqli php-pear php-mbstring libapache2-mod-php php-common php-phpseclib php-mysql
Crear un usuario de MYSQL para PHPMYADMIN, en las últimas versiones ya no es posible utilizar el usuario root, por lo que hay que crear un usuario exclusivo para el PHPMYADMIN:
sudo mysql -u root -p
Ingresamos con nuestra clave y creamos un nuevo usuario
CREATE USER 'user4phpmyadmin'@localhost IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'user4phpmyadmin'@localhost ;
FLUSH PRIVILEGES ;
Exit;
Deacargar el paquete de PHPMYADMIN desde la siguiente ubicación, al momento de escribir este post esta es la ubicación:
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz
sudo tar xvf phpMyAdmin-latest-all-languages.tar.gz
sudo mv phpMyAdmin-*-all-languages/ /var/www/html/phpmyadmin
Ahora debemos crear la clave secreta y el archivo de configuración, esta clave de configuración sirve para que PHPMYADMIN la utilize para cifrar data sensible del servidor.
Este archivo no es para utilizarse en el ingreso a PHPMYADMIN sino para que si alguien tiene acceso al archivo de las contraseñas de PHPMYADMIN no podrá descifrar las claves ya que estarán cifradas.
Para crear esta clave debemos hacer lo siguiente:
Ir al directorio donde está la carpeta de PHPMYADMIN, yo lo tengo en la carpeta siguiente:
cd /var/www/html
Creamos una copia del archivo que viene de ejemplo para trabajarlo
sudo cp phpmyadmin/config.sample.inc.php phpmyadmin/config.inc.php
Creamos un directorio tmp para que PHPMYADMIN lo utilice en sus procesos
sudo mkdir /var/www/html/phpmyadmin/tmp
Se genera la clave usando para ello openssl, que nos genere una clave fuerte y aleatoria:
openssl rand -base64 32
Vamos a modificar el archivo de configuración para agregar la clave en el directorio
sudo nano /var/www/html/phpmyadmin/config.inc.php
$cfg[‘blowfish_secret’] = ‘your-key‘; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Ir al final del archivo y ponerle lo siguiente
$cfg['TempDir'] = '/var/www/html/phpmyadmin/tmp';
Dar permisos correctos, simplemente hacer propietario al usuario www-data
sudo chown -R www-data:www-data /var/www/html/phpmyadmin
Configurar servidor Virtual para entrar
sudo nano /etc/apache2/conf-available/phpmyadmin.conf
Alias /phpmyadmin /var/www/html/phpmyadmin
<Directory /var/www/html/phpmyadmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
<RequireAny>
Require all granted
</RequireAny>
</IfModule>
</Directory>
<Directory /var/www/html/phpmyadmin/setup/>
<IfModule mod_authz_core.c>
<RequireAny>
Require all granted
</RequireAny>
</IfModule>
</Directory>
sudo a2enconf phpmyadmin.conf
sudo systemctl restart apache2
http://127.0.0.1/phpmyadmin/
Para instalar composer necesitamos ya tener disponible php cli en nuestro sistema, bajar el instalador de composer de aquí y luego correo el siguiente comando, al bajar tendremos cualquiere de los dos archivos siguientes
para instalar globalmente los dejaremos en el directorio bin
sudo php installer --install-dir=/usr/local/bin --filename=composer
Al terminar ese comando ya puede correr el siguiente
composer
Mostrará lo siguiente