sed?
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
sed?
Hi
Ich führe gerade unter Gentoo SELINUX ein und habe derzeit ein Problem mit fehlerhaft gelabelten Paketen. Nun "rlpkg -ra" tut es nicht so wie gewünscht allerdings z.B. "rlpkg sys-auth/pambase sys-auth/pam sys-apps/shadow" danach konnte ich mich nach dem "setenforce 1" generrel wieder Einloggen. Generell tut SELINUX es mittlerweile nach dem ich noch eine locale Policy erzeugt und einige Binarys mit chcon von Hand nachbearbeitet hatte. Allerdings will ich jetzt alles korrigieren. Ich dachte ich übergebe in einem Bashskript dem Programm rlpkg eine Liste. Die Liste habe ich schon, nur sind am Ende noch Versionsnummern die ich gerne irgendwie entfernen muß weil sonst die Syntax fehlerhaft ist
Also ist jetzt sys-apps/portage-2.1.4.4 soll sein sys-apps/portage.
Mit welchem Programm bzw generell überhaupt wie mache ich das? Evtl sed? Ich kompeliere die 1500 Pakete jedenfalls nicht nochmal und alles mit chcon.... No Way! Sollte eigendlich so gehen denke ich mal. Anbei ein Teil der Liste
http://nopaste.debianforum.de/9689
Liebe Grüsse euer Darko
Ich führe gerade unter Gentoo SELINUX ein und habe derzeit ein Problem mit fehlerhaft gelabelten Paketen. Nun "rlpkg -ra" tut es nicht so wie gewünscht allerdings z.B. "rlpkg sys-auth/pambase sys-auth/pam sys-apps/shadow" danach konnte ich mich nach dem "setenforce 1" generrel wieder Einloggen. Generell tut SELINUX es mittlerweile nach dem ich noch eine locale Policy erzeugt und einige Binarys mit chcon von Hand nachbearbeitet hatte. Allerdings will ich jetzt alles korrigieren. Ich dachte ich übergebe in einem Bashskript dem Programm rlpkg eine Liste. Die Liste habe ich schon, nur sind am Ende noch Versionsnummern die ich gerne irgendwie entfernen muß weil sonst die Syntax fehlerhaft ist
Also ist jetzt sys-apps/portage-2.1.4.4 soll sein sys-apps/portage.
Mit welchem Programm bzw generell überhaupt wie mache ich das? Evtl sed? Ich kompeliere die 1500 Pakete jedenfalls nicht nochmal und alles mit chcon.... No Way! Sollte eigendlich so gehen denke ich mal. Anbei ein Teil der Liste
http://nopaste.debianforum.de/9689
Liebe Grüsse euer Darko
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: sed?
Hallo minimike,
hilft dir das erstmal weiter, oder wird damit für die anderen Programme zuviel "weggeschnitten"?
Gruß fuzzy
Code: Alles auswählen
fuzzy@etch:~$ echo "sys-apps/portage-2.1.4.4" | sed 's/-[0-9].*//'
sys-apps/portage
Gruß fuzzy
Re: sed?
dies ist vermutlich allgemein gültiger:
Code: Alles auswählen
echo "sys-apps/portage-2.1.4.4" | sed 's/\([-.]*[0-9]\)*$//'
Use ed once in a while!
Re: sed?
...eigentlich müsste minimike jetzt etwas dazu sagen...
@Meilo
sys-libs/zlib-1.2.3-r1 wird bei deiner Variante zu -> sys-libs/zlib-1.2.3-r
Ich vermute das ist so nicht gewünscht, aber ohne einen Kommentar von minimike
ist es eh etwas Blindflug
(Stichwort Glaskugel)
Gruß fuzzy
@Meilo
sys-libs/zlib-1.2.3-r1 wird bei deiner Variante zu -> sys-libs/zlib-1.2.3-r
Ich vermute das ist so nicht gewünscht, aber ohne einen Kommentar von minimike
ist es eh etwas Blindflug
![Wink :wink:](./images/smilies/icon_wink.gif)
Gruß fuzzy
Re: sed?
Klarerweise soll das jetzt keine Kritik an den gut gemeinten Vorschlägen sein! Warum sollten sich auch Debianer mit den Gentoo Paketbezeichnungen auseinander setzen ?
Leider sind diese jedoch etwas komplizierter aufgebaut, da gibt es auch noch solche "Sonderfälle":
@minimike
"qatom" wäre eigentlich dafür gedacht, kann aber leider nicht von Stdin lesen
Gruß
gms
Leider sind diese jedoch etwas komplizierter aufgebaut, da gibt es auch noch solche "Sonderfälle":
Code: Alles auswählen
gms1 # echo "media-fonts/font-adobe-100dpi-1.0.0-r1" | sed 's/-[0-9\.]*\(-r[0-9]*\)\?$//'
media-fonts/font-adobe-100dpi
"qatom" wäre eigentlich dafür gedacht, kann aber leider nicht von Stdin lesen
Code: Alles auswählen
gms1 # qatom media-fonts/font-adobe-100dpi-1.0.0-r1 | awk '{print $1 "/" $2}'
media-fonts/font-adobe-100dpi
gms
Re: sed?
stimmtfuzzy hat geschrieben:@Meillo
sys-libs/zlib-1.2.3-r1 wird bei deiner Variante zu -> sys-libs/zlib-1.2.3-r
Ich vermute das ist so nicht gewünscht
.... es ist wohl noch komplizierter
![traurig :-(](./images/smilies/icon_sad.gif)
Use ed once in a while!
- minimike
- Beiträge: 5616
- Registriert: 26.03.2003 02:21:19
- Lizenz eigener Beiträge: neue BSD Lizenz
- Wohnort: Köln
-
Kontaktdaten:
Re: sed?
Irgendwie nicht das was ich brauche ich will ja alle 1500 Pakete in einem Durchgang umschreiben. Das ist mittlerweile allerdings nicht mehr wichtig, trotzdem Interessant. Nach Studium (also ich bin dabei) der umfassenden Doku habe ich ein Tool gefunden das den Job zufriedenstellend löst. Also mit "restorerecon -rRv /path" geht einiges, sogar ein reload der Policy ohne gleich aus dem System geworfen zu werden. Gentoo ist ein tolles System weil sehr flexiebel. Für mich auf dem Desktop ideal. Allerdings habe ich für den produktiven Serverbetrieb einige Schwächen festgestellt und dort werde ich es niemals einsetzen. Mit einer Ausnahme meiner NSLU2 evtl weil ich dort mit angepasster Software die Resourcen besser nutzen kann.
"Lennart Poettering is one of those typical IT leaders..." "like Linus Torvalds and Theo de Raadt?" "more like Bozo the Clown" After all, now a good employee of Microsoft
Re: sed?
und wo liegt da das Problem ?minimike hat geschrieben:Irgendwie nicht das was ich brauche ich will ja alle 1500 Pakete in einem Durchgang umschreiben.
gut, mit qatom ist es nicht ganz so einfach:
Code: Alles auswählen
gms2 ~ # while read pkg; do A=( $(qatom "$pkg") ); echo ${A[0]}/${A[1]}; done <pkgin.lst >pkgout.lst
Code: Alles auswählen
gms2 ~ # sed 's/-[0-9\.]*\(-r[0-9]*\)\?$//' pkgin.lst >pkgout.lst