¿Hay que esperar para extraer un pen? (SOLUCIONADO)

Spanish Forum

Moderators: tomeu, JCSenar

Skrach33
Level 1
Level 1
Posts: 4
Joined: Sun Aug 26, 2018 6:55 am

Re: ¿Hay que esperar para extraer un pen? (SOLUCIONADO)

Post by Skrach33 » Mon Aug 27, 2018 12:44 pm

Gracias, a mi también me ha servido. Equipo con mucha ram y funcionaba terrible al pasar archivos. Ahora al parecer no. Si cambia mi situación se los haré saber.

Saludos y gracias a todos por plantear las dudas y soluciones.

User avatar
fca1970
Level 1
Level 1
Posts: 6
Joined: Wed Dec 12, 2018 5:01 am

Re: ¿Hay que esperar para extraer un pen?

Post by fca1970 » Wed Dec 04, 2019 5:49 pm

Hola,
Tengo Linux Mint 19.1 y no hay rc.d sino rc1.d, rc2.d etc hasta rc6.d y rcS.d
¿Dónde meto rc.local?
jmarinho wrote:
Mon Dec 12, 2016 6:45 am
Hola.

A mi también me pasa lo que a ti y he estado investigando sobre el tema, así que te voy a contar a ver si te ayuda en algo. Te envío también algún enlace de donde se explica el asunto para que saques tú también tus propias conclusiones porque, aunque yo saqué las mías, no soy un experto sino más bien un usuario curioso al que le gusta este tema. Además de lenguaje técnico los enlaces están en inglés con lo que no sé si estoy interpretando del todo bien todo esto.

El problema creo que está relacionado con los ajustes que trae el kernel por defecto y afecta sobre todo a equipos que tengan una buena cantidad de memoria RAM. El problema viene explicado aquí: https://lwn.net/Articles/572911/ . Y la solucion al probelma aquí: http://unix.stackexchange.com/questions ... 722#107722.

Yo lo he probado y funciona. En mi caso mi pc (12 GB de RAM) no se congela pero observo el mismo comportamiento que observas tú: cuando copio un archivo muy grande o muchos archivos pequeños que ocupan bastante tamaño, una vez que la barra de progreso se detiene como si terminara de copiar, le doy a extraer el pen y tarda mucho tiempo en decirme que está listo para ser desconectado. Probé con iotop, que es una utilidad para monitorizar los procesos de entrada y salida del ordenador (no viene por defecto hay que instalarla: sudo apt install iotop, y después lanzarla como superusuario: sudo iotop) y efectivamente comprobaba que el proceso de desmontar el pendrive (si ya le había dado a expulsar) o el proceso de copia de archivos seguía funcionando durante un buen rato despúes de que la barra de progreso de la copia de archivos se hubiese detenido.

Al hacer lo que sugiere el usuario Rmano en Unix&Linux Stackexchange que es añadir antes de la línea final (exit0) al archivo /etc/rc.local el siguiente contenido:

Code: Select all

echo $((16*1024*1024)) > /proc/sys/vm/dirty_background_bytes
echo $((48*1024*1024)) > /proc/sys/vm/dirty_bytes


Una vez que reinicias el comportamiento es el siguiente: la copia de archivos puede que parezca un poco más lenta, o sea, la barra de progreso en nemo no va tan rápido, pero una vez que la barra de progreso te dice que terminó el copiado de archivos y expulsas el pen puedes retirarlo al momento. Puedes comprobarlo con sudo iotop.

Por último, por lo que veo tienes Linux MInt 18 que viene ya con SystemD, con lo cual lo de añadir ese código a rc.local puede cambiar un poco. Yo ahora no puedo verlo porque solo tengo a mano un equipo con LM17, pero creo que en SystemD no existe rc.local con lo cual una solución es crearlo. Yo lo había hecho en Debian y funcionaba. Los pasos serían:

Code: Select all

