<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>40800</bug_id>
          
          <creation_ts>2021-08-23 13:14:09 +0300</creation_ts>
          <short_desc>livecd-save-nfs: тупит около 30 секунд при загрузке системы</short_desc>
          <delta_ts>2021-09-01 17:02:43 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>livecd-save-nfs</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Sheplyakov">asheplyakov</reporter>
          <assigned_to name="Anton V. Boyarshinov">boyarsh</assigned_to>
          <cc>boyarsh</cc>
    
    <cc>sem</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>201963</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Sheplyakov">asheplyakov</who>
    <bug_when>2021-08-23 13:14:09 +0300</bug_when>
    <thetext># systemd-analyze critical-chain
graphical.target @34.627s
└─lightdm.service @34.581s +45ms
  └─systemd-user-sessions.service @31.086s +14ms
    └─network.target @31.081s
      └─NetworkManager.service @30.957s +122ms
        └─network.service @30.872s +84ms
          └─livecd-save-nfs.service @302ms +30.567s
            └─systemd-journald.socket @291ms
              └─system.slice @282ms
                └─-.slice @282ms

Пытается &quot;вручную&quot; поднять интерфейс [1], в котором нет шнурка.

[1] зачем - не ясно, NetworkManager прекрасно с этим справляется</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>201978</commentid>
    <comment_count>1</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2021-08-23 18:08:26 +0300</bug_when>
    <thetext>Вообще, идея этого сервиса состоит в том, что при загрузке livecd по nfs важно обеспечить непрерывность доступности сетевого соединения от начальной загрузки и до самого конца. Если NetworkManager начнёт переустанавливать это соединение, он выбьет из под себя файловую систему.

Но вообще странно, он должен пытаться осторожно потрогать только уже поднятый интерфейс, если он пытается сделать это с опущенным интерфейсом -- где-то ошибка, но неочевидно где.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>201996</commentid>
    <comment_count>2</comment_count>
    <who name="Anton V. Boyarshinov">boyarsh</who>
    <bug_when>2021-08-24 12:36:20 +0300</bug_when>
    <thetext>Не показывает ли на вашем оборудовнии, случайно, интерфейс без провода &quot;state UP&quot;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202186</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Sheplyakov">asheplyakov</who>
    <bug_when>2021-09-01 11:48:55 +0300</bug_when>
    <thetext>(In reply to Anton V. Boyarshinov from comment #2)
&gt; Не показывает ли на вашем оборудовнии, случайно, интерфейс без провода
&gt; &quot;state UP&quot;?

Таки да:

&gt; Пытается &quot;вручную&quot; поднять интерфейс [1], в котором нет шнурка.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202187</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Sheplyakov">asheplyakov</who>
    <bug_when>2021-09-01 11:54:05 +0300</bug_when>
    <thetext>(In reply to Anton V. Boyarshinov from comment #1)
&gt; Вообще, идея этого сервиса состоит в том, что при загрузке livecd по nfs
&gt; важно обеспечить непрерывность доступности сетевого соединения от начальной
&gt; загрузки и до самого конца.

Во-первых, сетевые загрузки бывают по http и ftp, и для них непрерывная доступность сети не нужна (на самом деле, после скачивания stage2 сеть вовсе не требуется)

Во-вторых, не ясно, чем dhclient лучше (или хуже) NetworkManager. Что тот, что другой настраивают сетевой интерфейс по dhcp (и при этом может даже IP адрес поменяться). Я бы понял - вообще не трогать сетевой интерфейс, с которого загрузились.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202188</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Sheplyakov">asheplyakov</who>
    <bug_when>2021-09-01 12:02:56 +0300</bug_when>
    <thetext>(In reply to Anton V. Boyarshinov from comment #1)
&gt; Но вообще странно, он должен пытаться осторожно потрогать только уже
&gt; поднятый интерфейс, если он пытается сделать это с опущенным интерфейсом --
&gt; где-то ошибка, но неочевидно где.

Да вот здесь же:
http://git.altlinux.org/gears/l/livecd-save-nfs.git?p=livecd-save-nfs.git;a=blob;f=livecd-save-nfs/livecd-save-nfs;h=c4e220cefca94f33abd97cd1c0d1bc9435b153b0;hb=b65c2dcac5543be066a680d6390bb5f31edec043#l20

# ip -o link
1: lo: &lt;LOOPBACK,UP,LOWER_UP&gt; mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000\    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000\    link/ether 00:26:58:42:93:79 brd ff:ff:ff:ff:ff:ff
3: eth1: &lt;NO-CARRIER,BROADCAST,MULTICAST,UP&gt; mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000\    link/ether 00:26:58:42:93:7a brd ff:ff:ff:ff:ff:ff

В строке

eth1: &lt;NO-CARRIER,BROADCAST,MULTICAST,UP&gt; mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000\    link/ether 00:26:58:42:93:7a brd ff:ff:ff:ff:ff:ff

совпадает &apos;,UP&gt;&apos;, но на самом-то деле &apos;state DOWN&apos;.

Правильно так:

$ cat /sys/class/net/eth1/operstate 
down</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202189</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Sheplyakov">asheplyakov</who>
    <bug_when>2021-09-01 12:07:58 +0300</bug_when>
    <thetext>(In reply to Anton V. Boyarshinov from comment #1)
&gt; Вообще, идея этого сервиса состоит в том, что при загрузке livecd по nfs
&gt; важно обеспечить непрерывность доступности сетевого соединения от начальной
&gt; загрузки и до самого конца.

И ещё неясно - зачем нужно *синхронно* получать адрес. Сделали конфиг, запустили dhcpcd в фоне, и вышли.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202191</commentid>
    <comment_count>7</comment_count>
    <who name="Alexey Sheplyakov">asheplyakov</who>
    <bug_when>2021-09-01 12:53:29 +0300</bug_when>
    <thetext>#284328 BUILDING #1 [locked] [test-only] sisyphus livecd-save-nfs.git=0.4.2-alt1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>202200</commentid>
    <comment_count>8</comment_count>
    <who name="Repository Robot">repository-robot</who>
    <bug_when>2021-09-01 17:02:43 +0300</bug_when>
    <thetext>livecd-save-nfs-0.4.2-alt1 -&gt; sisyphus:

 Wed Sep 01 2021 Alexey Sheplyakov &lt;asheplyakov@altlinux&gt; 0.4.2-alt1
 - Ignore interfaces which are down or have no carrier (closes: #40800)
 - Immediately fork dhcpcd into the background (related: #40800)
 - Act only when booted via NFS or CIFS (related: #40800)</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>