Я собираюсь опустить здесь большую часть теории программирования и проектирования ОС, иначе на это уйдут дни ..
Проще говоря, потому что когда они были написаны, в реализации были сделаны определенные предположения и решения, в частности, как обращаться к файлам и получать доступ к ним.
Выражаясь компьютерным языком, все и вся должна иметь максимальную ценность - бесконечности не существует.
Что еще более важно, каждая запись в каталоге должна иметь уникальный способ идентификации - право собственности, какие специальные атрибуты и разрешения у нее есть, какой это тип файла (каталог, символическая ссылка, жесткая ссылка, обычный файл, канал, блок устройство, символьное устройство и т. д.). В большинстве файловых систем unix это называется « индексный номер », и поскольку каждый из них должен быть уникальным, у вас никогда не может быть больше файлов, чем у вас есть возможные разные номера.
Другая проблема - это (или была) проблема оптимизации; поскольку операции с файловой системой - это то, что ваша система будет делать довольно довольно часто, дизайнеры, естественно, склонны выбирать диапазон наименьшего размера, который, по их мнению, будет разумным, потому что компьютеры могут выполнять арифметические операции с меньшими числами (с учетом длины битов) намного быстрее, чем более крупные ... А когда самые большие жесткие диски, которые вы видите на рынке, имеют размер один или два гигабайта, вы можете быть склонны предположить, что 65 тысяч файлов и максимальный размер файловой системы 2 терабайта - это разумная дальновидность.
Затем проходит время, и менее чем через десять лет программисты ядра проклинают ваше имя и вашу недостаточную дальновидность, пытаясь реконструировать лучшую емкость кода вашей файловой системы.
Я использую следующую настройку:
DISPLAY
. xterm
или chromium
), и он отображается на моем компьютере с Windows. Это работает довольно быстро.
Да, установка графического интерфейса на вашем сервере отличается от установки и настройки сервера VNC. Скорее всего, вы захотите сначала установить среду рабочего стола на свой сервер и убедиться, что она работает, а затем настроить сервер VNC.
В общем, существует множество способов настроить удаленный доступ к графическому интерфейсу Linux; Я опишу свой подход к доступу к рабочему столу Red Hat или Fedora из системы Windows, который я считаю относительно простым.
Самый простой способ установить среду рабочего стола — использовать групповой пакет, который по умолчанию будет включать рабочий стол GNOME:
# yum group install graphical-server-environment
После установки и проверки рабочего окружения рабочего стола на сервере продолжите установку и настройку сервера VNC. Чтобы установить TigerVNC:
# yum install tigervnc-server tigervnc-server-module
Если обе системы находятся в локальной сети, т. е. защищены брандмауэром, вы сможете безопасно открывать порты на локальном брандмауэре сервера:
# firewall-cmd --permanent --add-service vnc-server && firewall-cmd --reload
В противном случае вам потребуется настроить туннель SSH .
Теперь войдите в систему с учетной записью обычного пользователя, которому вы хотите предоставить доступ к рабочему столу, и создайте пароль для доступа к серверу VNC.
$ vncpasswd
В другой системе вам понадобится клиент VNC, например vncviewer, клиент TigerVNC .
Когда я действительно хочу получить удаленный доступ к графическому интерфейсу, я открываю сеанс SSH с помощью PuTTY и отправляю команду (, указывающую идентификатор сеанса для VNC, и что сеанс закрывается при выходе из рабочего стола. сеанс):
$ vncserver :2 -autokill
(Обратите внимание, что этот сеанс PuTTY также можно использовать для туннеля SSH.)
Затем я открываю приложение vncviewer и заполняю IP-адрес сервера и идентификатор сеанса, например, 1.2.3.4 :2
Он должен запросить у вас пароль VNC и подключить вас к рабочему столу.