Можно заменить исполняемый файл во время работы программы ЕСЛИ вы rm
( отсоедините ) его первым.
Это не то, что происходит с cp
, так что не используйте это. Либо mv
файл, либо, если быть уверенным, rm
его, а затем поместите новый в том же месте. Если вы делаете это с помощью кода во встроенном программном обеспечении, то unlink(2)
- это то, с чего вы хотите начать.
Ядра Unix знают, что inode все еще используется, и они удаляют запись каталога для файла, но они не освобождают inode (и блоки данных), пока счетчик ссылок на inode не достигнет нуля, и это не победит это может произойти, пока работает его экземпляр.
Вероятно, это не проблема вашей встроенной системы, но, как общее предостережение, не рассчитывайте на эту работу для сетевого хранилища, за исключением случаев, когда на самом сервере.