Вы запускаеце OpenVPN з абалонкі з файлам канфігурацыі, і тэрмінал стаіць без любога вываду. Няма банэра, няма памылкі, няма запрашэння. Інстынкт падказвае, што запуск не ўдаўся, таму вы запускаеце яшчэ адну копію, потым яшчэ адну, і на машыне застаецца некалькі паўналаджаных асобнікаў. Перад усім гэтым праверце профіль на дырэктыву, якая ўжо перанакіравала журнал у іншае месца. Цішыня — гэта ўласцівасць кансолі, а не працэса.

У цішыні ёсць два вельмі розныя тлумачэнні

Першае — працэс спакойна працуе і піша ў файл, за якім вы не назіраеце. Другое — ён адразу выйшаў з памылкай, запісанай у тым жа файле.

Абодва пакідаюць пусты тэрмінал, і іх раздзяляе адно пытанне: ці ёсць цяпер працэс і што ў файле, у які яму загадана пісаць. Адкажыце на гэта, перш чым зноў кранаць канфігурацыю. Перазапуск дзеля вываду — гэта шлях да таго, што два асобнікі пачнуць змагацца за адну прыладу тунеля і адзін порт, што спараджае памылкі, якія не маюць дачынення да зыходнай праблемы.

Знайдзіце дырэктыву, потым знайдзіце працэс.

ps -o pid,args= -C openvpn
grep -nE '^\s*(log|log-append|cd|daemon|verb)\b' /etc/openvpn/server/server.conf

Знайдзіце месца прызначэння, якое выкарыстоўвае працуючы працэс

Чытайце профіль, з якім працэс быў сапраўды запушчаны, а не той, які вы рэдагавалі. Асобнік пад кіраваннем службы звычайна загружае іншы шлях і працуе ў іншым працоўным каталогу, таму адносная назва файла развязаецца не там, дзе вы чакалі.

Яўная дырэктыва cd робіць гэтую розніцу рэзчэйшай, бо адносны шлях рухаецца разам са зменай каталога. Калі вы атрымалі гэтую канфігурацыю ў спадчыну, файл можа ляжаць там, дзе цяпер ніхто не стане шукаць.

Параўнайце час змены файла з момантам запуску. Журнал мінулага тыдня — гэта доказ пра мінулы тыдзень. Затым прачытайце апошнія радкі файла, які змяніўся, і ўспрымайце тое, што там ёсць, як паведамленне аб запуску, якое вы прапусцілі.

log супраць log-append: доказ і сціранне

log-append дадае да таго, што ўжо ёсць у файле. log адкрывае файл для запісу і ўсякае яго, таму пераключэнне паміж імі можа выдаліць запуск, які вы збіраліся прачытаць.

Калі хтосьці змяніў дырэктыву падчас адладкі, папярэдні доказ ужо знік, і памер файла будзе выглядаць падазрона малым. Гэта варта ведаць, перш чым параўноўваць два запускі і рабіць выснову, што нешта змянілася. Выдаляйце журнал наўмысна або захоўвайце яго, але ведайце, што менавіта вы зрабілі. Доказ, які вы выдалілі наўмысна, лягчэй асэнсаваць, чым доказ, страчаны выпадкова.

Ні адзін з варыянтаў не стварае адсутныя бацькоўскія каталогі, і ні адзін не дае доступу праз правы файлавай сістэмы або службовы пясочніцу. Шлях, які выглядае правільным у канфігурацыі, можа ўсё яшчэ быць незапісвальным для ўліковага запісу, ад імя якога працуе дэман, і тады дэман можа збаіць, перш чым паспее нешта паведаміць. Праверце існаванне каталога і яго ўладальніка, перш чым лічыць назву файла праблемай.

Калі службовая абгортка перахоплівае вывад

У systemd стандартны вывад і памылка ідуць у журнал, калі толькі яўная дырэктыва файла не мае перавагі, а пастаўшчыцкая абгортка можа перахапіць іх зусім у іншым месцы.

Вось чаму адзін і той жа профіль паводзіць сябе па-рознаму з абалонкі і з юніта. Асяроддзе юніта, яго працоўны каталог і стандартныя патокі адрозніваюцца ад вашай інтэрактыўнай абалонкі. Адносны шлях можа развязацца ў адным кантэксце і не трапіць нікуды ў іншым. Чытайце вызначэнне юніта, калі яны разыходзяцца, а не профіль.

Параўнайце два спосабы запуску, замест таго каб рабіць выснову, што адзін з іх зламаны. Прачытайце камандны радок юніта і яго асяроддзе, затым прачытайце журнал за той жа час. Калі абгортка перанакіроўвае вывад у свой файл, гэты файл цяпер ваш журнал, і дырэктывы OpenVPN не маюць значэння для таго, куды пайшлі паведамленні.

Павялічвайце шматслоўнасць толькі пасля таго, як зможаце яе чытаць

Павышэнне шматслоўнасці да знаходжання месца прызначэння проста стварае больш тэксту там, куды вы не глядзіце.

Калі вы ведаеце, куды трапляе вывад, умераны ўзровень паказвае, што профіль разбіраецца і злучэнне спрабуецца ўстанавіць. Двух ці трох дастаткова для праблемы запуску. Вышэйшыя ўзроўні апраўдваюць сябе, калі збой — гэта дэталь перамоваў, і яны таксама хутка павялічваюць файл.

Затым прачытайце сапраўдную памылку. Ціхі тэрмінал нічога не даказвае пра тое, ці ўзняўся тунель, і збой, запісаны ў файле, — гэта тое, што варта выправіць.

Падобныя артыкулы