@ru_python

Страница 8297 из 9768
A
07.03.2019
03:04:02
чтоб понятнее было, это как у меня открыто два окна с интерпретатором пайтона

и из окна 1, мне надо выполнить скрипт в окне 2

+ нужна возможность не просто запустить python3 | some_app

а в реальном времени все делать

Google
A
07.03.2019
03:06:35
что бы видеть во втором окне чо происходит

Egor
07.03.2019
03:07:24
Читай про stdout pts и тд

A
07.03.2019
03:08:46
читал

неа, не робит мой способ, он робит но не так как мне хотелось бы

Egor
07.03.2019
03:09:22
а у гугла спроси linux redirect stdout to another terminal

если конечно я понял о чем ты

A
07.03.2019
03:10:24
вот именно если приложуху не запускать то все работает моим способом, но когда прилржение запускаю, не работает

вру)просто не бин/баш надо было передавать а приложуху)

Марк
07.03.2019
04:23:12
Назовите хотя бы две причины, почему в 2к19 демон должен сделать chdir в корень. @bladdon @Tishka17 @Saluev

Марк
07.03.2019
04:47:01
В какой корень? О чем ты?
При демонизации программа должна сделать chroot("/")

Google
Марк
07.03.2019
04:47:27
Секунду.

Стоп. Ниче не пиши

Tishka17
07.03.2019
04:47:38
У тебя и так рут в руте

Зачем туда чрут

Марк
07.03.2019
04:48:17
Если мы откроем книги по программированию на линупсах, а так же эталонные реализации демонизации(Ха-ха), то там везде будет chroot

Везде.

Aragaer
07.03.2019
04:51:48
да

Марк
07.03.2019
04:51:58
Ой, да, chdir

Aragaer
07.03.2019
04:52:19
ну блин

совсем же другая вещь

Марк
07.03.2019
04:52:52
Сорян. По утру не проснулся еще

Тем не менее вопрос в силе.

Aragaer
07.03.2019
04:53:18
нет, ты в прошлый раз тоже это спрашивал

и я не мог тебе ответить, почему там chroot

Google
Aragaer
07.03.2019
04:53:37
но chdir это совсем другое

Марк
07.03.2019
04:54:24
Значит глюк моска

Но имел ввиду я именно chdir, да.

Tishka17
07.03.2019
04:55:24
Потому что демон запускается хз откуда

Aragaer
07.03.2019
04:56:15
ну хотя бы для того, чтобы я мог сделать так: mkdir some_dir cd some_dir some_daemon cd .. rm -rf some_dir

и сразу понятно, что не все демоны делают chdir

Марк
07.03.2019
04:57:18
ну хотя бы для того, чтобы я мог сделать так: mkdir some_dir cd some_dir some_daemon cd .. rm -rf some_dir
Если в твоем демоне нужно что-то удалить? Не совсем понял мысль

Aragaer
07.03.2019
04:57:24
например если я запускаю демона, который будет по хттп отдавать папку, в которой запущен, он не будет делать chdir

если я запустил демона, находясь в папке, которую я хочу удалить

Марк
07.03.2019
04:58:22
При указанных абсолютных путях как-то похер, не?

Aragaer
07.03.2019
04:58:27
нет

потому что процесс продолжает у себя держать working directory

Марк
07.03.2019
04:59:06
чивоооооооо

Aragaer
07.03.2019
04:59:12
а значит он не даст системе удалить каталог, в котором я находился, когда его запустил

в структуре процесса есть поле - working directory. Оно просто есть и указывает на каталог. Соответственно даже если я грохну сам каталог, система не сможет его реально удалить, потому что есть демон, который на него ссылается

Марк
07.03.2019
05:01:15
В любом процессе?

Aragaer
07.03.2019
05:01:56
в любом есть working directory

если ты посмотришь на /proc/<pid>, то найдешь там cwd - симлинку на текущий каталог

Марк
07.03.2019
05:03:53
Допустим. Верю. Это единственная причина?

Aragaer
07.03.2019
05:05:37
первое, что приходит на ум

Google
Aragaer
07.03.2019
05:06:01
ну и следовательно еще можно приплести сюда "конфиденциальность"