sudo touch /etc/rc.d/rc.local
#añades el contenido del script
sudo chmod +x /etc/rc.d/rc.local
 
Con un editor de texto le pones este contenido:

Code: Select all

#!/bin/bash
echo $((16*1024*1024)) > /proc/sys/vm/dirty_background_bytes
echo $((48*1024*1024)) > /proc/sys/vm/dirty_bytes
exit 0
Lo inicias:

Code: Select all

sudo systemctl start rc-local.service
Y para comprobar si está funcionando:

Code: Select all

sudo systemctl status rc-local.service
Esto último lo saqué de aquí: https://ask.fedoraproject.org/en/questi ... e-rclocal/

Prueba a ver que tal, creo que puede ser una solución al problema

User avatar
JOPETA
Level 16
Level 16
Posts: 6001
Joined: Thu Nov 20, 2014 6:10 am
Location: En un lugar de cuyo nombre no quiero acordarme

Activar el rc.local en LM 18 y 19

Post by JOPETA » Thu Dec 05, 2019 5:09 am

fca1970 wrote:
Wed Dec 04, 2019 5:49 pm
Hola,
Tengo Linux Mint 19.1 y no hay rc.d sino rc1.d, rc2.d etc hasta rc6.d y rcS.d
¿Dónde meto rc.local?
Con independencia de la necesidad y efectividad de lo que se pretende, en otras distros puede no exisitir el servicio y tener que crearlo o si existe apuntar a otro directorio/archivo y tener que crearllo/modificado de forma adecuada,(locate rc.local) LM 18-19 (Ubuntu 16-18) o dicho de otra forma systemd por ahora, sigue siendo compatible con rc.locale y parece listado /lib/systemd/system/rc.local.service.

La cuestión entonces es saber a donde apunta el servicio (cat /lib/systemd/system/rc.local.service) aunque esté desactivado y no exista dicho archivo por defecto
[Unit]
Description=/etc/rc.local Compatibility
Documentation=man:systemd-rc-local-generator(8)
ConditionFileIsExecutable=/etc/rc.local
After=network.target)

[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
RemainAfterExit=yes
GuessMainPID=no
Como se aprecia en LM 18/19 existe y sigue apuntado al /etc/rc.local, luego para que funcione, debe existir el archivo y ser ejecutable. Como no adebería aparece /etc/rc.local como resultado del código locate anterior, tampoco find /etc/rc.local dará resultados. Ya que no existe:
1)lo creamos:

Code: Select all

printf '%s\n' '#!/bin/bash' 'exit 0' | sudo tee -a /etc/rc.local
sudo chmod +x /etc/rc.local
sudo reboot
2)A partir de aquí ya puede ser editado e introducir las líneas que se deseen entre el #!/bin/bash y el exit 0.

En este caso tras editar con derechos administrativos (sudo -H xed /etc/rc.local, por ejemplo) el contenido debe ser:

Code: Select all

#!/bin/bash
echo $((16*1024*1024)) > /proc/sys/vm/dirty_background_bytes
echo $((48*1024*1024)) > /proc/sys/vm/dirty_bytes
exit 0
Guardar y cerrar el editor.
3)Después de esto activar/iniciar si no lo estaba sudo systemctl start rc-local.service y comprobar si el servicio tras re/inciarlo tiene algún problema

Code: Select all

sudo systemctl status rc-local.service
.
Ni cola de león ni cabeza de ratón, prefiero ser diente de ajo.(Javier Krahe)

User avatar
fca1970
Level 1
Level 1
Posts: 6
Joined: Wed Dec 12, 2018 5:01 am

Re: ¿Hay que esperar para extraer un pen? (SOLUCIONADO)

Post by fca1970 » Sat Dec 14, 2019 5:20 pm

Hola,
Muchas gracias ya lo pude hacer. Va copiando más lento pero cuando acaba, acaba.
Antes se podía atascar 5-10 minutos terminando el 0.1% que quedaba.

Paco

Post Reply

Return to “Español (Spanish)”