Obsah
libinput
dbgsym
packages by
defaultnet-tools
bude označený ako
zastaralý v prospech balíka iproute2
_netdev
Niekedy majú zmeny zavedené v novom vydaní vedľajšie účinky, ktorým sa nedokážeme rozumne vyhnúť alebo by spôsobili objavenie chýb inde. Tu dokumentujeme problémy, ktorých sme si vedomí. Tiež si prosím prečítajte errata, dokumentáciu relevantných balíkov, hlásenia o chybách a ďalšie informácie, ktoré spomína Oddiel 6.1, “Ďalšie čítanie”.
Táto časť pokrýva položky týkajúce sa aktualizácie z jessie na stretch
![]() | Poznámka |
---|---|
Táto časť sa týka iba systémov používajúcich upravené jadro, kde je
|
Pripojenie /usr
len pomocou nástrojov dostupných v
rámci /
už nie je podporované. To v minulosti fungovalo
pre niekoľko špecifických konfigurácií a dnes už je explicitne
nepodporované.
To znamená, že od stretch všetky systémy, kde
/usr
je na samostatnej diskovej oblasti musia používať
generátor initramfs, ktorý pripojí /usr
. Všetky
generátor initramfs v stretch to robia.
Zrkadlá Debianu prestanú poskytovať prístup cez FTP. Ak ste používali
protokol ftp:
vo svojom súbore zdrojov softvéru, prosím,
zmeňte ho na http:
. Zvážte použitie nasledovného príkladu
migrácie:
deb http://deb.debian.org/debian stretch main deb http://deb.debian.org/debian-security stretch/updates main # variant tor (vyžaduje apt-transport-tor) # deb tor+http://vwakviie2ienjx6t.onion/debian stretch main # deb tor+http://sgvtcaew4bxjd7ln.onion/debian-security stretch/updates main
Vyššie uvedené príklady neobsahujú non-free
a
contrib
. Prosím, pamätajte, že tieto musíte uviesť, ak
ich chcete používať.
Ďalšie informácie nájdete v oznámení: Vypnutie verejných služieb FTP.
Nasleduje zoznam známych významných zastaralých balíkov (ich popis nájdete v Oddiel 4.8, “Zastaralé balíky”).
Medzi zastaralé balíky patria:
Väčšina balíkov -dbg
bola odstránená z hlavného
archívu. Boli nahradené balíkmi -dbgsym
, ktoré sú
dostupné z archívu debian-debug
. Prosím, pozrite si Oddiel 2.2.8, “Nový archív ladiacich symbolov”.
Upstream už neudržiava správcov hesiel fpm2
a kedpm
. Použite iného správcu hesiel, ako
napr. pass
, keepassx
alebo keepass2
. Nezabudnite pred odstránením balíkov
vybrať svoje heslá z fpm2
a
kedpm
.
Balík net-tools
je označený ako
zastaraný v prospech balíka iproute2
. Ďalšie informácie nájdete v Oddiel 5.3.9, “net-tools
bude označený ako
zastaralý v prospech balíka iproute2
” alebo v Referenčnej
príručke Debianu.
Monitorovacie nástroje nagios3
boli
z vydania Stretch odstránené. Balík icinga
je ich najbližšou náhradou. Svoje
konfiguračné súbory číta z inej cesty ako nagios, ale v iných ohľadoch je s
ním kompatibilný.
Po dokončení apt-get dist-upgrade
je aktualizácia
“formálne” dokončená. Pri aktualizácii na stretch už nie
je potrebné urobiť nič zvláštne pred reštartovaním počítača.
Štandardne kompilátor GNU GCC 6 dostupný v Debian Stretch kompiluje všetky spustiteľné súbory ako nezávislé od pozície v pamäti. To zmierňuje celú triedu zraniteľností.
Bohužiaľ, jadro Linuxu poskytované v Debian 8 (do vydania 8.7) obsahuje
problém, ktorý môže spôsobiť, že niektoré programy zostavené ako spustiteľné
súbory nezávislé od pozície havarujú s hlásením ako napr. chyba
segmentácie
, ktoré nie je dostatočne špecifické na určenie
problému. Tento problém je vyriešený vo verzii Linuxu dodávanej vo vydaní
8.8 (verzia 3.16.43 alebo novšia) a v jadre dodávanom v Debian 9 (verzia 4.9
alebo novšia).
We recommend that you upgrade your kernel to a fixed version and then reboot before starting the upgrade to stretch. If you are running the kernel from Debian 8.8 or newer, you are not affected by this issue.
Ak počas aktualizácie používate verziu jadra s týmto problémom, dôrazne odporúčame, aby ste ihneď po aktualizácii reštartovali systém na jadro zo Stretch, aby ste sa problému vyhli.
![]() | Poznámka |
---|---|
This section is mainly intended for developers or system administrators. Desktop users are unlikely to be affected by this section. |
The above also leads to some changes that are worth being aware of.
The file tool (among others) will classify such binaries as “shared object” rather than an “executable”. If you have filters based on binary files, these may need to be updated (e.g. spamfilters).
Static libraries being compiled into an executable now also need to be compiled as position independent code. The following error message from the linker is a symptom of this:
relocation ... against '[SYMBOL]' can not be used when making a shared object; recompile with -fPIC
Note that even though the error message says -fPIC, it is sufficient to recompile with -fPIE (which is the default in the GCC 6 packages that are part of stretch).
Historically, position independent executables have been associated with
performance loss on some hardware. Notably the Debian architecture
i386
(32-bit Intel machines). While GCC 5 and GCC 6 have
greatly improved
performance for position independent executables on 32-bit Intel,
this optimization may not be applicable to all architectures. Please
consider evaluating the performance of your code if you are targeting
machine architectures with a very limited number of registers.
Due to lack of interest and testability, Debian has removed the vast majority of the Linux Standard Base (LSB) compatibility packages.
Debian will still provide a selected few key LSB utilities used internally
and externally, such as lsb-release
and the sysvinit init functions in lsb-base
. Furthermore, Debian is still firmly
standing by the Filesystem
Hierarchy Standard (FHS) version 2.3 with the minor alterations described in
the Debian Policy Manual.
The 32-bit MIPS support (both big- and little- endian) now requires a processor supporting MIPS32 Release 2 of the MIPS instruction set. Notably the Loongson-2E/2F and systems based on them (including the Yeeloong laptop) are no longer supported.
The following shell script can be used to indicate if your machine supports R2 (assuming only one type of processor is present). Note that Loongson-3 processors are supported even though they only claim to support MIPS32 Release 1.
if grep -E -q '^isa.*\bmips(32|64)r2\b' /proc/cpuinfo; then echo "OK (R2 podporované)" elif grep -q '^cpu model.*\bICT Loongson-3\b' /proc/cpuinfo; then echo "OK (Loongson 3)" else echo "NOT OK: R2 nie je podporované" fi
Existujú niektoré balíky, pre ktoré Debian nemôže sľúbiť poskytovanie minimálnych spätných portov v prípade bezpečnostných problémov. Tieto sú popísané v nasledovných častiach.
Balík debian-security-support
pomáha
sledovať stav bezpečnostnej podpory nainštalovaných balíkov.
Debian 9 obsahuje niekoľko nových jadier prehliadačov, ktoré postihuje neustály tok nových bezpečnostných zraniteľností. Vysoký tok zraniteľností a čiastočný nedostatok podpory vo forme vetiev s dlhodobou podporou znamená, že je pre nás veľmi ťažké podporovať tieto prehliadače spätne portovanými bezpečnostnými opravami. Naviac, závislosti na knižniciach znemožňujú aktualizáciu na novšie vydania od dodávateľa. Preto sú prehliadače založené na jadrách webkit, qtwebkit a khtml súčasťou stretch, ale nevzťahuje sa na ne bezpečnostná podpora. Tieto prehliadače by ste nemali používať na prístup k nedôveryhodným stránkam.
Ako všeobecný prehliadač odporúčame prehliadače Firefox alebo Chromium.
Chromium - hoci je postavený na kóde Webkit - je to tzv. listový balík, ktorý bude priebežne aktualizovaný opätovným zostavením aktuálnej verzie Chrome v prostredí stabilného vydania. Firefox a Thunderbird budú tiež udržiavané aktuálne opätovným zostavením aktuálnej ESR verzie v prostredí stabilného vydania.
Platforma Node.js je postavená na libv8-3.14
, ktoré postihuje veľké množstvo
bezpečnostných problémov, ale momentálne projekt nemá žiadnych dobrovoľníkov
ani bezpečnostný tím s dostatočným záujmom, ochotných stráviť veľké množstvo
času riešením tohto typu problémov.
Nanešťastie to znamená, že ekosystém libv8-3.14
, nodejs
a súvisiacich balíkov node-* by ste
momentálne nemali používať na prácu s nedôveryhodným obsahom ako sú
neošetrené dáta z internetu.
Okrem toho tieto balíky nebudú dostávať žiadne bezpečnostné aktualizácie počas životného cyklu vydania stretch.
Vo väčšine prípadov by sa mala aktualizácia balíkov medzi jessie a stretch prebehnúť hladko. V malom počte prípadov, môže byť potrebný zásah, a to buď pred aktualizáciou alebo počas nej. Tieto prípady sú uvedené nižšie pre jednotlivé balíky.
Vydanie OpenSSH 7 v predvolenom nastavení zakázalo niektoré staršie šifry a protokol SSH1. Buďte opatrní pri aktualizácii strojov, ku ktorým máte prístup len prostredníctvom SSH.
Moreover, the default of the "UseDNS" configuration option has changed from yes to no. This may cause users who use the "from=" functionality in authorized_keys to limit ssh access by host to be locked out, which is especially troublesome if upgrading remotely.
Ďalšie informácie nájdete v dokumentácii OpenSSH.
This section covers some of the incompatible changes to APT that may affect your system.
APT will now attempt to discard all root privileges before fetching files from mirrors. APT can detect some common cases where this will fail and fall back to fetching things as root with a warning. However, it may fail to detect some exotic setups (e.g. UID-specific firewall rules).
If you experience issues with this feature, please change to the
_apt
user and check that it:
has read access to files in /var/lib/apt/lists
and
/var/cache/apt/archives
.
has read access to the APT trust store
(/etc/apt/trusted.gpg
and
/etc/apt/trusted.gpg.d/
)
can resolve DNS names and download files. Example methods for testing:
# From the dnsutils package (if using tor, please check with tor-resolve instead). $ nslookup debian.org >/dev/null || echo "Cannot resolve debian.org" $ wget -q https://debian.org/ -O- > /dev/null || echo "Cannot download index page of debian.org"
For DNS issues, please check that /etc/resolv.conf
is
readable.
APT 1.1 zaviedol nové jadro na pripevňovanie balíkov, ktoré sa teraz zhoduje s popisom v manuálovej stránke.
Staré jadro priradilo jednu prioritu pripevnenia pre každý balík. Nové jadro priradí priority pripevnení pre každú verziu. Potom vyberie verziu s najvyšším pripevnením, ktorá nepredstavuje zníženie verzie alebo má pripevnenie > 1000.
Tým sa mení vplyv niektorých pripevnení, najmä negatívnych. V minulosti pripevnenie verzie na hodnotu -1 prakticky zabránilo inštalácii balíka (pripevnenie balíka bolo -1); Teraz zabraňuje iba inštalácii verzie tohto balíka.
![]() | Poznámka |
---|---|
This section only applies if you have (or intend to use) third-party repositories enabled or if you maintain an APT repository. |
To improve download stability and ensure security of the downloaded content, APT now requires the following from an APT repository:
The InRelease file must be available.
All metadata must include at least SHA256 checksums of all items. This includes the GPG signature of the InRelease file.
Signatures on the InRelease file should be done with a key size of 2048 bits or larger.
If you rely on a third-party repository that cannot comply with the above, please urge them to upgrade their repository. More information about the InRelease file can be found on the Debian Wiki.
![]() | Poznámka |
---|---|
This section is only relevant if you have tweaked or need to change the default Xorg input configuration. |
In jessie, the default input driver for Xorg is the evdev
driver. In stretch, the default has changed to
libinput
. If you have Xorg configuration that relies on
the evdev
driver, you will either have to convert it to
the libinput
driver or reconfigure your system to use the
evdev
driver.
The following is an example configuration for libinput
to
enable the “Emulate3Buttons” feature.
Section "InputClass" Identifier "mouse" MatchIsPointer "on" Driver "libinput" Option "MiddleEmulation" "on" EndSection
Insert it into
/etc/X11/xorg.conf.d/41-middle-emulation.conf
, reboot
(or restart your Xserver) and it should now be enabled.
The evdev
driver is still available in the xserver-xorg-input-evdev
package.
V dôsledku nedostatku správcov v upstreame bol systém init Upstart odstránený z vydania Stretch. Ak sa váš systém spolieha na tento balík, mali by ste si všimnúť, že počas životného cyklu Debianu 9 nebude aktualizovaný a od vydania Debian 10 (Buster) môžu byť z balíkov odstránené úlohy Upstart.
Prosím, zvážte prechod na podporovaný systém init, ako je systemd alebo OpenRC.
![]() | Poznámka |
---|---|
This section is mainly intended for developers or organizations that build their own debian packages. |
The debhelper tool suite will now generate dbgsym
packages by default for ELF binaries. If you develop and package binaries,
please check that your tooling supports these extra auto-generated packages.
If you use reprepro
, you want to
upgrade it to at least version 4.17.0. For aptly
, you will need at least version 1.0.0,
which is unfortunately not available in Debian stretch.
Should your tooling be unable to cope with these gracefully, you can ask
debhelper to disable this feature by adding
“noautodbgsym
” in the DEB_BUILD_OPTIONS
variable of your build service. Please see the
dh_strip manpage for more information.
The openssl application expects option arguments before non-option arguments. For example, this does not work anymore:
openssl dsaparam 2048 -out file
while this still does:
openssl dsaparam -out file 2048
The openssl enc command changed the default digest (used to create the key from passphrase) from MD5 to SHA256. The digest can be specified with the -md option in case old files need to be decrypted with newer OpenSSL (or the other way around).
The 3DES and RC4 ciphers are no longer available for TLS/SSL communication. Servers linked against OpenSSL can't offer them and clients can't connect to servers which offer only those. This means that OpenSSL and Windows XP share no common cipher.
The package libssl-dev
provides
header files to compile against OpenSSL 1.1.0. The API changed a lot and it
is possible that the software won't compile anymore. There is an overview of the
changes. If you can't update your software, there is also
libssl1.0-dev
which provides headers
against OpenSSL 1.0.2.
![]() | Poznámka |
---|---|
This section applies to code maintained outside Debian - local, third-party, or legacy Perl scripts and modules. |
Some modules have been removed from Perl core and are now shipped in
separate packages. Notable examples are CGI
, available in
the libcgi-pm-perl
package, and
Module::Build
, available in the libmodule-build-perl
package.
The current working directory (.
) has been removed from
the default list of include directories, @INC
. This may
affect usage of require()
, do()
, etc.,
where the arguments are files in the current directory.
All perl programs and module shipped by Debian should have been fixed to address any incompatibilities caused by the above; please file bugs if this is not the case. As the change has now been made in perl 5.26.0, third-party software should also start to be fixed. Information about how to fix this issue for developers is provided in the perl 5.26 release notes (see the SECURITY section).
If needed you can temporarily reinstate .
in
@INC
globally by commenting out the line in
/etc/perl/sitecustomize.pl
but you should only do this
with a understanding of the potential risks. This workaround will be removed
in Debian 10. You can also set the
PERL_USE_UNSAFE_INC
environment variable in a specific
context which will have the same effect.
The full list of changes in Perl since the version in Debian 8 is available in perl522delta and perl524delta.
The PostgreSQL PL/Perl procedural language package in jessie is incompatible
with the Perl version in stretch. The postgresql-plperl-9.4
package will be removed
during the update, rendering server-side Perl procedures
dysfunctional. Upgrading to PostgreSQL 9.6 should be unaffected; the
procedures will work in the new PostgreSQL cluster if the postgresql-plperl-9.6
package is installed. If
unsure, take a backup of your PostgreSQL 9.4 clusters before upgrading to
stretch.
Balík net-tools
už nie je
štandardnou súčasťou nových inštalácií, pretože jeho priorita balíka bola
znížená z „dôležitý“ na „voliteľný“. Používateľom odporúčame namiesto neho
používať modernú sadu nástrojov iproute2
(ktorá bola súčasťou nových inštalácií
už v niekoľkých vydaniach). Ak napriek tomu preferujete používanie programov
z net-tools
, môžete si ich
jednoducho nainštalovať pomocou
apt install net-tools
Tu je zhrnutie príkazov net-tools spolu s ich ekvivalentom iproute2:
zastaralé príkazy net-tools | ekvivalenty z iproute2 |
---|---|
arp | ip n (ip neighbor) |
ifconfig | ip a (ip addr), ip link, ip -s (ip -stats) |
iptunnel | ip tunnel |
nameif | ip link |
netstat | ss, ip route (pre netstat -r), ip -s link (pre netstat -i), ip maddr (pre netstat -g) |
route | ip r (ip route) |
![]() | Poznámka |
---|---|
This only applies to systems that have ATA over ethernet (AoE) devices mounted. If the system does not mount any network shares, you can safely skip this section. |
Due to a cleanup in the handling of network deconfiguration, AoE devices in
use are no longer handled as expected during shutdown, possibly resulting in
hangs and/or data loss. To mitigate that situation, it is suggested to mount
such devices using the _netdev
mount option. That option
is available when using swap over AoE as well.
During the upgrade, you may see some warning like:
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/^(.*?)(\\)?\${ <-- HERE ([^{}]+)}(.*)$/ at /usr/share/perl5/Debconf/Question.pm line 72. Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/\${ <-- HERE ([^}]+)}/ at /usr/share/perl5/Debconf/Config.pm line 30.
These are harmless and happens if perl-base
is upgraded before the debconf
package.
![]() | Poznámka |
---|---|
This section only applies to system that is using SELinux, which is not enabled by default. |
In stretch, the SELinux policy store have moved from
/etc/selinux/
to
<policy_name>
/var/lib/selinux/
.
Furthermore, the format used inside the store has changed.
<policy_name>
The policies provided by Debian (from e.g. the selinux-policy-default
package) will be migrated
automatically. However, system specific policies need to be migrated
manually.
The semanage-utils
package provides
the script /usr/lib/selinux/semanage_migrate_store
to
do this transition.
The iSCSI Enterprise Target (IET), packaged in the iscsitarget
package in previous releases, is no
longer in Debian, as it will not work with recent kernel versions, and the
project has seen no development activity in recent years.
Users of IET are encouraged to switch to the LIO stack, which is fully
supported in Debian stretch. The package targetcli-fb
provides the configuration utility
for the LIO iSCSI target.
As the LIO stack was developed independently of the IET, the configuration has to be migrated manually.