Size: a a a

2021 April 24

xy

xxxx yyyy in Accel-PPP
т.к. мы именно рестарт делаем - как сохранить имя?
источник

xy

xxxx yyyy in Accel-PPP
предыдущая копия вместо совсеми переменными убивается
источник

xy

xxxx yyyy in Accel-PPP
а новая запускается по симлинку "exe"
источник

xy

xxxx yyyy in Accel-PPP
делать статически set в "accel-pppd" неправильно, ведь кто-то может специально переименовать бинарник для теста
источник

D

Dimka88 in Accel-PPP
а есть ли смысл не несполтзовать accel-ppp вместо exe
источник

xy

xxxx yyyy in Accel-PPP
например, когда есть несколько копий accel (не обязательно одновременно запущеных), и их надо различать
источник

xy

xxxx yyyy in Accel-PPP
вообще это дурная практика
источник

xy

xxxx yyyy in Accel-PPP
правильная - сохранить имя процесса и в качестве аргумента его передать
источник

xy

xxxx yyyy in Accel-PPP
например, ввести параметр --name и запускать как exe --name "старое имя"
источник

VG

Vladislav Grishenko in Accel-PPP
линк на выполняемый образ, вне зависимости от реального имени и пути
источник

VG

Vladislav Grishenko in Accel-PPP
которые по readlink и должны быть вычитаны. если только бинарник не удален/изменен
источник

D

Dimka88 in Accel-PPP
Легко воспроизводится, accel-cmd restart
источник

VG

Vladislav Grishenko in Accel-PPP
без переустановки?
источник

D

Dimka88 in Accel-PPP
Да
источник

xy

xxxx yyyy in Accel-PPP
Вообще мне кажется, что в этой конструкции даже getpid() лишний, т.к. вместо /proc/pid/exe можно использовать /proc/self/exe
источник

xy

xxxx yyyy in Accel-PPP
оно уже не уровне proc всегда дает pid нашего процесса
источник

xy

xxxx yyyy in Accel-PPP
и вообще, скорее всего имелось ввиду не execv(exe, argv); а execv(exe_buf, argv);
источник

VG

Vladislav Grishenko in Accel-PPP
похоже на правду :)
источник

xy

xxxx yyyy in Accel-PPP
хотя это тоже неправильно, т.к. программа могла быть запущена по относительной ссылке, и ее было видно в ps:
например до реастарта:
../build/accel-pptpd
после рестарта превратится например в:
/tmp/xxx/yyy/build/accel-pptpd

и может порушить скрипты, которые будут использовать ps за наблюдением этого процесса
источник

VG

Vladislav Grishenko in Accel-PPP
там абс ссылка
источник