Não tem segredo, é exatamente isso, usar o pinning, basta criar o arquivo preferences dentro de /etc/preferences.d/ e colocar lá as restrições.
O arquivo 'preferences' não existe, o diretório vem vazio por padrão, basta criá-lo.
Uso isso há muito tempo e funciona sem problemas, tenho aqui um computador que é multiboot e que não quero a atualização de kernel em razão de funcionar bem apenas com uma específica compilação de placa de vídeo, então o kernel é travado para uma determinada versão.
Um exemplo real do que uso aqui do conteúdo do arquivo 'preferences' instalado num Ubuntu 12.04 travando atualização do kernel:
Package: linux-generic
Pin: version 3.2.0.70.84
Pin-Priority: 1000
Package: linux-headers-generic
Pin: version 3.2.0.70.84
Pin-Priority: 1000
Package: linux-image-generic
Pin: version 3.2.0.70.84
Pin-Priority: 1000
Package: linux-libc-dev
Pin: version 3.2.0-70.105
Pin-Priority: 1000
Uma informação de caráter mais geral para quem do Fórum queira usar esse recurso, use:
apt-cache search palavra
onde 'palavra' é um termo qualquer que você conhece de um determinado pacote.
Isso irá trazer uma relação de pacotes que contenham no nome aquela palavra.
É necessário quando não se sabe o nome exato do pacote que se quer travar.
O nome do pacote é necessário para que se possa configurar o pinning.
exemplo:
apt-cache search php5
Vai produzir uma lista enorme de pacotes relativos ao php5
Use ainda:
apt-cache show pacote
onde pacote é o nome de um específico pacote encontrado na relação anterior.
Vai informar os dados específicos desse pacote, onde se poderá ver a versão para configurar o pinning.
exemplo:
apt-cache show php5-common
Vai se obter os dados específicos do pacote php5-common.
Nessa relação de dados se destaca a versão,
Por exemplo:
Version: 5.5.9+dfsg-1ubuntu4.7
Vai usar isso para travar, para fazer o pinning