Это зависит от редактора.
Для текстового редактора вполне возможно проверить разрешения для файла и отказаться от записи в него, если у него нет прав на запись ни для владельца, ни для группы, ни для других.  Просто потому, что он может записывать в файл (потому что он работает от имени root), это не значит, что он должен это делать.
Я только что попробовал это с vim 7.3 на Ubuntu, и он действительно делает это.  Если я редактирую файл как root, он переводит его в режим только для чтения.  (Я все еще могу написать ему, используя :w! а не :w .)  GNU Emacs 23.2.1 ведет себя аналогично.
Нано, как вы заметили, не делает этого; Я не пробовал других редакторов.  Но nano -v редактирует файл в режиме "просмотра" (только для чтения).  Не должно быть слишком сложно написать оболочку, которая проверяет права доступа к файлу и вызывает либо nano либо nano -v , в зависимости от того, должен ли он быть доступен для записи.  (Обратите внимание, что вам нужно использовать что-то кроме теста [ -w filename ] ; если вы root, он возвращает true для файла с 400 правами доступа.)
РЕДАКТИРОВАТЬ :
Вот nano оболочка, которую я только что скинул в Perl.  Он не принимает никаких аргументов, кроме одного имени файла, которое является обязательным (и файл должен уже существовать).
#!/usr/bin/perl
use strict;
use warnings;
die "Usage: $0 file\n" if scalar @ARGV != 1;
my $file = $ARGV[0];
die "$file does not exist\n" if not -e $file;
my @stat = stat $file;
die "stat $file: $!\n" if not @stat;
my $mode = $stat[2];
my @command = qw(nano);
if (($mode & 0222) == 0) {
    push @command, '-v';
}
push @command, $file;
# print "\$ @command\n";
exec @command;
Вместо того, чтобы проверять, доступен ли файл для записи, он извлекает свои биты режима и непосредственно проверяет, установлены ли какие-либо биты записи.  Кажется, это работает с очень беглым тестированием, которое я сделал.  Используйте это на свой страх и риск.  Это должно быть легко адаптироваться к другим редакторам.
Кстати, я никогда не использую нано.  Кажется, что когда вы выходите, он спрашивает, хотите ли вы сохранить измененный буфер, и запрашивает файл для его сохранения, даже если файл доступен для записи.  По крайней мере, в режиме по умолчанию мне кажется, что было бы трудно случайно заглушить файл.  Я полагаю, это проще, если вы установите некоторые параметры для "экспертного" использования.