<<

About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems

Debian Secrets Power tools for Power users

Wouter Verhelst

FOSDEM 2010

Wouter Verhelst Debian Secrets Idea: compare Debian-specic features against other distributions' features Help!

About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems Debian menu About this talk

Recycled from DebConf8 DebianDay

Wouter Verhelst Debian Secrets Help!

About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems Debian menu About this talk

Recycled from DebConf8 DebianDay Idea: compare Debian-specic features against other distributions' features

Wouter Verhelst Debian Secrets About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems Debian menu About this talk

Recycled from DebConf8 DebianDay Idea: compare Debian-specic features against other distributions' features Help!

Wouter Verhelst Debian Secrets update-alternatives −−config x-terminal-emulator more info: man update-alternatives

About this talk Changing system behaviour Searching update-alternatives Fooling the package system -statoverride Anticipating and correcting problems Debian menu update-alternatives

multiple packages providing a particular command

Wouter Verhelst Debian Secrets more info: man update-alternatives

About this talk Changing system behaviour Searching update-alternatives Fooling the package system dpkg-statoverride Anticipating and correcting problems Debian menu update-alternatives

multiple packages providing a particular command update-alternatives −−config x-terminal-emulator

Wouter Verhelst Debian Secrets About this talk Changing system behaviour Searching update-alternatives Fooling the package system dpkg-statoverride Anticipating and correcting problems Debian menu update-alternatives

multiple packages providing a particular command update-alternatives −−config x-terminal-emulator more info: man update-alternatives

Wouter Verhelst Debian Secrets −rwxr−x− − − 1 root cdwriters 401624 May 25 20:12 /usr/bin/wodim upgrades? dpkg-statoverride −−update −−add root cdwriters 0750 /usr/bin/wodim more info: man dpkg-statoverride

About this talk Changing system behaviour Searching update-alternatives Fooling the package system dpkg-statoverride Anticipating and correcting problems Debian menu dpkg-statoverride

Limit access to wodim to a group of users

Wouter Verhelst Debian Secrets upgrades? dpkg-statoverride −−update −−add root cdwriters 0750 /usr/bin/wodim more info: man dpkg-statoverride

About this talk Changing system behaviour Searching update-alternatives Fooling the package system dpkg-statoverride Anticipating and correcting problems Debian menu dpkg-statoverride

Limit access to wodim to a group of users −rwxr−x− − − 1 root cdwriters 401624 May 25 20:12 /usr/bin/wodim

Wouter Verhelst Debian Secrets dpkg-statoverride −−update −−add root cdwriters 0750 /usr/bin/wodim more info: man dpkg-statoverride

About this talk Changing system behaviour Searching update-alternatives Fooling the package system dpkg-statoverride Anticipating and correcting problems Debian menu dpkg-statoverride

Limit access to wodim to a group of users −rwxr−x− − − 1 root cdwriters 401624 May 25 20:12 /usr/bin/wodim upgrades?

Wouter Verhelst Debian Secrets more info: man dpkg-statoverride

About this talk Changing system behaviour Searching update-alternatives Fooling the package system dpkg-statoverride Anticipating and correcting problems Debian menu dpkg-statoverride

Limit access to wodim to a group of users −rwxr−x− − − 1 root cdwriters 401624 May 25 20:12 /usr/bin/wodim upgrades? dpkg-statoverride −−update −−add root cdwriters 0750 /usr/bin/wodim

Wouter Verhelst Debian Secrets About this talk Changing system behaviour Searching update-alternatives Fooling the package system dpkg-statoverride Anticipating and correcting problems Debian menu dpkg-statoverride

Limit access to wodim to a group of users −rwxr−x− − − 1 root cdwriters 401624 May 25 20:12 /usr/bin/wodim upgrades? dpkg-statoverride −−update −−add root cdwriters 0750 /usr/bin/wodim more info: man dpkg-statoverride

Wouter Verhelst Debian Secrets too dicult search => brain goes banana debtags: more ne-grained searching Goplay! package: debtags, goplay more info: http://debtags.alioth.debian.org/

About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: debtags

-cache search: works, but limited.

Wouter Verhelst Debian Secrets debtags: more ne-grained searching Goplay! package: debtags, goplay more info: http://debtags.alioth.debian.org/

About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: debtags

apt-cache search: works, but limited. too dicult search => brain goes banana

Wouter Verhelst Debian Secrets Goplay! package: debtags, goplay more info: http://debtags.alioth.debian.org/

About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: debtags

apt-cache search: works, but limited. too dicult search => brain goes banana debtags: more ne-grained searching

Wouter Verhelst Debian Secrets package: debtags, goplay more info: http://debtags.alioth.debian.org/

About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: debtags

