Tuesday, February 26, 2013

Não consigo forçar cópias MESMO com a opção -f

Esta limitação foi detectada quando se tentou actualizar uma página web através da cópia/sobreposição (cp ou mv) de ficheiros que já lá estavam.


Depois de várias tentativas, ainda assim o cp ou mv pediam confirmação da sobreposição... ainda que nas opções dos dois comandos tinha sido acrescentado o parâmetro -f (forçar).

A verdade é que nos alias do utilizador root, há uma opção por omisssão que obriga o utilizador a confirmar qualquer cópia/sobreposição de qualquer ficheiro que já esteja presente no destino. Esta opção -i (interactivo) terá SEMPRE precedência sobre um -f, por questões óbvias de segurança, afinal... mais vale prevenir que remediar:

Um exemplo:


[root@servidor ~]# cat /root/.bashrc
# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias vi='vim'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

pelas mesmas questões de segurança é extremamente desaconselhado a remoção desta opção no ficheiro em questão (.bashrc) que é carregado de cada vez que uma sessão do utilizador referido (neste caso root) é aberta. A forma de contornar isto é criar um alias temporário que será válido para a sessão activa e até esta ser quebrada, para tal basta usar o comando desejado:


alias cp='cp'
alias mv='mv'
alias rm='rm'


No comments:

Post a Comment