Systemd-swap: Swapon-Fehler "Swap-Datei hat Löcher"

Erstellt am 7. Juli 2020  ·  16Kommentare  ·  Quelle: Nefelim4ag/systemd-swap

In der neuesten Version von systemd-swap on (Manjaro-Test) kann ich nur zram zum Laufen bringen, die anderen swapfc zswap funktionieren nicht. In der Version 4.0.1-2 funktioniert alles einwandfrei. (Ich habe keine anderen früheren Versionen getestet)

bug

Alle 16 Kommentare

Hardwarekonfiguration:

System:
  Host: Workstation Kernel: 5.7.6-1-MANJARO x86_64 bits: 64 compiler: gcc 
  v: 10.1.0 Desktop: Xfce 4.14.2 tk: Gtk 3.24.20 info: xfce4-panel wm: xfwm4 
  dm: LightDM 1.30.0 Distro: Manjaro Linux 
Machine:
  Type: Desktop Mobo: Gigabyte model: GA-78LMT-S2P v: x.x serial: <filter> 
  BIOS: Award v: F3 date: 10/18/2012 
CPU:
  Topology: Dual Core model: AMD Athlon II X2 250 bits: 64 type: MCP 
  arch: K10 rev: 3 L2 cache: 2048 KiB 
  flags: lm nx pae sse sse2 sse3 sse4a svm bogomips: 12057 
  Speed: 800 MHz min/max: 800/3000 MHz Core speeds (MHz): 1: 1800 2: 800 
Graphics:
  Device-1: AMD RV730 PRO [Radeon HD 4650] 
  vendor: Hightech Information System driver: radeon v: kernel 
  bus ID: 01:00.0 chip ID: 1002:9498 
  Display: x11 server: X.Org 1.20.8 driver: ati,radeon unloaded: modesetting 
  alternate: fbdev,vesa resolution: 1920x1080~60Hz 
  OpenGL: renderer: AMD RV730 (DRM 2.50.0 / 5.7.6-1-MANJARO LLVM 10.0.0) 
  v: 3.3 Mesa 20.1.2 compat-v: 3.0 direct render: Yes 
Audio:
  Device-1: AMD SBx00 Azalia vendor: Gigabyte driver: snd_hda_intel 
  v: kernel bus ID: 00:14.2 chip ID: 1002:4383 
  Device-2: AMD RV710/730 HDMI Audio [Radeon HD 4000 series] 
  vendor: Hightech Information System driver: snd_hda_intel v: kernel 
  bus ID: 01:00.1 chip ID: 1002:aa38 
  Sound Server: ALSA v: k5.7.6-1-MANJARO 
Network:
  Device-1: Qualcomm Atheros AR8161 Gigabit Ethernet vendor: Gigabyte 
  driver: alx v: kernel port: df00 bus ID: 02:00.0 chip ID: 1969:1091 
  IF: enp2s0 state: up speed: 1000 Mbps duplex: full mac: <filter> 
  IF-ID-1: vmnet1 state: unknown speed: N/A duplex: N/A mac: <filter> 
  IF-ID-2: vmnet8 state: unknown speed: N/A duplex: N/A mac: <filter> 
Drives:
  Local Storage: total: 223.58 GiB used: 29.45 GiB (13.2%) 
  ID-1: /dev/sda vendor: SanDisk model: SDSSDA120G size: 111.79 GiB 
  speed: 3.0 Gb/s serial: <filter> rev: 00RL scheme: MBR 
  ID-2: /dev/sdb vendor: Samsung model: SSD 840 EVO 120GB size: 111.79 GiB 
  speed: 3.0 Gb/s serial: <filter> rev: DB6Q scheme: GPT 
Partition:
  ID-1: / size: 111.79 GiB used: 28.70 GiB (25.7%) fs: btrfs dev: /dev/sda2 
  ID-2: /home size: 111.79 GiB used: 28.70 GiB (25.7%) fs: btrfs 
  dev: /dev/sda2 
Sensors:
  System Temperatures: cpu: 26.0 C mobo: N/A gpu: radeon temp: 62 C 
  Fan Speeds (RPM): N/A 
Info:
  Processes: 228 Uptime: 31m Memory: 3.84 GiB used: 2.17 GiB (56.4%) 
  Init: systemd v: 245 Compilers: gcc: 10.1.0 Shell: zsh v: 5.8 
  running in: xfce4-terminal inxi: 3.0.37

Ich benutze btrfs, wenn dies helfen kann, um Fehler zu beheben