apt-cache search: works, but limited. too dicult search => brain goes banana debtags: more ne-grained searching Goplay!

Wouter Verhelst Debian Secrets About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: debtags

apt-cache search: works, but limited. too dicult search => brain goes banana debtags: more ne-grained searching Goplay! package: debtags, goplay more info: http://debtags.alioth.debian.org/

Wouter Verhelst Debian Secrets searching for packages by control elds grep-available -FMaintainer '[email protected]' -sPackage grep-available -FSource '-2.6' -a -FPackage 'image' -sPackage grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage -sVersion package: dctrl-tools more info: man grep-available

About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: grep-available

you know some things about the package

Wouter Verhelst Debian Secrets grep-available -FMaintainer '[email protected]' -sPackage grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage -sVersion package: dctrl-tools more info: man grep-available

About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: grep-available

you know some things about the package searching for packages by control elds

Wouter Verhelst Debian Secrets grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage -sVersion package: dctrl-tools more info: man grep-available

About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: grep-available

you know some things about the package searching for packages by control elds grep-available -FMaintainer '[email protected]' -sPackage

Wouter Verhelst Debian Secrets grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage -sVersion package: dctrl-tools more info: man grep-available

About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: grep-available

you know some things about the package searching for packages by control elds grep-available -FMaintainer '[email protected]' -sPackage grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage

Wouter Verhelst Debian Secrets package: dctrl-tools more info: man grep-available

About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: grep-available

you know some things about the package searching for packages by control elds grep-available -FMaintainer '[email protected]' -sPackage grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage -sVersion

Wouter Verhelst Debian Secrets About this talk Changing system behaviour Searching debtags Fooling the package system grep-available Anticipating and correcting problems Debian menu Searching for packages: grep-available

you know some things about the package searching for packages by control elds grep-available -FMaintainer '[email protected]' -sPackage grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage grep-available -FSource 'linux-2.6' -a -FPackage 'image' -sPackage -sVersion package: dctrl-tools more info: man grep-available

Wouter Verhelst Debian Secrets nVidia wants to install /usr/lib/libGL.so apt-get upgrade... instead: dpkg-divert −−divert /usr/lib/libGL.so.Debian /usr/lib/libGL.so Then, and only then, install nVidia binary module and software Warning: do NOT use for conguration les more info: man dpkg-divert

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-divert: move les aside

Install nVidia binary module from nvidia.com

Wouter Verhelst Debian Secrets apt-get upgrade... instead: dpkg-divert −−divert /usr/lib/libGL.so.Debian /usr/lib/libGL.so Then, and only then, install nVidia binary module and software Warning: do NOT use for conguration les more info: man dpkg-divert

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-divert: move les aside

Install nVidia binary module from nvidia.com nVidia wants to install /usr/lib/libGL.so

Wouter Verhelst Debian Secrets instead: dpkg-divert −−divert /usr/lib/libGL.so.Debian /usr/lib/libGL.so Then, and only then, install nVidia binary module and software Warning: do NOT use for conguration les more info: man dpkg-divert

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-divert: move les aside

Install nVidia binary module from nvidia.com nVidia wants to install /usr/lib/libGL.so apt-get upgrade...

Wouter Verhelst Debian Secrets Then, and only then, install nVidia binary module and software Warning: do NOT use for conguration les more info: man dpkg-divert

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-divert: move les aside

Install nVidia binary module from nvidia.com nVidia wants to install /usr/lib/libGL.so apt-get upgrade... instead: dpkg-divert −−divert /usr/lib/libGL.so.Debian /usr/lib/libGL.so

Wouter Verhelst Debian Secrets Warning: do NOT use for conguration les more info: man dpkg-divert

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-divert: move les aside

Install nVidia binary module from nvidia.com nVidia wants to install /usr/lib/libGL.so apt-get upgrade... instead: dpkg-divert −−divert /usr/lib/libGL.so.Debian /usr/lib/libGL.so Then, and only then, install nVidia binary module and software

Wouter Verhelst Debian Secrets more info: man dpkg-divert

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-divert: move les aside

Install nVidia binary module from nvidia.com nVidia wants to install /usr/lib/libGL.so apt-get upgrade... instead: dpkg-divert −−divert /usr/lib/libGL.so.Debian /usr/lib/libGL.so Then, and only then, install nVidia binary module and software Warning: do NOT use for conguration les

Wouter Verhelst Debian Secrets About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-divert: move les aside

Install nVidia binary module from nvidia.com nVidia wants to install /usr/lib/libGL.so apt-get upgrade... instead: dpkg-divert −−divert /usr/lib/libGL.so.Debian /usr/lib/libGL.so Then, and only then, install nVidia binary module and software Warning: do NOT use for conguration les more info: man dpkg-divert

