На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила трёх "С"
Пожалуйста,
1. Соблюдайте правила Форума.
2. Слушайте советы Модераторов.
(например, http://forum.sources.ru/index.php?act=ST&f=7&t=80382 )
3. Сверяйтесь с учебником по Великому и Могучему
Страницы: (49) « Первая ... 38 39 [40] 41 42 ...  48 49  ( Перейти к последнему сообщению )  
> Вопросы по Linux от новичков , Сидел в Windows, раз решил стать WEB разработчиком то перешел на Linux и тут возникло много общих вопросов
    может тебе fakeroot нужен?
    потому что по описанию ты чего-то странного хочешь
      почему странного? приложение запускается с рутом так как ему надо кое-что из под рута делать, а процессы которые он запускает должны быть не из под рута, ибо он им не нужен.
        Странный кейс. Программу-процесс кто написал? Может то, что надо с-под рута сделать можно без рута, с помощьюCapabilities сделать?
        Вообще, обычно для такого действия запускают процесс, который что-то делает и умирает...
          Конкретный случай из практики.

          На сервере установлены Apache+PHP и Java+Glassfish. Apache+PHP установлены средставми дистрибутива, работают под системным пользователем apache. Glassfish установлен вручную, запускается под обычным пользователем и иногда требуется его перезапуск. Для этого была написана простенькая CGI-программа на С. (Почему не обошлись одним PHP? Лень было разбираться с тонкими настройками sudo, а открывать широкую дыру не стали. А ещё хотелось написать первую в жизни CGI-программу.)
          Скомпилированная CGI-программа принадлежит root, на неё выставлен suid-бит. То есть, даже будучи запущенной через Apache, она запускается от root.
          А основная строка кода такая (логин и имя скрипта изменены):
          system("/usr/bin/sudo -u the_user /bin/bash /home/the_user/restart_glassfish.sh > /dev/null");
          И Glassfish запускается под тем пользователем, под которым должен.
            Цитата negram @
            Программу-процесс кто написал?

            начальник :D она следит за остальными процессами и перезапускает их при необходимости, также занимается расстановкой приоритетов для процессов и доступа к диску(для чего и нужен рут). сами процессы конечный продукт того, что видит клиент, и рут им нафиг не нужен.
            Цитата kopilov @
            system("/usr/bin/sudo -u the_user /bin/bash /home/the_user/restart_glassfish.sh > /dev/null");

            во, это уже ближе к теме. тока у нас execv используется, туда можно аргументы передать, но ни -u ни USER= не канает...
              Не изучал, чем system отличается от execv, но прошу обратить внимание: -u передаётся не самой system, а sudo, которую она запускает. А уже sudo, будучи запущенной от root с нужными аргументами (пользователем и целевой командой), запускает что надо как надо. С execv так не прокатит?
                Цитата _lcf_ @
                но ни -u ни USER= не канает..
                Поясни, пожалуйста.
                Я бы делал fork(); setuid(); execv("пользовательский процесс")
                По-моему, это то, что вам требуется...
                  Снова здравствуй.
                  Почемуто когда общаешься с собеседником по скайпу не работает микрофон. Приходится переключаться на windows и там все работает - можем общаться и слышим друг друга.
                  Микрофон не работал в операционной системе Linux Mint 16 и не работает в настоящий момент в Linux Mint 17. Обновлял, апгрейдил - не работает.
                  Правда еще не пробовал удалить и поставить заново скайп.
                    dion_86, может здесь глянуть
                    https://www.google.ru/search?q=%D0%BD%D0%B5...l=ru&gws_rd=ssl
                      Цитата dion_86 @
                      Снова здравствуй.
                      Почемуто когда общаешься с собеседником по скайпу не работает микрофон. Приходится переключаться на windows и там все работает - можем общаться и слышим друг друга.
                      Микрофон не работал в операционной системе Linux Mint 16 и не работает в настоящий момент в Linux Mint 17. Обновлял, апгрейдил - не работает.
                      Правда еще не пробовал удалить и поставить заново скайп.

                      там какую то звуковую хрень надо ставить, вроде alsa
                      Сообщение отредактировано: Ghost-4ever -
                        В аргументах команд можно использовать шаблоны: например, g++ *.cpp скомпилирует все cppшники в текущей директории. Но оно не будет лезть в поддиректории. Как наиболее коротким методом передать в g++ все cppшники из всех поддиректорий?
                          ChaoCheese, изучить bash и написать скрипт.
                          http://rus-linux.net/MyLDP/BOOKS/abs-guide...t/abs-book.html
                            Цитата SergeyIT @
                            изучить make и написать Makefile.

                            Починено.
                              Цитата Идеал @
                              Samba c AD под все Linux'ы и *BSD работает.
                              Рекомендую CentOS или Debian. ПО у них не особо свежее, но работает стабильно.

                              А если в качестве сервера AD будет Windows система?
                                user posted image
                                Вот ползунок уровень записи я никак изменить не могу
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (49) « Первая ... 38 39 [40] 41 42 ...  48 49


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0524 ]   [ 14 queries used ]   [ Generated: 18.07.25, 08:37 GMT ]