Разрешение на запись в двоичные/исполняемые файлы: необходимы ли они?

Разрешение на запись в двоичные/исполняемые файлы: необходимы ли они?

Я думал:

echo hello world > /usr/bin/firefox

отобразит сообщение в браузере. Ничего не произошло. Тогда я попробовал:

echo hello world > /usr/bin/kwrite

чтобы увидеть, открывается ли kwrite с набранным впереди 'hello world'. Опять ничего не произошло. Затем после попытки выполнить обе команды:

computer:~$ kwrite
/usr/bin/kwrite: line 1: hello: command not found
computer:~$ firefox
/usr/bin/firefox: line 1: hello: command not found

Делает ls -l /usr/bin/:

-rwxr-xr-x 1 root   root     182576 2012-08-21 06:42 apt-ftparchive
-rwxr-xr-x 1 root   root     116996 2012-08-21 06:41 apt-get
-rwxr-xr-x 1 root   root    2151596 2011-10-20 21:45 aptitude
-rwxr-xr-x 1 root   root       1939 2011-10-20 21:45 aptitude-create-state-bundle
-rwxr-xr-x 1 root   root       3007 2011-10-20 21:45 aptitude-run-state-bundle
-rwxr-xr-x 1 root   root       7336 2012-08-21 06:41 apt-key
lrwxrwxrwx 1 root root   20 2012-12-29 10:41 /usr/bin/firefox -> /opt/firefox/firefox
-rwxr-xr-x 1 root root 5476 2010-11-17 04:58 /usr/bin/kwrite
-rwxr-xr-x 1 root   root     181104 2010-02-16 01:40 zip
-rwxr-xr-x 1 root   root       1184 2011-01-21 23:49 zxpdf

Двоичные файлы /usr/bin(и другие папки bin) в моей системе имели по крайней мере разрешение пользователя на запись (?). Так что то, что я фактически сделал, былописатьв исполняемые файлы «hello world», хотя /usr/bin/kwriteэто был двоичный exec, а /opt/firefox/firefoxбыл скрипт оболочки

Итак, очевидно, что исполняемые файлы подвержены такого рода несчастным случаям. Поэтому я хочу спросить, необходимо ли вообще разрешение на запись. Я хочу отключить его, однако хочу убедиться, что я ничего не упускаю.

решение1

Во-первых, вы, должно быть, попробовали это echo hello world > /usr/bin/kwriteкак root, так как все wбиты записи

off -rwxr-xr-xдля пользователя и группы. Что касается вашего второго вопроса, только root имеет право на запись в

большинство двоичных файлов, если они не были скомпилированы и установлены обычным пользователем.

Вам также следует освежить в памяти обозначения разрешений для файлов. Вот отличный пример.связь

решение2

Двоичные файлы имеют разрешение на запись для пользователя, посколькупользователь root. Только root может писать в /usr/bin.

Вам действительно, действительно следует освежить в памяти, как не делать простые вещи (например, использовать браузеры и текстовые процессоры) как root. Смотрите Ограничение ущерба здесь: http://www.howtogeek.com/124950/htg-explains-why-you-shouldnt-log-into-your-linux-system-as-root/

Также вы, вероятно, заметите, что .shв /usr/bin. Их, вероятно, может редактировать root, если это необходимо.

Связанный контент