Скрипт, альтернативный команде графического интерфейса, выполняемой при входе в систему - не должен

La respuesta de @pdo es buena, pero se puede aumentar la velocidad con un búfer y una buena compresión y agregar una barra de progreso.

A menudo, la red es el cuello de botella y la velocidad varía con el tiempo. Por lo tanto, ayuda a almacenar en búfer los datos antes de enviarlos a través de la red. Esto se puede hacer con pv.

Además, normalmente se puede aumentar la velocidad con un algoritmo de compresión adecuado. Gzip (como se usó anteriormente )es un algoritmo de compresión rápido, pero en general zstandard(zstd)(y para relaciones de compresión altas LZMA/LZMA2(xz)comprimirán mejor y serán más rápidos al mismo tiempo. Los nuevos xz y zstd tienen soporte multinúcleo ya incorporado. Para usar gzip con múltiples núcleos, se puede usar pigz.

Aquí hay un ejemplo para enviar datos con una barra de progreso, almacenamiento en búfer y compresión zstandard a través de una red:

tar cf -. | pv -perabs $(du -sk. | cut -f 1)K | zstd -14 --long=31 -T0 | pv -qCB 512M | ssh user@host "cd /wherever && pv -qCB 512M | zstd -cd -T0 --long=31 | tar xf -"

El primero pves para mostrar el progreso(p ), tiempo estimado(e ), tasa de transferencia(r ), tasa promedio(a), bytes transferidos totales(b). El tamaño total se estima con duy se agrega a la opción de tamaño(s). El progreso se mide antes de la compresión y el almacenamiento en búfer, por lo que no es muy preciso, pero sigue siendo útil.

zstdse utiliza con el ajuste de compresión 14 . Este número se puede reducir o aumentar según la red y la velocidad de la CPU, por lo que zstd es un poco más rápido que la velocidad de la red. Con cuatro núcleos en una CPU Haswell de 3,2 GHz 14 ofrece una velocidad de alrededor de 120 MB/s. En el ejemplo, el modo largo 31(usa una ventana de 2 GB, necesita mucha RAM, pero muy buena, p. para comprimir volcados de base de datos )se utiliza. Las opciones T0 establecen la cantidad de subprocesos para la cantidad de núcleos. Se debe tener en cuenta que, junto con el modo largo, estas configuraciones usan mucha memoria.

Un problema con zstd es que la mayoría de los sistemas operativos no vienen con la versión >= 1.3.4. Esta versión es necesaria para un soporte multinúcleo adecuado y prolongado. Si no está disponible,se puede compilar e instalar desdehttps://github.com/facebook/zstdcon solo make -j4 && sudo make install. En lugar de zstd, también se puede usar xz o pigz. xz es lento pero comprime muy bien (bien en conexiones lentas ), pigz/gzip es rápido pero comprime no tan bien. pvluego se usa nuevamente, pero para almacenamiento en búfer(qpara silencio, Cpara el modo sin empalme [siempre necesario para almacenamiento en búfer] y Bpara establecer el tamaño del búfer ).

En el ejemplo, también se utiliza un búfer en el lado del receptor. Esto a menudo es innecesario (porque la descompresión y la velocidad de escritura del disco duro son más altas que la velocidad de la red ), pero generalmente tampoco dañan.

0
21.05.2019, 11:51
1 ответ

caja— это не только файловый менеджер, но и управление некоторыми настройками рабочего стола, например. символы рабочего стола(ссылка). Таким образом, он будет выполняться при запуске сеанса MATE. Это кажется неизбежным для правильного запуска сеанса MATE.

То же самое касается натуилуса в гноме.


Быстрое -и -грязное решение состояло бы в том, чтобы назвать ваш скрипт как-нибудь по-другому, заставить скрипт создать символическую ссылку (с именем cajaи указать на ваш скрипт запуска Caja )при входе в систему, но после рабочий стол запущен и работает, и удалите символическую ссылку в ~/.bash_logout(, предполагая, что ваша оболочка bash ).

0
28.04.2021, 23:33

Теги

Похожие вопросы