Не может заставить rc.local автоматически работать вообще

От https://github.com/zolrath/wemux:

wemux улучшает tmux для создания многопользовательского терминала, мультиплексирующего и легче и более мощный. Это позволяет пользователям разместить wemux сервер и сделать, чтобы клиенты присоединились также:

Зеркальный Режим дает клиентам (другой пользователь SSH на Вашей машине) доступ только для чтения к сессии, позволяя им видеть, что Вы работаете, или

Парный Режим позволяет клиенту и Вам работать в том же терминале (совместно использованный курсор)

Режим жулика позволяет клиенту соединяться или работать независимо в другом окне (отдельные курсоры) на той же tmux сессии.

Это показывает поддержку мультисервера, а также пользователя, перечисляющего и уведомления, когда пользователи присоединяют/отсоединяют.

Это - обертка сценария оболочки по tmux - никакая необходимая компиляция.

1
13.04.2017, 15:22
2 ответа

Проблема состоит в том что в этой строке:

echo hi > ~user/test

~user не расширяется, как Вы ожидаете. rc.local работает, но из-за неожиданного расширения это пытается записать в где-нибудь, что это, вероятно, не имеет разрешения для.

Попробуйте следующее вместо этого:

echo ~user/test > /dev/shm/test

Затем проверьте содержание /dev/shm/test. Это оба покажет это rc.local действительно работает, и что это разворачивает ~user кому.

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

0
28.01.2020, 02:06
  • 1
    Хорошо печать ~user/test в/dev/shm/test, работавший, и это распечатало корректный путь к моей домашней папке (/home/user/test), но выполнение echo hi > /home/user/test не работал. Какая-либо идея, почему это не было бы? Однако, это работало, чтобы показать мне, это работало, просто не делая то, что я ожидал, таким образом, это отвечает на вопрос, Спасибо! –  atomictom 21.04.2013, 05:38
  • 2
    Попытайтесь изменить его на echo hi > /home/user/test 2>&1 > /dev/shm/log. Затем проверьте журнал, чтобы видеть, существует ли какое-либо сообщение об ошибке. Должно быть что-то. –  bahamat 21.04.2013, 22:21
  • 3
    Это просто печатает "привет" к /dev/shm/log. Никакая ошибка насколько я могу сказать. Но файл /home/user/test не существует. –  atomictom 28.04.2013, 05:18

"Я не возражаю слышать об альтернативах (как выскочка)", подразумевает, что Вы не понимаете несколько вещей. Я не пользователь монетного двора, но по-видимому это - основанная на выскочке система. Выскочка является init демоном, и Ваша система только имеет установленный тот. Таким образом, выскочка не является альтернативой; нет никаких альтернатив - Ваша система использует выскочку. Период. Это не использует ничто больше. Однако выскочка включает обратную совместимость с sysvinit сценариями, подразумевая, что можно справиться с сервисами путем размещения ссылок в/etc/rc каталоги и использовать некоторые старые команды как service и возможно update-rc.d.

Так как Вы не делаете своим собственным подтверждением, имеют много схватывания того, как это sysvinit системные работы, я думаю, что это - пустая трата времени для Вас для изучения. Вы могли бы также изучить, как Ваш настоящий init демон работает. Выскочка довольно проста; имейте в виду, что 95% хватания, которое продолжается относительно него (и параллельные власти о systemd на мягкой фетровой шляпе получил системы) являются просто людьми, которые имеют простое схватывание sysvinit и безумны, что им, возможно, придется провести несколько часов, изучая что-то новое.

Так, я сказал бы, чтобы проверить, что емкостно-резистивные каталоги, и т.д., для ссылок стиля sysvinit, но от вида "Rc.local не выполняют" вопрос, который Вы связали, чьему решению Вы говорите отказавший, я думаю, что Вы тратите впустую свое время с этим в этой точке. Забудьте sysvinit совместимость и/etc/rc и init.d каталоги.

Новомодные процессы .conf файлы в /etc/init (примечание: не init.d). Так, если у Вас есть некоторый сценарий, Вы хотите выполненный при начальной загрузке, просто добавляете .conf файл к/etc/init. Это не должен быть исполняемый файл, но это должно принадлежать корню.

author "You"

start on started local-filesystems

script
    /etc/rc.local # but don't really be this lazy, see below
end script

Для предотвращения будущего путают и далее sysvinit интриги, я рекомендую, чтобы Вы изменили имя/etc/rc.local сценария к чему-то еще, или еще лучше, просто переместили то, что находится в нем в .conf файл (все между script и end script теги обрабатываются оболочкой).

Категорическая ссылка для выскочки является, вероятно, новомодной поваренной книгой. Как я сказал, это - улучшение, пользовательское мудрое дружелюбие, от sysvinit, но к сожалению существует все еще недостаток достойного материала об этом онлайн и большого количества запутанных и неполных вещей. Но запускать скрипт при начальной загрузке так же просто, как просто описано.

Если .conf файл называют "мой-localboot.conf", можно протестировать сервис с

initctl start my-localboot
0
28.01.2020, 02:06
  • 1
    О, на самом деле я уже знал о различии Upstart/sysvinit и на самом деле просмотрел выскочку 'compatability' сценарии для наблюдения, где называли sysvinit сценарии (по-видимому, я просто сформулировал то неправильное немного). Честно, если бы у меня был реальный сервис, я хотел запуститься, я определенно использовал бы Выскочку... Я только что запустил с rc.local (для чего-то, что я позже понял, не принадлежал там), и затем когда я не мог добраться, он для работы задался вопросом, почему и затем он прослушивал меня, все больше... до сих пор я просто хочу понять, почему это, кажется, не работает. –  atomictom 13.04.2013, 13:57
  • 2
    Уверенный - я понимаю требование понять все. Но моя точка - то, что в данный момент, Вы тратите впустую свое время, узнавая о sysvinit. Это направляется в полную амортизацию. Таким образом, если существует проблема, не продолжайте загонять голову против той стены - разбиты следующим поколением инструментов вместо этого, lol. –  goldilocks 13.04.2013, 14:02
  • 3
    Ха-ха, да, я главным образом шел дальше, но тот зуд состоит в том, чтобы все еще там знать то, что пошло не так, как надо (и возможно изучите что-то новое, о котором я не знал). Я на самом деле не знал большую часть ничего о Linux месяц назад... Так или иначе, спасибо за информацию (особенно Новомодная поваренная книга). Я буду ожидать, чтобы видеть, есть ли у кого-либо еще ответ для того, почему он не работает, прежде чем я выберу ответ, но как только у меня есть 15 представителей, я буду upvote Вы, так или иначе.; P –  atomictom 13.04.2013, 14:08

Теги

Похожие вопросы