С точки зрения устойчивости я не нашел различие между Centos и Debian (стабильным). У меня есть машины, выполняющие Debian, Сжимают, Centos 5.8, Centos 6.2 и Slackware. Используйте Centos, если существует определенная часть программного обеспечения, которое недоступно Debian, иначе я придерживался бы Debian. Так как устойчивость является вопросом, который я засунул бы далеко от Sid.
tty
Теперь я должен ввести 30 символов, где 3 был бы достаточно... :-)
Подключить модем OpenWRT к маршрутизатору Интернета с помощью кабеля? Насколько я знаю, когда вы переводите свой интерфейс в режим AP, вы не можете использовать его для доступа к Интернету одновременно.
-121--145618- sudo apt-get install linux-firmware-non free
или вы можете использовать apt-cache search realtek
, чтобы узнать, есть ли определенные драйверы для вашего оборудования.
Ре: "Вы могли бы просто объяснить, что эта команда, есть, что она делает и что еще вы можете сделать с ней и whoosh, это было бы лучшим ответом. - Bobby "
Имя Unix текущего терминала (или консоли, как мы ранее использовали, чтобы иногда также называть его): / dev/tty, который, можно использовать для простого создания нового многострочного файла из командной строки: cp/dev/tty README.md (попадание затем ставит курсор на новую пустую строку, где можно ввести текст, нажать return еще раз, ввести вторую строку и так далее. По завершении ввода строк выполните команду control-d, которая приводит к выходу команды cp, и вы создадите многострочный файл с одной командой).
Re :«Вы могли бы просто объяснить, что это за команда, что она делает и что еще вы можете с ней делать, и уууух, это был бы лучший ответ. — Бобби»
ИЛИ мы действительно можем сойти с ума и сказать: «идите и посмотрите на исходный код для получения дополнительной информации». Так я и сделал.
Чтобы действительно получить имя в tty.c
, вспомогательная функцияttyname
вызывается в STDIN_FILENO
. Оба они определены вunistd.h
(для доказательства, запустите grep "STDIN_FILENO\|ttyname" /usr/include/unistd.h
), который втягивается в tty.c
через #include "system.h"
(, перейдите здесь , чтобы увидетьsystem.h
).
Теперь ttyname
является внешней зависимостью, определенной вglib_c/sysdeps/posix/ttyname.c
. Он, в свою очередь, использует fstats
файловый дескрипторSTDIN_FILENO
(0
)и использует функциюgettyname
для получения указателя на имя tty. fstat
приводит кINLINE_SYSCALL
в fxstat.c
, что в конечном итоге вызывает internal_syscall2
, и в этот момент мне не повезло. Я действительно не знаю, что это делает.
Но я считаю, что он вызывает функциональность stat
на fd 0
. Все это он делает, стараясь не останавливаться на «stdin» или чем-то подобном. В любом случае, вы можете добиться такого же поведения, взглянув на
stat /dev/stdin # -> /proc/self/fd/0
stat /proc/self/fd/0 # -> /dev/pts/<some number>
Тогда /dev/pts/<some number>
ваш tty
.
Обновление
Я пытаюсь докопаться до сути, но не буду так подробно, как выше. До сих пор я пришел к выводу, что косвенность syscall
заканчивается функцией с именем vfs_fstat
, которая затем вызывает функцию fdget_raw
, которая немедленно вызывает __fget_light
. Здесь используется макрос current
, который возвращает результат get_current
, определенный здесь :
static __always_inline struct task_struct *get_current(void)
{
return this_cpu_read_stable(current_task);
}
В любом случае, в task_struct
есть запись files
типа files_struct
, которая, как я полагаю, сохраняет список files
актуальным для текущей задачи.Это массив, а fd
— индекс в массиве. Чтобы завершить все это, нам просто нужно выяснить, что на самом деле означает fd 0
по отношению к этому массиву (, т.е. когда создается задача, что на самом деле туда помещается ). Затем нам просто нужно посмотреть в источнике, если /proc/self
точно отражает этот массив, тогда мы можем быть уверены, что то, что мы думаем, происходит на самом деле...
apropos tty
возможно, было поучительно, также (-: – tripleee 31.05.2013, 19:28tty
получает название ИМУЩЕСТВА или TTY. Я работалstrace -o spork tty
чтобы узнать, что это делает readlink на/proc файле:readlink("/proc/self/fd/0", "/dev/pts/5"..., 4095) = 10
Замечательно, что/proc может использоваться, чтобы сделать такие изящные вещи, но что сделало более ранний Unixes без гибкой/proc файловой системы, сделайте для получения имени tty? – Bruce Ediger 31.05.2013, 19:39tty
. То, что это делает, точно, о чем вопрос. Я даже не получаю различие между, "что та команда" и, "что это делает". Что такое команда? Но, эй, я не хочу upvotes ни для чего. Если Вы запишете ясно лучший ответ (который мой, возможно, предотвратил), затем, то я дам 50 щедрости представителя для того (как только это возможно т.е. за два дня). – Hauke Laging 31.05.2013, 20:07