Системы Unix/Linux являются многопользовательскими. Любой, кто имеет доступ на чтение к необработанному устройству хранения, может прочитать все файлы на нем, независимо от того, кто является владельцем файлов и их разрешений (конечно, если файловая система не зашифрована). Поэтому традиционно необработанные устройства разрешали доступ только root
и членам административной группы, такой как operator
или disk
, и вы бы включили в эту группу своих доверенных пользователей-администраторов или пользователей операций резервного копирования.
В дистрибутивах GNU/Linux, в которых используется udev, 50-udev-default. rules
помещает все блочные и SCSI-устройства в /dev
, которые не являются дискетами или лентами, в группу disk
и дает этой группе права на чтение/запись, поэтому одно из возможных решений для вас - добавить себя в эту группу с помощью usermod
или путем редактирования /etc/group
напрямую. Выйдите из системы и войдите снова.
Итак, после дополнительных поисков я нашел решение. Возможно, это не самое экзотическое решение, но оно работает. Оказывается, при запуске screen под fbterm цвета работают так, как и должны, прямо в фреймбуфере linux.
Чтобы заставить его работать, я убедился, что у меня есть копия GNU Screen (apt-get install screen
), и скомпилировал копию FBTerm из исходников (https://code.google. com/p/fbterm/), а затем, немного поигравшись, в итоге получил вот это, чтобы добавить в мой .bashrc
файл:
if [[ "`tty`" == /dev/tty* || ${SHLVL} -eq 2 ]]; then
export TERM=fbterm
if [ ${SHLVL} -eq 1 ]; then
((SHLVL+=1)); export SHLVL
exec fbterm
elif [ ${SHLVL} -eq 2 ]; then
((SHLVL+=1)); export SHLVL
exec screen -d -R -q
fi
fi
Если у кого-то есть улучшения, которые он хотел бы добавить, не стесняйтесь комментировать этот ответ или предлагать правку (или что-то еще).
Надеюсь, это поможет кому-то, кроме меня :)