Wouter Verhelst Debian Secrets game-writer-company goes bankrupt, and your CD-ROM is lost Buy new computer, want to play great-game-nonfree there too Use dpkg-repack to create new package to install on new computer package: dpkg-repack more info: man dpkg-repack

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-repack: Re-create a package le from an installed package

Install great-game-nonfree from game-writer-company

Wouter Verhelst Debian Secrets Buy new computer, want to play great-game-nonfree there too Use dpkg-repack to create new package to install on new computer package: dpkg-repack more info: man dpkg-repack

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-repack: Re-create a package le from an installed package

Install great-game-nonfree from game-writer-company game-writer-company goes bankrupt, and your CD-ROM is lost

Wouter Verhelst Debian Secrets Use dpkg-repack to create new package to install on new computer package: dpkg-repack more info: man dpkg-repack

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-repack: Re-create a package le from an installed package

Install great-game-nonfree from game-writer-company game-writer-company goes bankrupt, and your CD-ROM is lost Buy new computer, want to play great-game-nonfree there too

Wouter Verhelst Debian Secrets package: dpkg-repack more info: man dpkg-repack

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-repack: Re-create a package le from an installed package

Install great-game-nonfree from game-writer-company game-writer-company goes bankrupt, and your CD-ROM is lost Buy new computer, want to play great-game-nonfree there too Use dpkg-repack to create new package to install on new computer

Wouter Verhelst Debian Secrets About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu dpkg-repack: Re-create a package le from an installed package

Install great-game-nonfree from game-writer-company game-writer-company goes bankrupt, and your CD-ROM is lost Buy new computer, want to play great-game-nonfree there too Use dpkg-repack to create new package to install on new computer package: dpkg-repack more info: man dpkg-repack

Wouter Verhelst Debian Secrets apt-get install cron pulls in exim4 install bogus mail-transport-agent package to satisfy depends package: equivs more info: man equivs-build and man equivs-control, also see /usr/share/doc/equivs

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu Equivs: NIH

Install self-written not-invented-here MTA

Wouter Verhelst Debian Secrets install bogus mail-transport-agent package to satisfy depends package: equivs more info: man equivs-build and man equivs-control, also see /usr/share/doc/equivs

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu Equivs: NIH

Install self-written not-invented-here MTA apt-get install cron pulls in exim4

Wouter Verhelst Debian Secrets package: equivs more info: man equivs-build and man equivs-control, also see /usr/share/doc/equivs

About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu Equivs: NIH

Install self-written not-invented-here MTA apt-get install cron pulls in exim4 install bogus mail-transport-agent package to satisfy depends

Wouter Verhelst Debian Secrets About this talk Changing system behaviour dpkg-divert Searching dpkg-repack Fooling the package system equivs Anticipating and correcting problems Debian menu Equivs: NIH

Install self-written not-invented-here MTA apt-get install cron pulls in exim4 install bogus mail-transport-agent package to satisfy depends package: equivs more info: man equivs-build and man equivs-control, also see /usr/share/doc/equivs

Wouter Verhelst Debian Secrets apt-listbugs nds and lists release-critical bugs User can choose to decline downloading/installing apt-get or downloads packages apt-listchanges lists changelog items and/or NEWS.Debian items User can choose to decline installing packages: apt-listbugs, apt-listchanges

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu apt-listbugs/apt-listchanges: reviewing before installing

install very-buggy-package from unstable

Wouter Verhelst Debian Secrets User can choose to decline downloading/installing apt-get or aptitude downloads packages apt-listchanges lists changelog items and/or NEWS.Debian items User can choose to decline installing packages: apt-listbugs, apt-listchanges

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu apt-listbugs/apt-listchanges: reviewing before installing

install very-buggy-package from unstable apt-listbugs nds and lists release-critical bugs

Wouter Verhelst Debian Secrets apt-get or aptitude downloads packages apt-listchanges lists changelog items and/or NEWS.Debian items User can choose to decline installing packages: apt-listbugs, apt-listchanges

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu apt-listbugs/apt-listchanges: reviewing before installing

install very-buggy-package from unstable apt-listbugs nds and lists release-critical bugs User can choose to decline downloading/installing

Wouter Verhelst Debian Secrets apt-listchanges lists changelog items and/or NEWS.Debian items User can choose to decline installing packages: apt-listbugs, apt-listchanges

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu apt-listbugs/apt-listchanges: reviewing before installing

install very-buggy-package from unstable apt-listbugs nds and lists release-critical bugs User can choose to decline downloading/installing apt-get or aptitude downloads packages

Wouter Verhelst Debian Secrets User can choose to decline installing packages: apt-listbugs, apt-listchanges

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu apt-listbugs/apt-listchanges: reviewing before installing

