प्रत्येक OpenWrt वातावरण समान रूप से सेट नहीं किया जाता है, इसलिए मेरा उत्तर अंधेरे में एक शॉट है ...
उदाहरण आउटपुट OpenWrt-12.09 से "TP-Link TL-WDR4300" पर लिया गया है।
ssh आपके राउटर में।
अपनी filesyems की जाँच करें।
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 मेरे यूएमटीएस स्टिक का माइक्रो एसडी कार्ड है ... बस इसे अनदेखा करें।
कई राउटर को इसी तरह से देखा जाता है जैसे कि यहां देखा गया है: एक ओवरले फ़ाइल सिस्टम द्वारा एक रीडायली रूट फाइलशीट को छद्म लेखन योग्य बनाया जाता है।
अंदर देखें /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में 73kbytes स्थापित फाइलें हैं।
एक क्रूड 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 को देखते हुए एक रास्ता बदल गया है: इसे ठीक करने के /overlayसाथ प्रतिस्थापित करना /overlay/upper।
यथास्थिति ( opkg-list-user-installed-sorted-by-size1-लाइनर के रूप में नहीं):
#!/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---"
}
परीक्षण चालन:
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 का उत्तराधिकारी है और मेरे पास OpenWrt में कोई सिस्टम नहीं है। इसलिए यदि आपको OpenWrt-BB या -CC पर इसकी आवश्यकता है, तो /overlayपहले अंदर देखें ।