Так вот, мой метод основан на uuid устройства. В gentoo все свелось к созданию файлика /etc/hal/fdi/policy/10-transcend.fdi (внешний ЖД производства Transcend, отсюда название) следующего содержания:
<?xml version="1.0" encoding="UTF-8"?>
<deviceinfo version="0.2">
<device>
<match key="info.udi" string="/org/freedesktop/Hal/devices/volume_uuid_1500_3B23">
<merge key="volume.label" type="string">ass</merge>
</match>
<match key="info.udi" string="/org/freedesktop/Hal/devices volume_uuid_2e8f164b_9c24_4847_afbd_2e79aefc1219">
<merge key="volume.label" type="string">hole</merge>
</match>
</device>
</deviceinfo>
Перезапускаем hal. Переподключаем устройство. Yahoo!
Тут видно, что я просто переназначаю метку устройства для нужных мне uuid. Длинное название uuid-а я извлек из вывода команды lshal. И повторюсь, когда я уже писал этот файлик, я вдруг осознал, что по сути мне всего-то и надо было поставить метку устройства... Ну да ладно, через тернии к звездам :)