install very-buggy-package from unstable apt-listbugs nds and lists release-critical bugs User can choose to decline downloading/installing apt-get or aptitude downloads packages apt-listchanges lists changelog items and/or NEWS.Debian items

Wouter Verhelst Debian Secrets packages: apt-listbugs, apt-listchanges

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu apt-listbugs/apt-listchanges: reviewing before installing

install very-buggy-package from unstable apt-listbugs nds and lists release-critical bugs User can choose to decline downloading/installing apt-get or aptitude downloads packages apt-listchanges lists changelog items and/or NEWS.Debian items User can choose to decline installing

Wouter Verhelst Debian Secrets About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu apt-listbugs/apt-listchanges: reviewing before installing

install very-buggy-package from unstable apt-listbugs nds and lists release-critical bugs User can choose to decline downloading/installing apt-get or aptitude downloads packages apt-listchanges lists changelog items and/or NEWS.Debian items User can choose to decline installing packages: apt-listbugs, apt-listchanges

Wouter Verhelst Debian Secrets Pulls in several libraries You don't like the game; apt-get −−purge remove warzone2100 Libraries? debfoster/aptitude: keep track of what was installed manually or as a dependency deborphan: nd unused libraries  needs to guess, may be wrong. packages: debfoster, deborphan

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu debfoster, deborphan, aptitude: nding unused packages

apt-get install warzone2100

Wouter Verhelst Debian Secrets You don't like the game; apt-get −−purge remove warzone2100 Libraries? debfoster/aptitude: keep track of what was installed manually or as a dependency deborphan: nd unused libraries  needs to guess, may be wrong. packages: debfoster, deborphan

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu debfoster, deborphan, aptitude: nding unused packages

apt-get install warzone2100 Pulls in several libraries

Wouter Verhelst Debian Secrets Libraries? debfoster/aptitude: keep track of what was installed manually or as a dependency deborphan: nd unused libraries  needs to guess, may be wrong. packages: debfoster, deborphan

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu debfoster, deborphan, aptitude: nding unused packages

apt-get install warzone2100 Pulls in several libraries You don't like the game; apt-get −−purge remove warzone2100

Wouter Verhelst Debian Secrets debfoster/aptitude: keep track of what was installed manually or as a dependency deborphan: nd unused libraries  needs to guess, may be wrong. packages: debfoster, deborphan

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu debfoster, deborphan, aptitude: nding unused packages

apt-get install warzone2100 Pulls in several libraries You don't like the game; apt-get −−purge remove warzone2100 Libraries?

Wouter Verhelst Debian Secrets deborphan: nd unused libraries  needs to guess, may be wrong. packages: debfoster, deborphan

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu debfoster, deborphan, aptitude: nding unused packages

apt-get install warzone2100 Pulls in several libraries You don't like the game; apt-get −−purge remove warzone2100 Libraries? debfoster/aptitude: keep track of what was installed manually or as a dependency

Wouter Verhelst Debian Secrets packages: debfoster, deborphan

About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu debfoster, deborphan, aptitude: nding unused packages

apt-get install warzone2100 Pulls in several libraries You don't like the game; apt-get −−purge remove warzone2100 Libraries? debfoster/aptitude: keep track of what was installed manually or as a dependency deborphan: nd unused libraries  needs to guess, may be wrong.

Wouter Verhelst Debian Secrets About this talk Changing system behaviour Searching Finding problems before installing Fooling the package system Keeping your system tidy Anticipating and correcting problems Debian menu debfoster, deborphan, aptitude: nding unused packages

apt-get install warzone2100 Pulls in several libraries You don't like the game; apt-get −−purge remove warzone2100 Libraries? debfoster/aptitude: keep track of what was installed manually or as a dependency deborphan: nd unused libraries  needs to guess, may be wrong. packages: debfoster, deborphan

Wouter Verhelst Debian Secrets Modify through /etc/menu, /.menu package: menu more info: /usr/share/doc/menu/html, chapter 3 (syntaxis), chapter 6 (how to override)

About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems Debian menu Changing the Debian menu

Standard menu in most window managers (not all desktop environments)

Wouter Verhelst Debian Secrets package: menu more info: /usr/share/doc/menu/html, chapter 3 (syntaxis), chapter 6 (how to override)

About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems Debian menu Changing the Debian menu

Standard menu in most window managers (not all desktop environments) Modify through /etc/menu, /.menu

Wouter Verhelst Debian Secrets About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems Debian menu Changing the Debian menu

Standard menu in most window managers (not all desktop environments) Modify through /etc/menu, /.menu package: menu more info: /usr/share/doc/menu/html, chapter 3 (syntaxis), chapter 6 (how to override)

Wouter Verhelst Debian Secrets