Объявление

Свернуть
Пока нет объявлений.

mount bind и права

Свернуть
X
Свернуть
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • mount bind и права

    Не могу найти почему так происходит, может кто подскажет?
    Есть раздел ro на котором есть скрипт, что выполняется в определенное время.
    Мне нужно немного изменить поведение скрипта. Копирую скрипт на другой раздел, вношу изменения - права не меняю (rwxr-xr-x).
    Далее монтирую его (файл скрипта) вместо того, что на разделе ro
    mount --bind /rw_part/my_script.sh /ro_part/target_script.sh

    Проверяю права - rwxr-xr-x, пытаюсь выполнить /ro_part/target_script.sh - ошибка bash: Permission denied
    Но! Когда я перемонтирую, то все начинает работать
    mount -o remount,bind /rw_part/my_script.sh /ro_part/target_script.sh

    В чем прикол? Что не так делаю? Почему с первого раза не работает, а начинает работать когда перемонтирую?

    P.S. Ubuntu Linux 4.4.162
    Последний раз редактировалось Rain; 20.08.2019, 18:11.

  • #2

    mount bind и права

    mount --bind /rw_part/my_script /ro_part/target_script
    mount -o remount,bind /my_script /target_script

    -- в первом случае монтируется файл, а во втором папка?
    Последний раз редактировалось dnck; 20.08.2019, 09:45.

    Комментарий


    • #3

      mount bind и права

      файл в обоих командах - я написал, что скрипт, опечатался в примере
      что бы понятней было - исправил

      И еще дополню - права именно на выполнение не отрабатывают сразу. Если запускать как bash /ro_part/target_script.sh, то отрабатывает - т.е. право на чтение есть. А право на выполнение появляется когда перемонтирую.
      Последний раз редактировалось Rain; 20.08.2019, 18:11.

      Комментарий


      • #4

        mount bind и права

        А право на выполнение появляется когда перемонтирую.
        покажи вывод stat /ro_part/target_script.sh в случае с ro монтированием и rw



        Комментарий


        • #5

          mount bind и права

          начало, ничего еще не делал
          Код:
          root@host# stat /ro_part/target_script.sh
          
          File: `/ro_part/target_script.sh'
          Size: 8781 Blocks: 18 IO Block: 1024 regular file
          Device: b301h/45825d Inode: 12739 Links: 1
          Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
          Access: 2008-02-11 22:41:00.000000000 -0800
          Modify: 2008-02-11 22:41:00.000000000 -0800
          Change: 2008-02-11 22:41:00.000000000 -0800
          после первой команды
          Код:
          root@host# mount --bind /rw_part/my_script.sh /ro_part/target_script.sh
          root@host# mount
          ...
          /rw_part/my_sript.sh on /ro_part/target_script.sh type none (rw,bind)
          ...
          Код:
          root@host# stat /ro_part/target_script.sh
          File: `/ro_part/target_script.sh'
          Size: 8843 Blocks: 24 IO Block: 4096 regular file
          Device: b303h/45827d Inode: 141 Links: 1
          Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
          Access: 2019-08-21 10:39:31.563602782 -0700
          Modify: 2019-08-21 10:37:26.420040423 -0700
          Change: 2019-08-21 10:37:26.420040423 -0700
          после второй команды
          Код:
          root@host# mount -o remount,bind /rw_part/my_script.sh /ro_part/target_script.sh
          root@host# mount
          ...
          /rw_part/my_sript.sh on /ro_part/target_script.sh type none (rw,bind)
          ...
          Код:
          root@host# stat /ro_part/target_script.sh
          File: `/ro_part/target_script.sh'
          Size: 8843 Blocks: 24 IO Block: 4096 regular file
          Device: b303h/45827d Inode: 141 Links: 1
          Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
          Access: 2019-08-21 10:39:31.563602782 -0700
          Modify: 2019-08-21 10:37:26.420040423 -0700
          Change: 2019-08-21 10:37:26.420040423 -0700
          сам скрипт который на разделе rw я скопировал перед этим с раздела ro и подправил немного
          вот по нему вывод stat
          Код:
          root@host# stat /rw_part/my_sript.sh
          File: `/rw_part/my_sript.sh'
          Size: 8843 Blocks: 24 IO Block: 4096 regular file
          Device: b303h/45827d Inode: 141 Links: 1
          Access: (0755/-rwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
          Access: 2019-08-21 10:39:31.563602782 -0700
          Modify: 2019-08-21 10:37:26.420040423 -0700
          Change: 2019-08-21 10:37:26.420040423 -0700
          Как видно - никакой разницы нету. Только вот после выполнения mount - remount система почему-то дает права на выполнение, а не сразу после первого монтирования.
          Я сейчас сделал с костылем - mount - sleep - remount, хочу понять, это баг в системе, или фича такая.

          Комментарий


          • #6

            mount bind и права

            bash: Permission denied
            может ошибка возникает не из-за прав, а в самом скрипте? к примеру: скрипт пытается "перезаписать" себя? проверить можно - в скрипт echo 'hi' прописать и в ro маунте выполнить его

            Комментарий


            • #7

              mount bind и права

              Нет.
              Все, вопрос закрываю. Это глюк системы.
              Сейчас добрался до другого компа с линуксом с другой версией, сделал тест - создал диск, закинул туда скрипт, смонтировал диск в ридонли - все проходит без проблем с первого раза.
              Делаю вывод, что это глюк старой системы.
              Спасибо.

              Комментарий

              Сейчас на странице 0 пользователь(ей)

              Обработка...
              X