Es gab eine verpfuschte PR (https://github.com/Nefelim4ag/systemd-swap/pull/140), die den btrfs-Codepfad modifizierte, an der möglicherweise noch gearbeitet wurde (https://github.com/Nefelim4ag/systemd) -swap / pull / 144) wie es scheint.

Da # 144 seit einiger Zeit kein Update mehr vom Übermittler gesehen hat, konnte ich es reparieren und zusammenführen.

Whops, wollte das noch nicht schließen.
Hat c8431ddbd728e7da14eaa69362a2ef0becf6074d das Problem für Sie behoben?

@ Jarel1337 Ich werde dir Feedback geben, wenn ich wieder zu Hause bin. Soll ich die Version im Arch Repo oder Git Klon hier verwenden?

@ Jarel1337 Ich werde dir Feedback geben, wenn ich wieder zu Hause bin. Soll ich die Version im Arch Repo oder Git Klon hier verwenden?

Bitte verwenden Sie master ( unser Paket hier oder machen Sie einfach die Installation)

Scheint bei mir nicht zu funktionieren Ich habe versucht, den alten systemd-swap-Ordner zu löschen und das System neu zu starten, und es tritt immer wieder ein Fehler für mich auf.

Ich benutze übrigens das aur-Paket

systemctl status systemd-swap

● systemd-swap.service - Manage swap spaces on zram, files and partitions.
     Loaded: loaded (/usr/lib/systemd/system/systemd-swap.service; disabled; vendor preset: disabled)
     Active: active (running) since Wed 2020-07-08 22:29:05 +08; 2s ago
   Main PID: 2168 (bash)
     Status: "Monitoring memory status..."
      Tasks: 1 (limit: 19132)
     Memory: 8.7M
     CGroup: /system.slice/systemd-swap.service
             └─2168 bash /usr/bin/systemd-swap start

Jul 08 22:29:05 ryzen-linux systemd-swap[2168]: INFO: swapD: searching swap devices
Jul 08 22:29:05 ryzen-linux systemd-swap[2168]: INFO: swapFC: allocate chunk:  1
Jul 08 22:29:05 ryzen-linux systemd-swap[2254]: Job failed. See "journalctl -xe" for details.
Jul 08 22:29:05 ryzen-linux systemd[1]: systemd-swap.service: Got notification message from PID 2254, but reception only permitted for main PID 2168
Jul 08 22:29:06 ryzen-linux systemd-swap[2168]: INFO: swapFC: free swap: 0 < 15 - allocate chunk:  2
Jul 08 22:29:06 ryzen-linux systemd-swap[2288]: Job failed. See "journalctl -xe" for details.
Jul 08 22:29:06 ryzen-linux systemd[1]: systemd-swap.service: Got notification message from PID 2288, but reception only permitted for main PID 2168
Jul 08 22:29:07 ryzen-linux systemd-swap[2168]: INFO: swapFC: free swap: 0 < 15 - allocate chunk:  3
Jul 08 22:29:07 ryzen-linux systemd-swap[2324]: Job failed. See "journalctl -xe" for details.
Jul 08 22:29:07 ryzen-linux systemd[1]: systemd-swap.service: Got notification message from PID 2324, but reception only permitted for main PID 2168

relevanter Teil von journalctl -xe:

Jul 08 22:29:41 ryzen-linux systemd[1]: Activating swap Swap File...
-- Subject: A start job for unit var-lib-systemd\x2dswap-swapfc-32.swap has begun execution
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- A start job for unit var-lib-systemd\x2dswap-swapfc-32.swap has begun execution.
-- 
-- The job identifier is 1414.
Jul 08 22:29:41 ryzen-linux swapon[3377]: swapon: /var/lib/systemd-swap/swapfc/32: skipping - it appears to have holes.
Jul 08 22:29:41 ryzen-linux systemd[1]: var-lib-systemd\x2dswap-swapfc-32.swap: Swap process exited, code=exited, status=255/EXCEPTION
-- Subject: Unit process exited
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- An n/a= process belonging to unit var-lib-systemd\x2dswap-swapfc-32.swap has exited.
-- 
-- The process' exit code is 'exited' and its exit status is 255.
Jul 08 22:29:41 ryzen-linux systemd[1]: var-lib-systemd\x2dswap-swapfc-32.swap: Failed with result 'exit-code'.
-- Subject: Unit failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- The unit var-lib-systemd\x2dswap-swapfc-32.swap has entered the 'failed' state with result 'exit-code'.
Jul 08 22:29:41 ryzen-linux systemd[1]: Failed to activate swap Swap File.
-- Subject: A start job for unit var-lib-systemd\x2dswap-swapfc-32.swap has failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- A start job for unit var-lib-systemd\x2dswap-swapfc-32.swap has finished with a failure.
-- 
-- The job identifier is 1414 and the job result is failed.
Jul 08 22:29:41 ryzen-linux systemd-swap[3376]: Job failed. See "journalctl -xe" for details.
Jul 08 22:29:41 ryzen-linux systemd[1]: Cannot find unit for notify message of PID 3376, ignoring.

@ Jarel1337 für mich gleich (wie @nathanielcwm) installiert über make install

neueste Version> journalctl -p err -b swap File failed to activate

@nathanielcwm Benutzt du auch btrfs?

Um dies zu umgehen, bis ein Fix zusammengeführt wird, können Sie swapfc_force_use_loop=true festlegen

BEARBEITEN: Anscheinend waren Loop-Geräte von der systemd-swap.service -Einheit nicht erlaubt. Der Fix ist ein einfacher Einzeiler und befindet sich auf dem aktuellen Master.

Sollte behoben werden, indem dd anstelle von fallocate (ich habe sogar vergessen, dass dd für einige Dateisysteme nicht verwendet wurde, dies sollte schon vor langer Zeit geschehen sein)

Ich hoffe, es wird das Problem beheben, die Problemumgehung: swapfc_force_use_loop=true zeigt mir das Argument der Invalide in systemctl status systemd-swap.service

Kann auch Hardware-bezogen sein?

Ich hoffe, es wird das Problem beheben, die Problemumgehung: swapfc_force_use_loop=true zeigt mir das Argument der Invalide in systemctl status systemd-swap.service

Kann auch Hardware-bezogen sein?

Sie müssen beide Commits manuell zurückportieren, damit es funktioniert. Ich würde empfehlen, vorerst nur Master zu verwenden

Schließlich machen Sie die Installation vom Master und das Problem ist weg. Vielen Dank @ Jarel1337 !
Ich werde warten, bis dies in Arch Linux Upstream-Repos ist.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen