Differences

This shows you the differences between two versions of the page.

ru:doc:uci [2012/11/05 06:17]
ru:doc:uci [2013/10/15 16:38] (current)
Line 1: Line 1:
-====== The UCI System ======+====== Система UCI ======
-The abbreviation //UCI//  stands for //**__U__**nified **__C__**onfiguration **__I__**nterface// and is intended to //centralize// the whole configuration of your OpenWrt. Configuring should be easy, more straight forward and documented here, thereby making your life easier! (It is the successor of the nvram based configuration found in the White Russian series of OpenWrt.)+Сокращение //UCI//  значит //**__U__**nified **__C__**onfiguration **__I__**nterface// и направлен на //централизованную// настройку OpenWrt. Настройка должна быть простой, понятной и документированной.
-Many programs have their own config-file lying around somewhere, like ''/etc/network/interfaces'' or ''/etc/exports'' or ''/etc/dnsmasq.conf'' ''/etc/samba/samba.conf'' and sometimes they use slightly different syntaxes. On OpenWrt you don't have to bother with them, we only change the UCI configuration files!+Многие программы имеют собственный конфигурационный файл, например ''/etc/network/interfaces'' или ''/etc/exports'' или ''/etc/dnsmasq.conf'' ''/etc/samba/samba.conf'' и иногда они используют несколько отличающуюся структуру синтаксиса. В OpenWRT вам не нужно мучиться с ними, мы только заменяем файлы настроек UCI!
-You //do not// have to reboot your system for a change to take place! Look further down below [[doc:uci#command.line.utility:]] how it is done. And please do not forget that quite some daemons are included in the official binaries, but they are not enabled by default! For example the cron daemon is not activated by default, thus only editing the crontab won't do anything. You have to either start the daemon with ''/etc/init.d/cron start'' or enable it with ''/etc/init.d/cron enable''. You can ''disable'', ''stop'' and ''restart'' most of them daemons, too. There are some [[doc:howto:notuci.config]] you may want to tend to.+Вам //не нужно// перезагружать свою систему для изменения настроек! Перейдите по ссылке [[doc:uci#command.line.utility:]],чтобы знать как это делается. И, пожалуйста, не забывайте, что некоторые демоны уже имеются в системе, но по умолчанию они отключены! К примеру, демон cron отключён по умолчанию, следовательно, редактирование crontab не даст результата. Вам необходимо либо запустить демона при помощи ''/etc/init.d/cron start'' или включить его ''/etc/init.d/cron enable''. Вы можете ''disable''(отключить), ''stop''(остановить) и ''restart''(перезапустить) большинство демонов. Возможно документация по [[doc:howto:notuci.config]] поможет вам.
-===== Common Principles =====+===== Общие принципы =====
-OpenWrt's central configuration is split into several files located in the ''/etc/config/'' directory. Each file roughly relates to the part of the system it configures. You can edit edit the configuration files with a text editor or with the command line utility program ''uci'' or through various programming APIs (like Shell, Lua and C)+Централизованная конфигурация OpenWrt находится в нескольких файлах, расположенных в каталоге ''/etc/config/''. Каждый файл относится к части системы, который он настраивает. Вы можете редактировать файлы конфигурации в текстовом редакторе или с помощью утилиты командной строки ''uci'',  или через различные интерфейсы программирования (например, Shell, Lua и C).
-===== Configuration Files =====+===== Конфигурационные Файлы =====
-^ File ^ Description +^ Файл ^ Описание
-^ Basic ^^ +^ Основные ^^ 
-| [[doc:uci:dhcp|/etc/config/dhcp]] | Dnsmasq configuration and DHCP settings +| [[doc:uci:dhcp|/etc/config/dhcp]] | Конфигурация Dnsmasq и установки DHCP | 
-| [[doc:uci:dropbear|/etc/config/dropbear]] | SSH server options +| [[doc:uci:dropbear|/etc/config/dropbear]] | Опции SSH сервера
-| [[doc:uci:firewall|/etc/config/firewall]] | NAT, packet filter, port forwarding, etc.  | +| [[ru:doc:uci:firewall|/etc/config/firewall]] | NAT, пакетная фильтрация, перенаправление портов, и т.д.  | 
-| [[doc:uci:network|/etc/config/network]] | Switch, interface and route configuration +| [[doc:uci:network|/etc/config/network]] | Конфигурация коммутатора, интерфейсов и маршрутизатора
-| [[doc:uci:system|/etc/config/system]] | Misc. system settings +| [[doc:uci:system|/etc/config/system]] | Доп. системные настройки
-| [[doc:uci:timeserver|/etc/config/timeserver]] | Time server list for //rdate// | +| [[doc:uci:timeserver|/etc/config/timeserver]] | Список серверов времени для //rdate// | 
-| [[doc:uci:wireless|/etc/config/wireless]] | Wireless settings and wifi network definition |+| [[doc:uci:wireless|/etc/config/wireless]] | Настройки беспроводного подключения и сети wifi |
^ IPv6 ^^ ^ IPv6 ^^
| [[doc:uci:ahcpd|/etc/config/ahcpd]] | Ad-Hoc Configuration Protocol (AHCP) server and forwarder configuration | | [[doc:uci:ahcpd|/etc/config/ahcpd]] | Ad-Hoc Configuration Protocol (AHCP) server and forwarder configuration |
Line 29: Line 29:
| [[doc:uci:gw6c|/etc/config/gw6c]] | GW6c client configuration | | [[doc:uci:gw6c|/etc/config/gw6c]] | GW6c client configuration |
| [[doc:uci:radvd|/etc/config/radvd]] | Router Advertisement (radvd) configuration | | [[doc:uci:radvd|/etc/config/radvd]] | Router Advertisement (radvd) configuration |
-^ Other ^^ +^ Другое ^^ 
-| [[doc:uci:bbstored|/etc/config/bbstored]] | BoxBackup server configuration |+| [[doc:uci:bbstored|/etc/config/bbstored]] | Конфигурация сервера резервного копирования BoxBackup |
| [[doc:uci:etherwake|/etc/config/etherwake]] | Wake-on-Lan: etherwake | | [[doc:uci:etherwake|/etc/config/etherwake]] | Wake-on-Lan: etherwake |
-| [[doc:uci:fstab|/etc/config/fstab]] | Mount points and swap |+| [[doc:uci:fstab|/etc/config/fstab]] | Точки монтирования и раздел подкачки |
| [[doc:uci:hd-idle|/etc/config/hd-idle]] | Another idle-daemon for attached hard drives | | [[doc:uci:hd-idle|/etc/config/hd-idle]] | Another idle-daemon for attached hard drives |
-| [[doc:uci:httpd|/etc/config/httpd]] | Web server options (Busybox httpd, deprecated) | +| [[doc:uci:httpd|/etc/config/httpd]] | Установки веб-серввера (Busybox httpd, устарело) | 
-| [[doc:uci:luci|/etc/config/luci]] | Base LuCI config +| [[doc:uci:luci|/etc/config/luci]] | Основные настройки LuCI | 
-| [[doc:uci:luci_statistics|/etc/config/luci_statistics]] | Configuration of Statistics packet+| [[doc:uci:luci_statistics|/etc/config/luci_statistics]] | Настройка пакета статистики
-| [[doc:uci:mini_snmpd|/etc/config/mini_snmpd]] | mini_snmpd settings +| [[doc:uci:mini_snmpd|/etc/config/mini_snmpd]] | Настройки SNMP демона mini_snmpd | 
-| [[doc:uci:minidlna|/etc/config/minidlna]] | MiniDLNA settings +| [[doc:uci:minidlna|/etc/config/minidlna]] | Настройки MiniDLNA | 
-| [[doc:uci:mjpg-streamer|/etc/config/mjpg-streamer]] | Streaming application for Linux-UVC compatible webcams  +| [[doc:uci:mjpg-streamer|/etc/config/mjpg-streamer]] | Настройки потокового вещания для Linux-UVC совместимых веб-камер
-| [[doc:uci:mountd|/etc/config/mountd]] | OpenWrt automount daemon +| [[doc:uci:mountd|/etc/config/mountd]] | Настройки демона автомонтирования OpenWrt | 
-| [[doc:uci:mroute|/etc/config/mroute]] | Configuration files for multiple WAN routes +| [[doc:uci:mroute|/etc/config/mroute]] | Конфигурационные файлы для маршрутов мульти-WAN | 
-| [[doc:uci:multiwan|/etc/config/multiwan]] | Simple multi WAN configuration +| [[doc:uci:multiwan|/etc/config/multiwan]] | Конфигурация простого мульти-WAN | 
-| [[doc:uci:ntpclient|/etc/config/ntpclient]] | Getting the correct time +| [[doc:uci:ntpclient|/etc/config/ntpclient]] | Настройки NTP клиента синхронизации времени
-| [[doc:uci:p910nd|/etc/config/p910nd]] | config for non-spoooling Printer daemon [[doc:howto:p910nd.server]] | +| [[doc:uci:p910nd|/etc/config/p910nd]] | Настройки для без-буферного демона печати [[doc:howto:p910nd.server]] | 
-| [[doc:uci:pure-ftpd|/etc/config/pure-ftpd]] | Pure-FTPd server config +| [[doc:uci:pure-ftpd|/etc/config/pure-ftpd]] | Конфигурация сервера Pure-FTPd | 
-| [[doc:uci:qos|/etc/config/qos]] | Implementing Quality of Service for the //upload// | +| [[doc:uci:qos|/etc/config/qos]] | Реализация QoS для //upload// | 
-| [[doc:uci:racoon|/etc/config/racoon]] | racoon IPsec daemon +| [[doc:uci:racoon|/etc/config/racoon]] | Настройки сервиса IPsec //racoon//
-| [[doc:uci:samba|/etc/config/samba]] | settings for the Microsoft file and print services daemon +| [[doc:uci:samba|/etc/config/samba]] | Настройки сервера SAMBA для шаринга файлов и принтеров сетей Microsoft| 
-| [[doc:uci:snmpd|/etc/config/snmpd]] | SNMPd settings +| [[doc:uci:snmpd|/etc/config/snmpd]] | Настройки SNMP демона SNMPd | 
-| [[doc:uci:sshtunnel|/etc/config/sshtunnel]] | Settings for the package ''sshtunnel'' | +| [[doc:uci:sshtunnel|/etc/config/sshtunnel]] | Установки пакета ''sshtunnel'' | 
-| [[doc:uci:stund|/etc/config/stund]] | STUN server configuration +| [[doc:uci:stund|/etc/config/stund]] | Настройки сервера STUN | 
-| [[doc:uci:transmission|/etc/config/transmission]] | BitTorrent configuration +| [[doc:uci:transmission|/etc/config/transmission]] | Настройки BitTorrent | 
-| [[doc:uci:uhttpd|/etc/config/uhttpd]] | Web server options (uHTTPd) | +| [[doc:uci:uhttpd|/etc/config/uhttpd]] | Настройки веб-сервера (uHTTPd) | 
-| [[doc:uci:miniupnpd|/etc/config/upnpd]] | miniupnpd UPnP server settings +| [[doc:uci:miniupnpd|/etc/config/upnpd]] | Настройки UPnP сервера miniupnpd | 
-| [[doc:uci:users|/etc/config/users]] | user database for different services +| [[doc:uci:users|/etc/config/users]] | База данных пользователей для различных сервисов
-| [[doc:uci:ushare|/etc/config/ushare]] | uShare UPnP server settings |+| [[doc:uci:ushare|/etc/config/ushare]] | Настройки сервера UPnP uShare |
| [[doc:uci:vblade|/etc/config/vblade]] | vblade userspace AOE target | | [[doc:uci:vblade|/etc/config/vblade]] | vblade userspace AOE target |
| [[doc:uci:vnstat|/etc/config/vnstat]] | vnstat downloader settings | | [[doc:uci:vnstat|/etc/config/vnstat]] | vnstat downloader settings |
-| [[doc:uci:wifitoggle|/etc/config/wifitoggle]] | Script to toogle WiFi with a button |+| [[doc:uci:wifitoggle|/etc/config/wifitoggle]] | Скрипт для вкл. WiFi кнопкой |
| [[doc:uci:wol|/etc/config/wol]] | Wake-on-Lan: wol | | [[doc:uci:wol|/etc/config/wol]] | Wake-on-Lan: wol |
| [[doc:uci:wshaper|/etc/config/wshaper]] | wondershaper qos script settings | | [[doc:uci:wshaper|/etc/config/wshaper]] | wondershaper qos script settings |
| [[doc:uci:znc|/etc/config/znc]] | ZNC bouncer configuration | | [[doc:uci:znc|/etc/config/znc]] | ZNC bouncer configuration |
-===== File Syntax =====+===== Синтакс Файлов =====
-The uci configuration files usually consist of one or more config statements, so called sections with one or more option statements defining the actual values.+Конфигурационные файлы uci обычно содержат одно или более конфигурационных ''определений'', которые также называются секциями, в которых содержатся одна или более ''опций'' определений, определяющих фактические значения.
-Below is an example of a simple configuration file:+Ниже приведен пример простого конфигурационного файла:
<code>package 'example' <code>package 'example'
Line 78: Line 78:
        list    'collection'  'second item'</code>         list    'collection'  'second item'</code>
-  * The ''config 'example' 'test' '' statement defines the start of a section with the type ''example'' and the name ''test''. There can also be so called anonymous sections with only a type, but no name identifier. The type is important for the processing programs to decide how to treat the enclosed options.+  * Утверждение ''config 'example' 'test' '' определяет начало секции с типом ''example'' и именем ''test''. Секция также может быть //анонимной// с указанием только типа, без имени секции. Тип необходим для программ обработки для принятия решения о том, как интерпретировать входящие в секцию ''опции''.
-  * The ''option 'string' 'some value' '' and '' option 'boolean' '1' '' lines define simple values within the section. Note that there are no syntactical differences between text- and boolean options. Per convention, boolean options may have one of the values '0', 'no', 'off' or 'false' to specify a false value or '1' , 'yes', 'on' or 'true' to specify a true value.+  * Строки ''option 'string' 'some value' '' и '' option 'boolean' '1' '' определяют простые значения внутри секции. Заметьте, что синтаксически нет разницы между текстовыми и булевскими опциями. По соглашению, булевские опции могут иметь одно из значений '0', 'no', 'off' или 'false' для определения значения 'ложь' или  '1' , 'yes', 'on' или 'true' для определения значения 'истина'.
-  * In the lines starting with a ''list'' keyword an option with multiple values is defined. All ''list'' statements that share the same name, ''collection'' in our example, will be combined into a single list of values with the same order as in the configuration file.+  * В строках начинающихся с дескриптора ''list'' определены опции с множественными значениями. Все определения ''list'', которые используют одинаковое имя (''collection'' в нашем примере), будут объединены в один список значений в том порядке, в котором они были в конфигурационном файле.
-  * The indentination of the ''option'' and ''list'' statements is a convention to improve the readability of the configuration file but it's not syntactically required.+  * Наличие отступов в строчках с определениями ''option'' и ''list'' является соглашением для улучшения читаемости конфигурационного файла, но синтаксически не обязательно.
-Usually you do not need to enclose identifiers or values in quotes. Quotes are only required if the enclosed value contains spaces or tabs. Also it's legal to use double- instead of single-quotes when typing configuration options.+Обычно Вам не требуется заключать идентификаторы или значения в кавычки. Кавычки требуются только если заключаемое в них значение содержит символы пробела или табуляции. Также вполне допустимо использовать двойные кавычки (") вместо одинарных (') при вводе конфигурационных опций.
-All of the examples below are valid uci syntax:+Все приведенные ниже примеры являются синтаксически корректными в uci:
  * ''option example value''   * ''option example value''
