Эта строка,
Option "AutoAddDevices" "false"
конечно, не предназначен для rc.conf
но для xorg.conf
(от man xorg.conf
):
Option "AutoAddDevices" "boolean"
Если эта опция будет отключена, то никакие устройства не будут добавлены от HAL или udev бэкендов. Включенный по умолчанию.
Просто попытайтесь добавить его там (к ServerLayout
или ServerFlags
разделите, см. документацию относительно Конфигурации X11).
Я немного удивлен, что Вы получили KDM, запущенный вообще, я буду ожидать вещи ниже line-not-meant-for-rc.conf
быть проигнорированным.
не каждая среда OpenWRT IST настроен так же, поэтому мой ответ - это выстрел в темноте ...
Пример выхода взят из OpenWRT-12.09 на «TP-Link TL-WDR4300».
SSH
в ваш роутер.
Проверьте свои файловые файлы.
root@AP9:~# df
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 5184 2124 3060 41% /
/dev/root 2048 2048 0 100% /rom
tmpfs 63340 948 62392 1% /tmp
tmpfs 512 0 512 0% /dev
/dev/mtdblock3 5184 2124 3060 41% /overlay
overlayfs:/overlay 5184 2124 3060 41% /
/dev/sda1 31234700 593536 29075728 2% /mnt/sda1
/ dev / sda1
- это карта Micro SD моей палочки UMTS ... просто игнорируйте это.
Многие маршрутизаторы вспыхнули аналогичным образом, как видно здесь: rootly root Fileyytem выполнен Pseudo с записью наложенной файловой системы.
Просмотр / Overlay
...
root@AP9:~# cd /overlay/usr/lib/opkg/info/
root@AP9:/overlay/usr/lib/opkg/info# ls *.list | tail -3
usb-modeswitch-data.list
usb-modeswitch.list
zlib.list
Этот каталог содержит информацию о дополнительно установленных пакетах. Файлы, заканчивающиеся с .List
, являются списки файлов, установленных пакетом с аналогичным именем (без .List
):
root@AP9:/overlay/usr/lib/opkg/info# cat zlib.list
/usr/lib/libz.so.1.2.7
/usr/lib/libz.so.1
/usr/lib/libz.so
Пакет ZLIB
имеет 3 файла установлены.
root@AP9:/overlay/usr/lib/opkg/info# du $(cat zlib.list)
71 /usr/lib/libz.so.1.2.7
1 /usr/lib/libz.so.1
1 /usr/lib/libz.so
Пакет ZLIB
имеет 73кбайт установленных файлов.
Неочищенный 1-лайнер, чтобы приклеить это все вместе, и он сокращен выход:
# awk 'BEGIN{D="cd /overlay/usr/lib/opkg/info&&";C=D"ls *.list";while(C|getline>0){P=substr(F=$1,1,length($1)-5);J=D"du -sk $(cat "F")";s=0;while(J|getline>0){s+=$1;t+=$1}close(J);print s"\t"P}print t"\t---TOTAL---"}'
26 blkid
30 block-mount
17 chat
55 comgt
6 kmod-fs-exportfs
(((...some lines skipped...)))
14 portmap
48 swap-utils
223 usb-modeswitch-data
45 usb-modeswitch
73 zlib
4184 ---TOTAL---
HTH!
Добавлено 2014-10-17:
Следующий вывод взята из OpenWRT-12.09 на «TP-Link TL-WR703N» и показывает, как добавить сортировку вывода по размеру пакета.
Посмотрите на то, где и как переменная S
входит в игру ...
# awk 'BEGIN{D="cd /overlay/usr/lib/opkg/info&&";C=D"ls *.list";S="sort -n";while(C|getli
ne>0){P=substr(F=$1,1,length($1)-5);J=D"du -sk $(cat "F")";s=0;while(J|getline>0){s+=$1;t+=$1}close(J)
;print s"\t"P|S}close(S);print t"\t---TOTAL---"}'
5 kmod-lib-crc16
5 luci-proto-3g
12 libuuid
13 kmod-usb-serial-wwan
17 chat
24 kmod-usb-acm
24 libusb
26 blkid
30 block-mount
41 kmod-usb-serial
45 usb-modeswitch
48 kmod-usb-serial-option
48 swap-utils
55 comgt
67 kmod-usb-storage
148 libblkid
154 kmod-scsi-core
223 usb-modeswitch-data
382 kmod-fs-ext4
1367 ---TOTAL---
снова: HTH!
Добавлено 2018-01-13:
Вышеуказанный путь был протестирован на OpenWRT-AA.
Теперь, глядя на LEDE-17.01, путь изменился: замена / наложение
с / наложение / верхний
исправляет это.
Статус-кво ( OPKG-List-User - установленный пользователем-сортированный по размеру
Не как 1-лайнер):
#!/usr/bin/awk -f
BEGIN {
D="cd /overlay/upper/usr/lib/opkg/info&&"
C=D"ls *.list"
S="sort -n"
while(C|getline>0) {
P=substr(F=$1,1,length($1)-5)
J=D"du -sk $(cat "F")"
s=0
while(J|getline>0) {
s+=$1
t+=$1
}
close(J)
print s"\t"P|S
}
close(S)
print t"\t---TOTAL---"
}
Test Run:
root@zsun0:~# ./opkg-list-user-installed-sorted-by-size
8 luci-ssl
9 libustream-mbedtls
13 px5g-mbedtls
338 libmbedtls
368 ---TOTAL---
Открытый вопрос: когда это изменение / Overlay
Структура происходит? LEDE-17 - преемник OpenWRT-CC, и у меня нет систем Runnig OpenWRT под рукой. Поэтому, если вам нужно это на OpenWRT-BB или -CC, сначала просмотр / Outlay
.
Ваша проблема кажется, Будьте скомпилированы Python без поддержки Zlib. Убедитесь, что у вас установлен zlib-devel ( sudo apt-apt-rot stall zlib1g-dev
) до Компиляция Python.
Нет ничего плохого в использовании Python скомпилированного вами, кроме того или вместо системы. Однако вы должны не забывать быть явным при вызове Python и вызвать тот, который вы намерены использовать, указав полный путь, как / usr / local / bin / python
вместо простых python
. В качестве альтернативы вы можете добавить ( / usr / local / bin /
) до вашего Путь
до / usr / bin /
, чтобы при наличии Python
Система запускает ваш сборник Python.
Основываясь на решении , есть другая возможность, что может быть быстрее.
Вместо того, чтобы вычислить размер с DU
для файлов в файле
, мы можем использовать объявленный размер в элементе управления
.
Что-то вроде моего маленького opkg_sizes
скрипт
cd /usr/lib/opkg/info
for i in *.control
do
echo `grep Size "$i" | cut -f 2 -d :` "${i%.control}"
done
Если вы хотите отсортировать вывод, вы можете запустить его через Сортировка
:
./opkg_sizes | sort -n
Сравнение моего сценария Результаты yeti раскрытые различия.
Это потому, что он упоминал / overlay / usr / lib / opkg / info
, когда я думал, что префикс / Overlay
не нужен. Ну, я не понимаю, почему, но / usr / lib / opkg / info
дает также пакеты системы, а / overlay / usr / lib / opkg / info
дает только пакеты пользователя.
Итак, если пользователь также заинтересован в пакетах системы, используйте первую версию. Но для того, чтобы добиться только пакетов пользователя, просто замените первую строку в:
cd /overlay/usr/lib/opkg/info
после этого, оба скрипты относятся к той же упаковкам, но с разными номерами ... (помимо очевидной зависимости между байтами и килобайтами: - ))
root@ap8:~# ls -l 1412453029-14.07-wdr4300-default-packages
-rw-r--r-- 1 root root 2683 Oct 4 20:03 1412453029-14.07-wdr4300-default-packages
root@ap8:~# du 1412453029-14.07-wdr4300-default-packages
3 1412453029-14.07-wdr4300-default-packages
LS
показывает размер в байтах, du
показывает размер всех блоков, выделенных файлом.
Этот ответ является улучшенной версией ответа Zvika. Поскольку исходный код существенно отличается, я считаю, что лучше добавить его в качестве дополнительного ответа, а не редактировать исходный.
#!/bin/sh
grep -H Installed-Size: /overlay/usr/lib/opkg/info/*.control | \
sed 's,^.*/\([^/]\+\)\.control:Installed-Size: *\(.*\),\2\t\1,'
В оригинальном коде требовалось слишком много форков, что делало его медленным до секунды. Этот улучшенный код короче и использует только три процесса, что приводит к молниеносному времени выполнения в 0,02 секунды (на моем маршрутизаторе).
Вы можете изменить пути:
/overlay/usr/lib/opkg/info/*.control
→ Установленные пользователем пакеты. Это пакеты, которые можно удалить, чтобы освободить место. /rom/usr/lib/opkg/info/*.control
→ системные пакеты. Они не могут быть удалены. (Если только вы не действительно знаете, что делаете.) Поскольку они хранятся в разделе "только для чтения", их удаление не освободит дополнительное место. /usr/lib/opkg/info/*.control
→ все пакеты.