1

Я хотел бы знать, если я использую команду CP или MV в качестве пользователя root для копирования файла в новый каталог, который уже содержит этот файл и в настоящее время открыт другим пользователем, то будет ли операция выполнена успешно или она будет заблокирована как есть Уже в использовании?

Я пытался протестировать это на виртуальной машине, где root перезаписывает файл, также открытый root в другом окне терминала, и это успешно, но мне интересно, если это только потому, что это тот же пользователь.

Мои конкретные обстоятельства будут перезаписывать файл с правами суперпользователя, если кто-то на компьютере с Windows открывает его через общий ресурс SMB. Я не могу проверить это сейчас.

Если это не удастся, когда файл открыт, то что, если я установлю его так, чтобы он был доступен только для всех, чтобы принять пользователя root?

Немного больше информации:

Я работаю над простой системой для создания CSV-файлов, которая содержит все наши заказы за данный месяц, и просто добавляю в конец файла, когда приходят новые заказы. Я и пользователь root (cronjob, запускающий файлы php) будут единственными, кому нужно редактировать файлы.

Однако другие люди время от времени смотрят на них, чтобы найти конкретные заказы. В тот момент, когда я вручную редактирую файлы и не могу сохранить их, если другой пользователь открыл их, поэтому мне интересно, возникнут ли у меня те же проблемы, если они будут храниться на компьютере с Linux, где пользователь root выполняет редактирование.

1 ответ1

1

Да, cp и mv перезапишут открытые файлы. Возможно, вы можете посмотреть контроль версий с помощью чего-то вроде Git или чего-то подобного.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .