Supondo que você tenha seu disco RAM ( tmpfs
) montado no momento da inicialização em /etc/fstab
, você pode fazer da seguinte maneira:
-
Primeiro, certifique-se de que seu script será encerrado com erros, isso é importante, não pule esta etapa.
-
Recomendo que você comece com definições de constantes para facilitar a manutenção.
-
Eu acredito, mas não tenho certeza - sinta-se à vontade para me corrigir - você precisa usar caminhos absolutos de comandos, já que você pretende executar o script em
crontab
. -
Na verdade, parece que o comando
which
abaixo funciona sem nenhum problema, este comando que usei nesta resposta para garantir que em cada Linux onde quer que os binários estejam, eles são encontrados. -
Crie a estrutura de diretórios no disco RAM para o cache do Google Chrome.
-
Ele só funcionará se você tiver acesso, portanto torne-se um proprietário de todo o disco RAM.
-
Como não podemos saber o que pode acontecer, seria uma boa ideia remover o diretório de cache possivelmente existente (link simbólico ou real).
-
Finalmente, vamos criar um link simbólico para o diretório de cache no seu disco RAM.
Note que a solução abaixo criará os dois:
-
Diretório normal
Cache
. -
Além da solução original, também o diretório
Media Cache
, que será criado no Chrome após o carregamento de algumas mídias.
O script final pode ter essa aparência (deve ser portátil):
#!/bin/sh
########################################################
## Google Chrome ##
## Cache on RAM disk ##
########################################################
set -o nounset
set -o errexit
# constants definitions for easy edits
username="vlastimil"
ramdisk_path="/ramdisk"
cache_path_ramdisk="${ramdisk_path}/google-chrome/Default"
cache_path_userdir="/home/${username}/.cache/google-chrome/Default"
# create directory structure on RAM disk
$(which mkdir) -p "${cache_path_ramdisk}"
# change ownership of RAM disk to my user
$(which chown) -R "${username}":"${username}" "${ramdisk_path}"
# remove possibly existing cache directory (symlink or real)
$(which rm) -r -f "${cache_path_userdir}"
# create symlink for cache directory onto RAM disk
$(which ln) -s "${cache_path_ramdisk}" "${cache_path_userdir}"