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

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

    <bug>
          <bug_id>39089</bug_id>
          
          <creation_ts>2020-10-16 21:08:06 +0300</creation_ts>
          <short_desc>Добавить опцию запрета создания жестких ссылок.</short_desc>
          <delta_ts>2020-12-21 21:49:56 +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>chrooted</component>
          <version>unstable</version>
          <rep_platform>x86_64</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P5</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="nbr">nbr</reporter>
          <assigned_to name="placeholder@altlinux.org">placeholder</assigned_to>
          <cc>aen</cc>
    
    <cc>george</cc>
    
    <cc>glebfm</cc>
    
    <cc>imz</cc>
    
    <cc>ldv</cc>
    
    <cc>placeholder</cc>
    
    <cc>vt</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>193304</commentid>
    <comment_count>0</comment_count>
    <who name="nbr">nbr</who>
    <bug_when>2020-10-16 21:08:06 +0300</bug_when>
    <thetext>Chrooted в строке 137 в Copy пытается всегда сделать ln для копируемого файла, затем пытается его скопировать.
Предлагаю ввести ключ для update_сhrooted (например -s) который бы 
позволял сразу делать cp, не пытаясь сделать ln.
Такое полезно в системах с selinux, где этот hardlinked файл технически 
будет иметь только одну метку а по смыслу нахождения в основном месте и в chroot он должен был бы иметь разные метки. В случае копирования создаются два файла с разными метками а в случае hardlink - один файл с &quot;не той&quot; меткой в каком-нибудь месте.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195094</commentid>
    <comment_count>1</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2020-12-21 20:16:01 +0300</bug_when>
    <thetext>(In reply to nbr from comment #0)
&gt; Chrooted в строке 137 в Copy пытается всегда сделать ln для копируемого
&gt; файла, затем пытается его скопировать.
&gt; Предлагаю ввести ключ для update_сhrooted (например -s) который бы 
&gt; позволял сразу делать cp, не пытаясь сделать ln.

Добавлять утилите update_сhrooted параметр, меняющий её поведение,
бессмысленно, поскольку невозможно пропатчить всех пользователей этой утилиты.
Нужен какой-то другой вариант, не затрагивающий этих пользователей.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195096</commentid>
    <comment_count>2</comment_count>
    <who name="nbr">nbr</who>
    <bug_when>2020-12-21 21:04:59 +0300</bug_when>
    <thetext>(In reply to Dmitry V. Levin from comment #1)
&gt; (In reply to nbr from comment #0)
&gt; &gt; Chrooted в строке 137 в Copy пытается всегда сделать ln для копируемого
&gt; &gt; файла, затем пытается его скопировать.
&gt; &gt; Предлагаю ввести ключ для update_сhrooted (например -s) который бы 
&gt; &gt; позволял сразу делать cp, не пытаясь сделать ln.
&gt; 
&gt; Добавлять утилите update_сhrooted параметр, меняющий её поведение,
&gt; бессмысленно, поскольку невозможно пропатчить всех пользователей этой
Странный ответ. Не бессмысленно, я же указал осмысленный вариант
использования этого параметра.
&gt; утилиты.
&gt; Нужен какой-то другой вариант, не затрагивающий этих пользователей.
Каким образом добавление нового  ключа утилиты, о котором не знают и не собираются
знать текущие ее пользователи</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195097</commentid>
    <comment_count>3</comment_count>
    <who name="nbr">nbr</who>
    <bug_when>2020-12-21 21:08:49 +0300</bug_when>
    <thetext>Я предлагаю сделать этот ключ не для общего употребления, а только для создания специальных дистрибутивов с Selinux. Поведение сhrooted для обычных дистрибутивов менять не придется, равно как и патчить зависящие от них программы.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195098</commentid>
    <comment_count>4</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2020-12-21 21:09:45 +0300</bug_when>
    <thetext>(In reply to nbr from comment #2)
&gt; (In reply to Dmitry V. Levin from comment #1)
&gt; &gt; (In reply to nbr from comment #0)
&gt; &gt; &gt; Chrooted в строке 137 в Copy пытается всегда сделать ln для копируемого
&gt; &gt; &gt; файла, затем пытается его скопировать.
&gt; &gt; &gt; Предлагаю ввести ключ для update_сhrooted (например -s) который бы 
&gt; &gt; &gt; позволял сразу делать cp, не пытаясь сделать ln.
&gt; &gt; 
&gt; &gt; Добавлять утилите update_сhrooted параметр, меняющий её поведение,
&gt; &gt; бессмысленно, поскольку невозможно пропатчить всех пользователей этой
&gt; Странный ответ. Не бессмысленно, я же указал осмысленный вариант
&gt; использования этого параметра.

К сожалению, нет.

&gt; &gt; утилиты.
&gt; &gt; Нужен какой-то другой вариант, не затрагивающий этих пользователей.
&gt; Каким образом добавление нового  ключа утилиты, о котором не знают и не
&gt; собираются
&gt; знать текущие ее пользователи

Нет смысла добавлять ключ, который по смыслу следует обязательно использовать во всех скриптах, вызывающих update_сhrooted, при некотрых определённых условиях, например, в системах с selinux.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195099</commentid>
    <comment_count>5</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2020-12-21 21:12:29 +0300</bug_when>
    <thetext>(In reply to nbr from comment #3)
&gt; Я предлагаю сделать этот ключ не для общего употребления, а только для
&gt; создания специальных дистрибутивов с Selinux. Поведение сhrooted для обычных
&gt; дистрибутивов менять не придется, равно как и патчить зависящие от них
&gt; программы.

Поскольку update_сhrooted запускают различные скрипты в пакетах,
если добавить параметр к update_сhrooted и при этом не пропатчить ВСЕ эти скрипты, то желаемый эффект не будет достигнут.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195100</commentid>
    <comment_count>6</comment_count>
    <who name="AEN">aen</who>
    <bug_when>2020-12-21 21:17:54 +0300</bug_when>
    <thetext>(Ответ для Dmitry V. Levin на комментарий #4)
&gt; (In reply to nbr from comment #2)
&gt; &gt; (In reply to Dmitry V. Levin from comment #1)
&gt; &gt; &gt; (In reply to nbr from comment #0)
&gt; &gt; &gt; &gt; Chrooted в строке 137 в Copy пытается всегда сделать ln для копируемого
&gt; &gt; &gt; &gt; файла, затем пытается его скопировать.
&gt; &gt; &gt; &gt; Предлагаю ввести ключ для update_сhrooted (например -s) который бы 
&gt; &gt; &gt; &gt; позволял сразу делать cp, не пытаясь сделать ln.
&gt; &gt; &gt; 
&gt; &gt; &gt; Добавлять утилите update_сhrooted параметр, меняющий её поведение,
&gt; &gt; &gt; бессмысленно, поскольку невозможно пропатчить всех пользователей этой
&gt; &gt; Странный ответ. Не бессмысленно, я же указал осмысленный вариант
&gt; &gt; использования этого параметра.
&gt; 
&gt; К сожалению, нет.
&gt; 
&gt; &gt; &gt; утилиты.
&gt; &gt; &gt; Нужен какой-то другой вариант, не затрагивающий этих пользователей.
&gt; &gt; Каким образом добавление нового  ключа утилиты, о котором не знают и не
&gt; &gt; собираются
&gt; &gt; знать текущие ее пользователи
&gt; 
&gt; Нет смысла добавлять ключ, который по смыслу следует обязательно
&gt; использовать во всех скриптах, вызывающих update_сhrooted, при некотрых
&gt; определённых условиях, например, в системах с selinux.

Может быть, включить определение выполнения этих условий?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195101</commentid>
    <comment_count>7</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2020-12-21 21:28:41 +0300</bug_when>
    <thetext>(In reply to AEN from comment #6)
&gt; (Ответ для Dmitry V. Levin на комментарий #4)
&gt; &gt; Нет смысла добавлять ключ, который по смыслу следует обязательно
&gt; &gt; использовать во всех скриптах, вызывающих update_сhrooted, при некотрых
&gt; &gt; определённых условиях, например, в системах с selinux.
&gt; 
&gt; Может быть, включить определение выполнения этих условий?

Я объяснил, почему не надо добавлять ключ и вообще менять command line interface под эту задачу.  Надо просто придумать какой-то другой способ настройки поведения update_сhrooted.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195102</commentid>
    <comment_count>8</comment_count>
    <who name="nbr">nbr</who>
    <bug_when>2020-12-21 21:32:24 +0300</bug_when>
    <thetext>Кротко скажу, что такая опция может быть полезна и для систем или дистрибутивов общего назначения, в которых администраторы хотят одинакового поведения сhrooted (всегда копирование) для систем с разной разметкой файловых систем.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195103</commentid>
    <comment_count>9</comment_count>
    <who name="nbr">nbr</who>
    <bug_when>2020-12-21 21:42:47 +0300</bug_when>
    <thetext>А если такой вариант?

SourceIfNotEmpty /etc/sysconfig/chrooted 

if [ &quot;$CHROOTED_NO_HARDLINKS&quot; == 1 ] ;
 then
    
 fi</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>195104</commentid>
    <comment_count>10</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2020-12-21 21:49:56 +0300</bug_when>
    <thetext>Да, конечно, это должен быть конфигурационный файл.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>