Line 96: Line 96:
  * ''option  'example' "value"''   * ''option  'example' "value"''
-In contrast, the following examples are not valid syntax:+В противовес, следующий пример синтаксически неверен:
-  * ''option 'example" "value' '' (quotes are unbalanced+  * ''option 'example" "value' '' (несбалансированность кавычек
-  * ''option example some value with space '' (note the missing quotes around the value)+  * ''option example some value with space '' (кавычки отсутствуют вокруг значения)
-It is important to know that UCI identifiers and config file names may only contain the characters ''a-z'', ''0-9'' and ''_''. Option values may contain any character (as long they are properly quoted).+Важно знать, что идентификаторы UCI и имена конфигурационных файлов могут содержать только символы ''a-z'', ''0-9'' и ''_''. Значения опций могут содержать любые символы (пока они в кавычках).
-===== Command Line Utility =====+===== Утилита Командной Строки (UCI) =====
-It is redundant, unwise, and inefficient to use awk and grep to parse OpenWrt's config files. Use the uci utility instead to get what you need!  +Использование awk и grep для парсинга конфигурационных файлов OpenWrt является избыточным, неумным и неэффективным. Вместо этого используйте утилиту //uci// для получения того что Вам нужно.
-Below is the usage, as well as some useful examples of how to use this powerful utility. Remember, friends don't let friends parse their own config files!+Ниже приведено описание, а также некоторые полезные примеры использования этой мощной утилиты. Запомните, друзья не позволяют друзьям парсить собственные конфигурационные файлы!
-When there are multiple rules next to each other, uci uses array-like references for them. If there are 8 NTP servers, uci will let you reference their sections as timeserver.@timeserver[0] for the first or timeserver.@timeserver[7] for the last one. You can also use negative indexes, such as timeserver.@timeserver[-1]. "-1" means "the last one, and "-2" means the second-to-last one. This comes in very handy when appending new rules to the end of a list. See examples below+Когда есть несколько правил, следующих одно за другим, uci использует для них ссылки похожие на адресацию в массивах.  
-====== Usage ======+Если есть 8-мь серверов NTP, uci позволит Вам ссылаться на их секции как timeserver.@timeserver[0] для первого сервера или timeserver.@timeserver[7] для последнего. Вы также можете использовать отрицательные индексы, как например timeserver.@timeserver[-1]. "-1" означает "последний", "-2" предпоследний, и т.д. Это оказывается очень удобно, когда добавляются новые правила к концу списка. См. пример ниже. 
 + 
 +==== Использование ====
''root@OpenWrt:/lib/config# **uci**'' ''root@OpenWrt:/lib/config# **uci**''
Line 132: Line 134:
Options: Options:
- -c <path>  set the search path for config files (default: /etc/config) + -c <path>  установка пути поиска конфигурационных файлов (по умолчанию: /etc/config) 
- -d <str>  set the delimiter for list values in uci show + -d <str>  установка разделителя для значений списка в uci show 
- -f <file>  use <file> as input instead of stdin + -f <file>  использовать для ввода информации содержимое файла <file> вместо стандартного потока stdin 
- -m        when importing, merge data into an existing package + -m        при импорте, объединение данных в уже существующий пакет 
- -n        name unnamed sections on export (default+ -n        имя не именованной секции при экспорте (по умолчанию
- -N        don't name unnamed sections + -N        не присваивать имени не именованным секциям 
- -p <path>  add a search path for config change files + -p <path>  добавить путь поиска файлов измененной конфигурации 
- -P <path>  add a search path for config change files and use as default + -P <path>  добавить путь поиска файлов измененной конфигурации и использовать его по умолчанию 
- -q        quiet mode (don't print error messages+ -q        тихий режим (не печатаются сообщения об ошибках
- -s        force strict mode (stop on parser errors, default+ -s        строгий режим (останавливаться на ошибках парсинга, используется по умолчанию
- -S        disable strict mode + -S        отключить строгий режим 
- -X        do not use extended syntax on 'show'+ -X        не использовать расширенный синтаксис для 'show'
</code> </code>
-^ ''Command'' ^ Target ^ Description +^ ''Команда'' ^ Цель ^ Описание
-| ''commit''  | ''[<config>]'' | Writes changes of the given configuration file, or if none is given, all configration files, to the filesystem. All "uci set", "uci add", "uci rename" and "uci delete" commands are staged into a temporary location and written to flash at once with "uci commit". This is not needed after editing configuration files with a text editor, but for scripts, GUIs and other programs working directly with UCI files. | +| ''commit''  | ''[<config>]'' | Сохраняет изменения данного конфигурационного файла, либо, если он не указан, всех конфигурационных файлов в файловую систему. Все команды "uci set", "uci add", "uci rename" и "uci delete" сохраняют результаты во временное хранилище и сохраняются сразу скопом во флэш-память с помощью "uci commit". Это не нужно делать после редактирования конфигурационного файла в текстовом редакторе, но необходимо для скриптов, GUI и других программ работающих непосредственно с UCI файлами. | 
-| ''batch''    | - | Executes a multi-line UCI script which is typically wrapped into a //here// document syntax. | +| ''batch''    | - | Запускает многострочный UCI скрипт, который обычно выполнен в форме [[http://www.tldp.org/LDP/abs/html/here-docs.html|here-документа]]). | 
-| ''export''  | ''[<config>]'' | Exports the configuration in a machine readable format. It is used internally to evaluate configration files as shell scripts. | +| ''export''  | ''[<config>]'' | Экспорт конфигурации в машино-читаемый формат. Используется внутренне для преобразования конфигурационных файлов в shell-скрипты. | 
-| ''import''  | ''[<config>]'' | Imports configuration files in UCI syntax. | +| ''import''  | ''[<config>]'' | Импорт конфигурационных файлов в синтаксисе UCI. | 
-| ''changes''  | ''[<config>]'' | List staged changes to the given configuration file or if none given, all configuration files. | +| ''changes''  | ''[<config>]'' | Список зарезервированных (пер. но еще не сохраненных) изменений данного конфигурационного файла или, если файл не указан, всех конфигурационных файлов. | 
-| ''add''      | ''<config>  <section-type>'' | Add an anonymous section of type ''section-type'' to the given configuration. | +| ''add''      | ''<config>  <section-type>'' | Добавить анонимную секцию типа ''section-type'' в данную конфигурацию. | 
-| ''add_list'' | ''<config>.<section>.<option>=<string>'' | Add the given string to an existing list option. | +| ''add_list'' | ''<config>.<section>.<option>=<string>'' | Добавить данную строку в существующий список опций. | 
-| ''show''    | ''[<config>[.<section>[.<option>]]]'' | Show the given option, section or configuration in compressed notation. | +| ''show''    | ''[<config>[.<section>[.<option>]]]'' | Отобразить данную опцию, секцию или конфигурацию в компактном виде. | 
-| ''get''      | ''<config>.<section>[.<option>]'' | Get the value of the given option or the type of the given section. | +| ''get''      | ''<config>.<section>[.<option>]'' | Получить значение данной опции или тип данной секции. | 
-| ''set''      | ''<config>.<section>[.<option>]=<value>'' | Set the value of the given option, or add a new section with the type set to the given value. | +| ''set''      | ''<config>.<section>[.<option>]=<value>'' | Установить значение данной опции, или добавить новую секцию с типом равным указанному значению. | 
-| ''delete''  | ''<config>[.<section[.<option>]]''  | Delete the given section or option. | +| ''delete''  | ''<config>[.<section[.<option>]]''  | Удалить данную секцию или опцию. | 
-| ''rename''  | ''<config>.<section>[.<option>]=<name>'' | Rename the given option or section to the given name. | +| ''rename''  | ''<config>.<section>[.<option>]=<name>'' | Переименовать данную секцию или опцию. | 
-| ''revert''  | ''<config>[.<section>[.<option>]]'' | Revert the given option, section or configuration file. |+| ''revert''  | ''<config>[.<section>[.<option>]]'' | Отменить изменения данной опции, секции или конфигурационного файла. |
-==== Examples: ====+==== Примеры: ====
-=== No need to reboot ===+=== Нет необходимости рестарта всей системы ===
-After changing the port uhttpd listens on from 80 to 8080 in the file /etc/config/uhttpd, save it. Then do+После изменения порта, который слушает сервер uhttpd, с 80 на 8080 в файле /etc/config/uhttpd, сохраним изменения. Затем выполним
| ''uci commit uhttpd'' | | ''uci commit uhttpd'' |
-And then a+И затем
| ''/etc/init.d/uhttpd restart'' | | ''/etc/init.d/uhttpd restart'' |
-Done. No reboot needed.+Все сделано. Перезагрузка не требуется.
-=== Export an entire configuration ===+=== Экспорт всей конфигурации ===
| ''root@OpenWrt:~# **uci export httpd** | ''root@OpenWrt:~# **uci export httpd**
Line 186: Line 188:
root@OpenWrt:~#'' | root@OpenWrt:~#'' |
-=== Show the configuration "tree" for a given config ===+=== Отобразить в древовидном виде данную конфигурацию ===
| ''root@OpenWrt:~# **uci show httpd** | ''root@OpenWrt:~# **uci show httpd**
Line 194: Line 196:
root@OpenWrt:~#'' | root@OpenWrt:~#'' |
-=== Display just the value of an option ===+=== Отобразить только значение опции ===
| ''root@OpenWrt:~# **uci get httpd.@httpd[0].port** | ''root@OpenWrt:~# **uci get httpd.@httpd[0].port**
Line 200: Line 202:
root@OpenWrt:~#'' | root@OpenWrt:~#'' |
-=== UCI paths ===+=== Адресация в UCI ===
-Consider this example config file:+Рассмотрим следующий пример конфигурационного файла:
|''# /etc/config/foo |''# /etc/config/foo
Line 213: Line 215:
''| ''|
-Then the paths below are equal in every group:+В соответствующих группах адресация эквивалентна:
|''# Mr. First |''# Mr. First
Line 224: Line 226:
uci get foo.@bar[1].name uci get foo.@bar[1].name
uci get foo.@bar[-2].name uci get foo.@bar[-2].name
-# uci get foo.second.name won't work; label 'second' undefined.+# uci get foo.second.name не работает; метка 'second' не определена.
# Mr. Third # Mr. Third
Line 232: Line 234:
''| ''|
-=== Query interface state ===+=== Запрос состояния интерфейса ===
| ''root@OpenWrt:~# **uci -P/var/state show network.wan** | ''root@OpenWrt:~# **uci -P/var/state show network.wan**
Line 256: Line 258:
-=== Add a firewall rule ===+=== Добавление правила межсетевого экрана ===
-This is a good example of both adding a firewall rule to forward the TCP SSH port, and of the negative (-1) syntax used with uci.+Это хороший пример, демонстрирующий добавление правила для перенаправления TCP SSH порта и синтаксис отрицательной адресации (-1), используемый в uci (пер. - в данном случае, используется ссылка на последнее добавленное правило).
| ''root@OpenWrt:~# uci add firewall rule | ''root@OpenWrt:~# uci add firewall rule
Line 268: Line 270:
root@OpenWrt:~# /etc/init.d/firewall restart'' | root@OpenWrt:~# /etc/init.d/firewall restart'' |
-=== Get WAN IP address ===+=== Получение IP адреса WAN интерфейса ===
  * Backfire <code>uci -P/var/state get network.wan.ipaddr</code>   * Backfire <code>uci -P/var/state get network.wan.ipaddr</code>
  * Trunk (not really uci) <code>. /lib/functions/network.sh; network_get_ipaddr ip wan; echo $ip</code>   * Trunk (not really uci) <code>. /lib/functions/network.sh; network_get_ipaddr ip wan; echo $ip</code>
-=== Get SSID ===+=== Получение SSID ===
<code> uci get wireless.@wifi-iface[-1].ssid</code> <code> uci get wireless.@wifi-iface[-1].ssid</code>
-===== Porting UCI to a different Linux distribution =====+===== Портирование UCI на различные Linux дистрибутивы =====
  * [[https://forum.openwrt.org/viewtopic.php?id=15243]]   * [[https://forum.openwrt.org/viewtopic.php?id=15243]]

Back to top

ru/doc/uci.1352092665.txt.bz2 · Last modified: 2012/11/05 06:17 (external edit)