Anleitung zum Pakete nachträglich integrieren oder Entfernen?

xemacs

Neuer User
Mitglied seit
6 Jan 2005
Beiträge
64
Punkte für Reaktionen
0
Punkte
0
hallo könnte einer der spezialisten hier evtl eine anleitung schreiben wie man packete aus einem laufenden image entfernt bzw einbindet? (solange sie keine modifikation am kernel bedürfen)

so zb informationen wo bestimmte dateien liegen und welche man anpassen muss um einträge aus dem menu zu entfernen
 
Zuletzt bearbeitet von einem Moderator:
normalerweise reicht dir
Code:
make menuconfig
pakete abwählen
make
Wenn du aber pakete aktualisierst, ist manchmal
Code:
make paketname-clean
oder
make paketname-distclean
erforderlich. Die nächste Steigerung wäre für mich alles zu löschen und von vorne anzufangen. Damit es aber nicht so schlimm aussieht, kann man noch dl- und toolchain-Ordner nach extern verlagern und im mod-Ordner einfach darauf verlinken. Dann hast du die beiden Sachen schon mal lokal liegen und damit einiges an Zeit gespart. Neu aufsetzen ist manchmal schneller, als make clean oder distclean (+ Frage in IPPF + Antowrt in IPPF).

MfG
 
hm so war das eigentlich nicht gemeint ;)
ich meinte eher in einem laufenden system
 
Wie willst du sie denn entfernen, wenn sie fest im Image sitzen? Du kannst natürlich "übermounten", aber ob es genau das, was du willst?

MfG
 
Pakete zur Laufzeit aus Web-UI entfernen bzw. gar nicht erst starten

Richtig, physikalisch aus der Firmware löschen kannst Du die Pakete nicht, ohne neu zu flashen. Am ehesten kannst Du noch im laufenden Betrieb ein Paket, Menüpunkte aus "Extras" oder editierbare Konfigurationsdateien bis zum nächsten Reboot aus der Web-Oberfläche ausblenden:
Code:
[B]$ modunreg[/B]
Usage: /usr/bin/modreg cgi <pkg> <title>
       /usr/bin/modreg extra <pkg> <title> <sec-level> <cgi-name>
       /usr/bin/modreg file <id> <title> <sec-level> <desc-file>

Nachträglich einblenden geht übrigens auch:
Code:
[B]$ modreg[/B]
Usage: /usr/bin/modreg cgi <pkg> <title>
       /usr/bin/modreg extra <pkg> <title> <sec-level> <cgi-name>
       /usr/bin/modreg file <id> <title> <sec-level> <desc-file>

Welche Einträge es in den drei Kategorien gibt, kannst Du Dir auch mal anzeigen lassen:
Code:
[B]$ for f in /mod/etc/reg/*; do echo -e "---  $f  ---\n"; cat $f; echo -e "\n"; done[/B]
---  /mod/etc/reg/cgi.reg  ---

bftpd|Bftpd
callmonitor|Callmonitor
cifsmount|cifsmount
...


---  /mod/etc/reg/extra.reg  ---

callmonitor|Test der Rückwärtssuche|1|testlookup
callmonitor|Testanruf|1|testcall
callmonitor|Wartung|1|maint
syslogd|Logfile/Ringpuffer anzeigen|1|log


---  /mod/etc/reg/file.reg  ---

authorized_keys|Authorized keys|0|/mod/etc/default.dropbear/authorized_keys.def
callers|Callers|1|/etc/default.callmonitor/callers.def
crontab|Crontab|0|/etc/default.mod/crontab.def
...

Wenn Du ganz verhindern möchtest, daß bestimmte Pakete beim Start geladen werden, hilft es, die /etc/static.pkg aus der debug.cfg heraus so zu manipulieren, daß bestimmte Einträge gelöscht oder auskommentiert werden.
Code:
[B]$ cat /etc/static.pkg[/B]
syslogd
callmonitor
bftpd
...
Zu diesem Zweck arbeitest Du, wie oben von Hermann erwähnt, mit "übermounten", also einer Sequenz, die in etwa so aussehen kann:
Code:
[B]# In /var/flash/debug.cfg einfügen:[/B]

# Unerwünschte Pakete herausfiltern
cat /etc/static.pkg | grep -vE '^(syslogd|ntfs|cifsmount)$' > /tmp/static.pkg
# Paketliste virtuell überschreiben
mount -o bind /tmp/static.pkg /etc/static.pkg

Viel Spaß beim Spielen! :D
 
Kostenlos!

Neueste Beiträge

Statistik des Forums

Themen
248,873
Beiträge
2,303,517
Mitglieder
378,534
Neuestes Mitglied
test-forcepaster