cd pictures/porn/hardcore/anal; start_some_daemon теперь другой пользователь системы может глянуть в /proc/<pid демона>/cwd и увидеть там интересное название каталога

но правда там с правами скорее всего означает, что либо не сможет, либо мог бы и в самом каталоге гглянуть. Но тем не менее может быть ситуация, что cwd ему доступно, а твой хоум - нет

Alexander
07.03.2019
05:09:38
если всё так критично, то надо просто запретить ходить в чужие /proc/...

Tishka17
07.03.2019
05:10:07
И вообще юзать систему без /проц, ага

Просто не нужна демону текущая директория там где он был запущен

Марк
07.03.2019
05:12:08
первое, что приходит на ум
Согласись, ты описал очень частный случай, который в большинстве кейсов не нужен.

Alexander
07.03.2019
05:12:17
И вообще юзать систему без /проц, ага
почему без /проц? Вполне можно разрешить ходить только в свои и системные (без которых жить нельзя) /proc/..

Admin
ERROR: S client not available

Tishka17
07.03.2019
05:13:33
Согласись, ты описал очень частный случай, который в большинстве кейсов не нужен.
Ну вообще, странно иметь фоновый процесс, не привязанный ни к кому и имеющий свою логику, но при этом хранящий ссылку на данные конкретного какого-то юзера

Согласись, ты описал очень частный случай, который в большинстве кейсов не нужен.
Программа в идеале должна работать вообще во всех кейсах

Если можно легко исправить один и нет причин этого не делать, исправь

Марк
07.03.2019
05:16:18
Да тема же не в том, делать или не делать. Речь о причинах и насколько они веские. А то меня как-то прилично трольнули, когда я что-то ляпнул из книги, но не смог обосновать почему это надо. А мне процитировали Пелевина "так в книжке написано". И я это запомнил

Tishka17
07.03.2019
05:17:04
Ну у процесса есть его зона ответственности. Юзерская папка явно за ней

Нарушение границ обычно приводит к чему-то плохому

Например, у тебя прога читает не /etc, а etc по относительному пути

Ты забыл сделать chdir и всё. Ты работаешь каждый раз с новой папкой

Марк
07.03.2019
05:21:10
Например, у тебя прога читает не /etc, а etc по относительному пути
Поэтому я всегда абсолютные пути прописываю, чтобыне дай боже чего

Tishka17
07.03.2019
05:22:23
Ну тем не менее

Ожидается, что демон работает одинаково независимо от места запуска

Google
Tishka17
07.03.2019
05:23:03
Отсутствие чдир потенциально на это влияет

Aragaer
07.03.2019
05:33:36
вот да

время жизни демона (как правило) ортогонально времени жизни папки, из которой он запущен

есть демоны, которые привязаны к папке - ну например http сервер, который отдает текущий каталог

но все остальные - нет

поэтому чтобы избежать сложных ситуаций вроде "демон есть, а папки уже нету" или еще что-то в этом духе - просто эти вещи расцепляются

Aragaer
07.03.2019
05:38:01
ну я про что-нибудь вроде python -m simpleHttpServer

которому ты не передаешь аргумента что отдавать, а он отдает текущий

... это из второго питона, в третьем модуль другой

Марк
07.03.2019
05:38:44
Ну это просто реализация такая. Может быть любая другая

Aragaer
07.03.2019
05:38:52
да

Shieldy
07.03.2019
05:38:56
Добро пожаловать, @dimma_42! Не забудь ознакомиться с правилами чата: https://t.me/ru_python/802295!

Aragaer
07.03.2019
05:39:20
это такая частная реализация, которая явлется примером того случая, в котором не надо делать chdir

во всех остальных случаях нет смысла не делать chdir

Vk
07.03.2019
05:51:40
ога
Блин, я не могу найти. Помоги, среди текста вида (100% чтота там другие цифры 100% в ранндомнхместах 100%) повторить н раз, найти и отдать первое число (100%) а другие скипнуть.

Делаю так ([0-9]{1,3}%) и оно мне все вертает :(

Епучие регексы =_=

Vk
07.03.2019
05:55:59
Ну у меня куча совпадений в тексте, а надо только первое

Страница 8297 из 9768