АРМ: nginx в качестве ЛБ Apache в качестве бэкэнда

Я занимаюсь разработкой нового веб-платформу для моего бизнеса на платформе AWS, текущая конфигурация использует nginx+ в качестве балансировщика нагрузки и некоторые Апачи случаях в качестве бэкэнда.

С помощью сервиса автоматического масштабирования я могу использовать функции динамического конфигурирования nginx и+, так что каждый раз новый веб-сервер активации конфигурации nginx является автоматическое обновление и новый модуль закреплен на кронштейне.

Проблема заключается в следующем: если случайно, то nginx падает или перезапускается балансировщик потеряло свою динамическую конфигурацию и балансировки не более маршруте соединения с веб-сервером. Я думал разобраться с cron на бэкенде, который сделал проверку на состояние балансировки, но это не решение очень чистые и функциональные.

Я ищу решение, как автомат, который может гарантировать механизм балансировки с наименее возможной работы для оператора. Любая идея?

+335
Keey Boored 30 окт. 2014 г., 23:01:50
35 ответов

Вам не нужны sed для этого, если вы используете bash.

ы="орг.гном.Терминал.Наследие.Хоткеев"
г=${ы//.//}/

Читать параметра расширения раздела Баш страницу (${параметр/шаблон/строка}), он также имеет много других полезных вещей.

С помощью sed, вы также можете указать несколько выражений, иногда это более читабельным.

ы="орг.гном.Терминал.Наследие.Хоткеев"
г=$(СЭД -е 'г,.,/,' -э-х,$,/,' <<<$с)

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

+934
Bosma 03 февр. '09 в 4:24

Мы можем также проверить в файле/etc/пароль если есть доступ.

если [ `в awk -F ' и:' '/^'$я':/ {печати $2}' /и т. д./тень` ] ; тогда 
 Эхо "пользователь пароль" ; 
еще 
 Эхо "нет пароля";
интернет
+913
Nick Shepard 21 апр. 2012 г., 17:32:53
Другие ответы

Связанные вопросы


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

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

Журналы аудита следуют аналогичные доводы. Давайте посмотрим на твое:

тип=PROCTITLE МСГ=аудита(03/27/2015 02:58:34.764:439) : proctitle=/Бен/ш

Не слишком ошеломляющей. Это дает вам временную метку и значение исполняемого файла proctitle , который обычно имя процесса. Не совсем уверен, почему logind , что как proctitle, хотя.

тип=АВК МСГ=аудита(03/27/2015 02:58:34.764:439) : АВК: отказано { функцией getattr } для PID=3861 комми=помощью systemd-logind имя=КВМ Дев="devtmpfs" Ино=11755 scontext=system_u:system_r:system_dbusd_t:С0-С0:С0.tcontext c1023=system_u:object_r:kvm_device_t:С0 tclass=chr_file разрешительной=1

Это фактическое сообщение об ошибке SELinux и то, что вы должны на самом деле волнует большинство. Данный тип=АВК - это то, что дает его прочь. АВК стоит для векторного кэша , который является SELinux, для этого компонента.

Важные части в обратите внимание, что в отказано в строфе (в данном случае функцией getattr), который говорит вам, что программа делает специально для того, чтобы быть отказано. После этого мы посмотрим на контекст источника (ака scontext), которая даст вам ощущение того, что общие категории сбойного компонента был запущен. В этом случае весь контекст system_u:system_r:system_dbusd_t , которая сокращается только часть, которая по существу значимым (99% времени) просто system_dbusd_t. Делает то же самое целевого контекста мы получаем kvm_device_t. У комми и пид поля важны и очевидны. Исключение произошло с помощью systemd-logind , который был запущен с ПИД 3861.

Итак, собираем все вместе мы помощью systemd-logind работает как system_dbusd_t и пытаются сделать какой-то функцией getattr на файл с контексте kvm_device_t.

Зная, что это означает, что вы должны сделать это до админа. Для SELinux часть все это знает, что такая вещь не имеет своей политики, так это дает вам детали, так что вы можете сделать свой собственный вызов.

тип=вызов МСГ=аудита(03/27/2015 02:58:34.764:439) : в Arch=x86_64 с системных вызовов=getxattr успех=выхода нет=-61(нет данных) А0=0x1fef030 А1=А2 0x7fc0dbf2ef9f=0x7fff6aaa1da0 А3=0x84 элементы=0 идентификатор=1 пид=3861 auid=отключено Уид=корень гид=корень euid-ом=корень битом SUID=корень fsuid=корень эгид=корень sgid бит=корень fsgid=корень телетайп=(нет) =отключено комми=помощью systemd-logind СЭС ехе=в/lib/systemd в/помощью systemd-logind тема=system_u:system_r:system_dbusd_t:С0-С0:С0.c1023 ключ=(нуль)

Это немного последовательности в плане того, как вы представили его, но я положил его после так, что сделать его легче понять, как ты должен прочитать его. Данный тип=АВК - это важная часть, но это, как правило, регистрирует фактическое системный вызов это не удалось, так что вы можете получить более подробную информацию.

Например, имя программы, мы знаем, что с помощью systemd-logind , но если бы он был более неоднозначным ехе=в/lib/systemd в/помощью systemd-logind может позволить вам определить, какие программы, которая вызвала ошибку. Такие вещи, как auidloginuid процесса) или жидкости может также быть полезно знать, если вы не уверены, почему исполняемый файл в вопрос был выгнали.

Надеюсь, что помогает. Если у вас есть какие-либо вопросы, я буду обновлять мой ответ.


Редактировать: еще одна вещь, на ваш последний пункт. Обычно вы можете посмотреть на политику утилиты audit2allow создает и немного доберут то, что изменения, которые он прилагает. Это на самом деле не применить изменения, пока вы не вставите модуль политики. Так что вы можете создать его и просто посмотреть его в текстовом редакторе, чтобы увидеть, если это то, что вы хотите, чтобы произошло. Может быть быстрее, чем отслеживание детали, читая аудит.журнал напрямую.

+888
Hiten Chowdhary 6 апр. 2010 г., 22:17:18

У меня есть приложение, которое использует stdin и stdout. Я хочу это приложение, чтобы начать как можно скорее после того, как все фоновые демоны запущены.

Я использую OpenWRT на встраиваемой системы, используя SCP и последовательного общения с ним.

Я создал инит.D скрипт, который просто запускает приложение, с начала=99.

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

Есть ли правильный способ, чтобы запустить приложение, которое использует stdin и stdout, так что он начнет исправляться после ОС окончания загрузки?

+848
Saxon Violence 9 авг. 2012 г., 22:37:33

По фигу, проблема решена. Все, что я должен был сделать Ctrl+С на сам файл, и вставьте его в электронную почту.

Глупый вопрос

+826
Akshay Nandwana 20 янв. 2014 г., 01:40:28

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

nohup и mycommand &
выход

Любой вывод команды в файл nohup и.из текущего каталога.

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

экран
# внутри сессии экране 
спать 60; mycommand
# нажмите Ctrl+D для отсоединения от сессии
# теперь вернемся в оригинальной оболочке
выход

Потом:

экран -РД
# внутри сессии экране, вы можете увидеть, как ваша команда делает
...
выход

Другая возможность состоит в том, чтобы запланировать работу на потом. В ПО команда позволяет планировать работу на определенное время (это единоразовый кулон хрон для регулярных задач). Если команда выдает результат, он будет отправлен вам по почте (если у вас есть локальная почта работает).

Эхо 'mycommand' | в 23:05
+822
Dmitry Sleepington 6 июн. 2017 г., 15:19:53

Тип файловой системы не то, что вы можете легко получить доступ в ОС-независимый способ. Имена типа файловой системы зависит от операционной системы, поэтому не было никакого стимула, чтобы установить стандартный метод.

На встраиваемых Linux-систем, стат -ф-т%. показывает тип файловой системы из текущего каталога. OSX на стат команды не имели ничего подобного.

Поскольку все вы хотите знать, является ли тип файловой системы в конечный список, под Linux, вы можете ограничить набор путей к печати и набор типов файловой системы. Вы получите сообщение об ошибке (“ДФ: нет файловых систем обрабатывается”), если тип файловой системы из текущего каталога нет в списке.

если ДФ -Т sshfs -Т, НФ -Т Киф . >/dev/нуль 2>/dev/нуль; тогда ...

Тот же синтаксис может или не может работать на OSX; если это не так, попробуйте ДФ -Т sshfs,НФС протоколу CIFS ..

+819
ygl 21 янв. 2020 г., 23:13:01

Я хочу выяснить, что "нормальным" пользователям доступны в системе. Нормальные, я имею в виду тех, которые были созданы вручную, а не тем, как демон или ГСД.

+794
ldiqual 22 окт. 2013 г., 00:21:19

Я использую 3 дисков (массив RAID5) и хочу добавить резервный диск (Дев/СДД). В системе используется процессор Intel первого (на рейд), а может быть признана и команду mdadm CentOS7. Но я пробовал много методов, и не может добавить резервный диск в качестве "горячего резерва".

[корень@ehost ~]# команды mdadm --деталь /Дев/МД/imsm0
/разработки/МД/imsm0:
 Версия : ИПСК
 Уровень RAID : контейнер
Всего Устройств : 3
Работающих Устройств : 3
 Идентификатор UUID : 750b9700:31df2732:350d713c:10b17437
Массивы-члены : /Дев/МД/Том1
Количество Крупных Мелких RaidDevice
 0 8 0 - /Дев/СДА
 1 8 16 - /Дэв/СДБ
 2 8 32 - /Дэв/КСД

[корень@ehost ~]# команды mdadm --деталь на /dev/md126
в /dev/md126:
 Контейнер в /dev/МД/imsm0, участник 0
 Уровень RAID : RAID массив 5
 Размер массива : 1953519616 (1863.02 гиб 2000.40 ГБ)
 Используемый размер Дэв : 976759936 (931.51 Гб 1000.20 ГБ)
 Устройства RAID : 3
 Всего Устройств : 3
 Состояние : чистая
Активных Устройств : 3
Работающих Устройств : 3
Неисправных Устройств : 0
 Запасные Устройств : 0

 Расположение : лево-асимметричная
 Размер блока : 128К
 Идентификатор UUID : d984583f:721b097a:b725e6c2:55b874f4
Количество Основных Незначительные RaidDevice 
 2 8 0 0 активный синхронизации /Дев/СДА
 1 8 16 1 активный синхронизации устройство /dev/СКБ
 0 8 32 2 синхронизации устройства /dev/sdc в

[корень@ehost ~]# команды mdadm --добавить файл /dev/md126 /Дев/СДД
адреса: нельзя добавить диски к 'член' массив, выполнить эту операцию на родительский контейнер

[корень@ehost ~]# команды mdadm --добавить файл /dev/МД/imsm0 /Дев/СДД
адреса: добавил в /dev/СДД

[корень@ehost ~]# команды mdadm --деталь /Дев/МД/imsm0
/разработки/МД/imsm0:
 Версия : ИПСК
 Уровень RAID : контейнер
 Всего Устройств : 4
Работа Устройства : 4
 Идентификатор UUID : 750b9700:31df2732:350d713c:10b17437
 Массивы-члены : /Дев/МД/Том1
Количество Крупных Мелких RaidDevice

 0 8 0 - /Дев/СДА
 1 8 16 - /Дэв/СДБ
 2 8 32 - /Дэв/КСД
 3 8 48 - /Дэв/СДД

[корень@ehost ~]# команды mdadm --деталь на /dev/md126
в /dev/md126:
 Контейнер в /dev/МД/imsm0, участник 0
 Уровень RAID : RAID массив 5
 Размер массива : 1953519616 (1863.02 гиб 2000.40 ГБ)
 Используемый размер Дэв : 976759936 (931.51 Гб 1000.20 ГБ)
 Устройства RAID : 3
 Всего Устройств : 3

 Состояние : чистая
 Активных Устройств : 3
Работающих Устройств : 3
Неисправных Устройств : 0
Запасные Устройств : 0
 Расположение : лево-асимметричная
 Размер блока : 128К
 Идентификатор UUID : d984583f:721b097a:b725e6c2:55b874f4
Количество Основных Незначительные RaidDevice 
 2 8 0 0 активный синхронизации /Дев/СДА
 1 8 16 1 активный синхронизации устройство /dev/СКБ
 0 8 32 2 синхронизации устройства /dev/sdc в
[корень@ehost ~]#

Пожалуйста, помогите, спасибо ! Эдвин

+784
Valkata Elgetaitis 5 мая 2015 г., 18:41:21

Если вы используете Magento или используйте командную строку, чтобы изменения в /var/ к 777, возможно, вы случайно изменили все разрешения для этого государства (777).

Просто подключите на Virtuozzo / с cPanel / WHM и изменить его обратно на 700 или владельцем (весь перечень) и unchecklist другие

+757
Joel Carlin 25 апр. 2011 г., 11:17:59

Мой скрипт выглядит так:

#!/бин/Баш
грэп -Р --цвет=всегда [email protected] . | nolong

Файл сохраняется в /usr/Бен/команда findstr

Все нормально, когда я запускаю это:

команда findstr привет

Но когда я запускаю это:

команда findstr Привет мир

Он ищет только для Здравствуйте.

Вопрос: Как я могу поставить [email protected] в кавычки, так что он бы понял это единственный параметр?

+729
trisct 12 окт. 2013 г., 06:17:41

Я пишу отчет для присвоения университету о грязных уязвимость корову, которая была обнаружена в октябре прошлого года (присвоен номер CVE-2016-5195).

Я понять большинство того, как приступ проходит.

Однако я не нашел ничего, что объясняет, что на самом деле происходит в ядре, т. е. там, где условия конкуренции или в целом, что позволяет писать на только для чтения, отображения памяти.

Единственный, казалось бы, необходимую информацию я нашел-это этот анализ, но он только неопределенно прокомментировал и я не могу экстраполировать информацию из него.

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

Есть ли эксперт ядра, который способен это объяснить?

+693
Boo boo 2 мая 2019 г., 11:53:59

Глядя на этот вопрос, я заметил, что у awk не может читать пользователь ввод, если файл передается на стандартный ввод, но это вести себя как положено, если читать входные данные из файла, учитывая как команда параметр линии.

Например, если у вас следующие начинают заблокировать в на awk скрипт:

Начать {
 е "ввод: "
 Гэтлину ВАР < "-"
}

Если вы запустите его, как на awk -Ф ./сценарий.на awk file.txtэто спроси подскажут для пользовательского ввода, а затем продолжить обработку file.txt. Однако если вы бежите как кошка file.txt | на awk -Ф ./сценарий.на awk, я полагаю, что на awk будет интерпретировать то, что он становится из трубы в качестве входных данных пользователя (так Гэтлину будет заполнить ВАР с первой строчки file.txt).

Есть ли способ сделать на awk вести себя, как он читает из файла, но используется в трубе?

Я могу использовать временный файл, конечно, но это далеко не элегантный.

+686
Jim Geldermann 24 сент. 2018 г., 08:33:32

.htaccess в файле содержится ниже выписки, чтобы блокировать определенные файлы и папки.

RewriteCond %{REQUEST_URI} РГ-логин.на PHP|WP-администратора
RewriteCond %{REMOTE_ADDR} !^123.456.789.
RewriteRule . - С [R=404,L]В

Мне нужно заменить 123.456.789 поле с мой текущий IP, который может быть получен от:

Вт -ч | у awk '{печати 3$}' | Глава -1

Как я могу заменить IP в поле .htaccess в файл мой текущий IP выхватил из ж И сохраните его снова .htaccess в файл?

+603
zedoude 5 дек. 2019 г., 17:44:01

То решение , которое может работать для вашего случая,

найти . -тип D '!' -старпома тест -э "{}/utilities.py" ';' -печать

Тестирование

  1. Я создал 4 каталоги именем dir1 и, Директория dir2, dir3и реж с пробелами. Я хотел проверить, если это обрабатывает пробелы одинаково хорошо, поэтому я создал директорию с пробелами в имени.
  2. Я создал файлы файл1, файл2, файл file3 и файл file4 в директория dir2 и dir3.
  3. В dir1 ия создал файл1, файл2, файл file3.
  4. В Реж с пробелами, я создал файл с названием файл с пробелами.
  5. Теперь, я исполняю свой найти команду,

    найти . -тип D '!' -старпома тест -э "{}/файл с пробелами" ';' -печать
    
  6. На выходе я получаю это,

    .
    ./из dir1
    ./директория dir2
    ./dir3
    
  7. Как и ожидалось, с каталога dir с пробелы содержит файл по имени файла с пробелами он не указан в выходных данных. Если Я изменить найти команду Файл file4 в нем, на выходе я получаю есть

    .
    ./реж с пробелами
    ./из dir1
    

Редактировать

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

найти . -тип F -не -название utilities.py' -каталог метод exec {} \; | рода -у

Как Жиль предлагает в своем комментарии,

Для .ГИТ, это было бы более полезно, чтобы пропустить каталоги, которые имеют родителей, содержащий .ГИТ. Вы можете сделать это путем добавления-чернослив в правильное место:

найти . -тип D -exec для тест -э "{}/.ГИТ" ';' -чернослив -о-принт
+583
Marco Paulo Ollivier 1 мар. 2015 г., 23:57:21

Нет.

Как только вы выбираете -з именем он сохраняет необработанные данные пакеты, как они приходят по ссылке. Там буквально не более подробно, его можно сохранить в файл. -ВВВ актуален только тогда, когда вы показываете его для человека комментарий... и почти во всех случаях, когда вы хотите, чтобы люди читать выходной, я рекомендую вам использовать помощью Wireshark.

+583
lucky43113 28 янв. 2010 г., 08:39:59

Хотелось бы карту для Windows/мета ключ в vimperatorrc & vimrc, включая мета-клавиш на вкладке движения:

"перейти к предыдущей вкладке 
nnoremap <м-ч> ГТ

"перейти к следующей вкладке
nnoremap <м-д> ГТ

К сожалению, ни это виджет, ни ВИМ принимает эти привязки. Хотя они не жалуются, привязки, просто не работают.

По данным этой статьи: Как получить карту клавиш в Vim, <м...> должно карте мета (окна) ключ?!

Любые идеи?

Настройки системы: Я использую ВИМ и это виджет на Manjaro (Арч Линукс вилка) в КДЕ. Таким образом, ВИМ работает в Yakuake (в KDE терминал "менеджер"/"мультиплексор") и это виджет в браузере Firefox 48.

Заметка на полях: ВИМ показывает такое же поведение при запуске в обычном терминале, вне Yakuake.

+580
Satyabrata Tripathy 8 мая 2011 г., 01:10:08

Не хочу покидать этот висит. Мне удалось решить проблему путем выбора [х] копия процессора конфигурации в параметрах Вирт-менеджера. Я не уверен, почему это работает против указания архитектуры процессора.

+575
stephen welbourne 15 сент. 2019 г., 20:41:35

С помощью virsh мигрировать как уже предлагалось, или воспользоваться rsync и жиденьких файлы поддержки, от человека по rsync:

-С --негусто Попробуйте обрабатывать разреженные файлы настолько эффективно они занимают меньше места на место назначения.

Попробуйте использовать rsync -дх, добавить если вы хотите видеть прогресс и скорость

+569
DallonF 30 окт. 2015 г., 19:27:53

Создание zip-файл в скрипте, когда я запускаю скрипт и перейти в целевую папку и распакуйте zip-файл я создал в скрипт, он создает папку и распакуйте файл в эту директорию.

Ниже представлен код в скрипте.

по имени-кошачий $Filenm`
делать
 Эхо $имени
 fnme=$(Эхо ${имени}|на awk -е\/ '{печати $8}')
 Эхо $fnme>>$scriptLog
tofilename="${date_new}_${fnme}"
 зип-Р $tofilename.zip $fileDir/$fnme
 РМ $fileDir/$fnme
 МВ $tofilename.zip $todir

Когда я иду в $todir после выполнения скрипта и распакуйте $tofilename.zipэто создание $fileDir в $todir и распаковки файла есть, так что в $todir мне надо идти в 5 вложенных каталогов, чтобы увидеть мой текстовый файл.

Я хочу, чтобы текстовый файл в zip-файл необходимо распаковать в $todir, но не так, как его происходит.

Спасибо заранее.

+561
diknoroyda 13 июн. 2016 г., 16:33:31

Вот пример на bash (вы должны быть в состоянии сделать что-то подобное практически на любом языке):

$ кот test.sh
#!/бин/Баш

Реж=0
Блок="
пока чтение строки
делать
 если [ $Дир -экв 0 ] ; тогда
 если [[ $(Эхо $строки | грэп -я '<каталог') ]] ; затем
Реж=1
Блок="$строка"
интернет
еще
Блок="$блок\Н$линия"
 если [[ $(Эхо $строки | грэп -я '</Директории') ]] ; затем
 если [[ $(Эхо $блок | грэп -я варианты.*+ExecCGI') ]] ; затем
 Эхе -е $блок
интернет
Реж=0
Блок=""
интернет
интернет
сделано

В основном, мы просто спасаем блок, как мы идем вместе и тогда применение grep к ней, чтобы увидеть, если он есть в нашей узора в нем.

Это очень просто, и, вероятно, будет иметь проблемы с некоторых крайних случаях (если ваш конфигурационный файл имеет \ в нем может смутить Эхо -е например), но можно расширить основную идею для борьбы с ними.

Пример использования:

тест $ Кот.конф
<Каталог /var/www в/site1 в/htdocs в>
 Варианты +ExecCGI
1
2
</Каталог>
3
4
5
<Каталог /var/www в/Сайт 1/акция>
 Варианты -ExecCGI
6
7
</Каталог>
<Каталог /var/www в/site1 в/htdocs в>
 Варианты -На Любой +ExecCGI
8
9
</Каталог>

тест $ Кот.конф | Баш test.sh
<Каталог /var/www в/site1 в/htdocs в>
Варианты +ExecCGI
1
2
</Каталог>
<Каталог /var/www в/site1 в/htdocs в>
Варианты -На Любой +ExecCGI
8
9
</Каталог>
+464
King Ryan 4 сент. 2015 г., 22:03:25

Во время загрузки есть определенные инструкции выполнить что-то вроде х86/мм , как показано на рисунке. Мне было интересно, если кто-то знал, что они были и это зависит от файловой системы обучения?enter image description here

+435
DeyaEldeen 20 дек. 2018 г., 04:46:26

Я начал с установки Debian с CD-дисков это прошло гладко и система работает.

Я потом закрыли и начали снова, гном не грузил вообще, поэтому я использовал команды следующим образом, чтобы получить гнома обратно:

$ судо apt-получить установку gdm3 гном-ядро
$ судо apt-получить установку X-окно-система-ядро

как только это было завершено, я попробовал оба:

$ судо /етц/инит.д/gdm3 начать

и

$ команды StartX

Я не могу вспомнить, кто работал для меня, но на данный момент, GNOME запустится, я входа в систему, но после входа в систему:

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

Я пробовал изменить тему значков, а также изменение GNOME версия, которая загружается при входе в систему, но ни один из них не решить эту проблему, я также попробовал переустановить пакеты:

$ судо apt-получить установку --переустановить гном-ядро X-окно-система-ядро gdm3

но никто из них не работал.

Если кто может пролить свет на рабочие гнома, что бы большое спасибо!

+274
Paige Marie Ponder 23 июл. 2017 г., 12:15:20

После загрузки ОС запустить в терминале

  • подключение к интернету

  • откройте новый терминал и введите следующие команды (нажимаем Enter после каждой строки):

    судо дополнения кв-репозиторий PPA:yannubuntu/загрузки-ремонт
    судо apt-получить обновление
    судо apt-получить установку -й загрузки-ремонт && загрузки-ремонт
    
+262
MiNdFrEaK 1 сент. 2012 г., 20:48:19

Я видел посты, похожие на этот, где "команда не найдена" ошибка из-за пробела ошибки в операторе if.

Я не могу найти свои пробелы и ошибки. Где они? Что еще может быть?

В принципе, если я запускаю test.sh (ниже) без флага, терминал начинает орать грубым матом вроде "команда не найдена". Если я использую флаг, он играет хорошо. Я не хочу, чтобы подкупить Баш с флагами все время. Это не хорошо для долгосрочного здоровья.

Это test.sh:

многословный='ложные'
aflag="
bflag="
sflag="
файлы="
пока absf команде getopts ': флаг В'; делать
 дело "${флаг}" в
 а) aflag='истинный';;
 б) благ='истинный' ;;
 ы) sflag='истинный' ;;
 F) файлы="${OPTARG}" ;;
 в) многословный='истинный';;
 *) ошибка "неожиданный параметр ${флаг}" ;;
эсок
сделано

# ======= Ниже это где ошибка выкинут
если "$sflag" ;
тогда
 Эхо "хорошо" ;
интернет
# ======= ошибка завершения кидать код 

Эхо "конец" # печатает просто отлично

Я запустите указанный выше сценарий с

$ Баш test.sh

и тогда я вернусь

test.sh: строка 17: : команда не найдена
конец

Может кто-нибудь дать мне советы о том, как разговаривать баш на рационально ведешь?

Я использую Мак (я не знаю, если это имеет значение).

+226
duyetpt 26 дек. 2018 г., 03:22:39

Вы можете использовать читать для разделения линий, основанные на пробел (который выглядит как файл используется). Что-то вроде этого:

а читать набор год; сделать
 DoStuffWith "набор $" "$год"
сделано <test.txt

Другие заметки:

  • Обратите внимание, что я использовал в примере выше строчными буквами имен переменных. Есть куча всего-кепки имена со специальным значением, и лучший способ избежать конфликтов с ними, чтобы придерживаться нижней или смешанные переменные (если вы хотите специальный смысл).

  • Не перебирать выход ЛС, просто использовать для Я В *; сделать. И дважды цитировать ссылка на , чтобы избежать странно разбора в некоторых случаях.

    Разве вы не должны делать этого, СЭД может перебрать все файлы сама по себе, если вы используете СЕПГ -я "" 'все' *.

  • В СЭД команду, похоже, вы пытаетесь использовать переменную подстановки и двойные кавычки внутри одинарных-в кавычках, и что не работает. Если вы не хотите, чтобы двойные кавычки в буквальном смысле частью поиска/замены строк, используйте этот код:

    СЕПГ -я "" "ы/$установить/$г/г" *
    

    Если вы хотите, буквальном двойные кавычки в строки поиска и замены, избежать их:

    СЕПГ -я "" "ы/\"$набор\"/\"$год\"/г" *
    
  • Похоже, что вы планируете, чтобы петля через файл и в каждой строке перебирать каждый файл заменять, что одну строку. Почему бы не иметь один запуск сделать всех замен? То есть, а не работает СЭД с командой с/100/2007/г, а затем снова с с/ФФФ/1993/г, а затем снова... почему бы не запустить его только один раз с командой с/100/2007/г; с/ФФФ/1993/г; с/7E7/1994/г; ...?

    Вам нужно построить СЭД команду в цикле, что-то вроде этого:

    sedCommand=""
    а читать набор год; сделать
     sedCommand+="с/$установить/$г/г; "
    сделано <test.txt
    
    СЕПГ -я "" "$sedCommand" *
    
  • Наконец, глобальных замен, как это меня беспокоит. Вы уверены, что "100" не происходит в любом файле, за исключением тех случаев, когда оно должно быть заменено на "2007"? Это включает в себя файл test.txt ?

    У вас есть копии всех этих файлов? Вы действительно должны, прежде чем включать что-то вроде этого потерять то, чего ты не хочешь потерять.

+142
Supuni Punsara Gunasekara 16 дек. 2011 г., 20:59:39

Вы должны быть в состоянии войти как корень с пароль. Однако, довольно часто не позволяют корневой войти в систему графически, так это может быть то, что вам мешает.

Используйте сочетание клавиш CtrlАльтФ2 при входе на экран, чтобы бросить в tty и войдите туда. Это работает?

Если позволяет войти, создать обычного пользователя с помощью adduser , а затем нажмите клавиши Ctrlклавишу F8 (это может быть клавиша F7), чтобы вернуться к экрану входа в систему и попытке войти под именем этого пользователя.


Если это все еще не работает, вы можете загрузиться в Live-сессии и создать пользователя с помощью окружения. Основные процедуры:

  1. Загрузиться в Debian (или любой другой) живые сессии.

  2. Монтировать / раздел установленной системы во временной папке (я использую Дев/СДА здесь, изменения, что при правильном устройстве):

    судо команды mkdir ФОО
    судо смонтировать /dev/sda1, поскольку ФОО/
    
  3. сделать chroot в примонтированную систему, это позволит создать "поддельные" среду, которая считает установленной системы.

    команду sudo chroot для фу
    
  4. На данный момент, Вы должны быть в состоянии создать нового пользователя

    судо команду adduser имя_пользователя
    
  5. Перезагрузки в установленную систему и попробуйте войти в систему с только что созданного пользователя.

+102
troto 13 июн. 2011 г., 17:52:05

Использовать rsyslogd с relp протокола.

На сервере, прописать в /etc/пакет.conf здесь:

$ModLoad imrelp
$InputRELPServerRun 2514

И на стороне клиента:

$ModLoad omrelp
...
*.* :omrelp:сервер.адрес:2514

Вы должны установить плагин relp:

apt-получить установить rsyslog-relp

Лучше поставить сервер.адрес в /etc/hosts, таким образом, что вам не придется полагаться на работающий DNS.

+73
Barbara Bishop 8 дек. 2016 г., 03:27:03

попробовать

во время чтения Ф
делать
 командой bzip2 -ДК "$Ф" | 
 на awk -ф '\т' 'начать{ОФС=ФС} 7 $> 50' > "$(и basename "$Ф" .bz2 файл)"
сделано < list-of-file.txt
  1. awk будет писать результат от File_1.ТСВ.bz2 в File_1.TSV, а так одна с File_2, ... File_960.
  2. вы даете список файл в list-of-file.txt
  3. > $(и basename $Ф .расширением bz2) создаст результате в местных реж
+68
Jason Owen 31 июл. 2012 г., 01:32:11

Попробовать эту линию

компания sed -э "ы/^\"'/\'/г" -е "/'\"$/\'/г" файл

Вместо того, чтобы заключив СЕПГ выражение между ' ', у него между " " так что вы можете избежать С \ К " "

например

@tachomi:~$ Echo "а\"'это текст'\""
"'это текст'"
@tachomi:~$ Echo "а\"'это текст'\"" | редактор sed -э "ы/^\"'/\'/г" -е "/'\"$/\'/г" 
'это текст'

е.г.2

@tachomi:~$ кот file.txt
"'это текст'"
"этот текст"
'other_text'
@tachomi:~$ редактор sed -э "ы/^\"'/\'/г" -е "/'\"$/\'/г" file.txt
'это текст'
"этот текст"
'other_text'
+57
Aaron Quitta 19 мар. 2011 г., 15:45:46

Я решил эту проблему с помощью тип раковины как file_roll. Я также должен был определить IP-адрес второй виртуальной машины, чтобы двое могли подключиться.

Я нашел пошаговые инструкции о том, как сделать это по этой ссылке: http://thisandthat.io/blog/flume-part3/

Кроме того, вам не нужно писать никаких Java, чтобы сделать это. Однако, как и лоток, убедитесь, что ваша переменной JAVA_HOME объявлен правильно в файле flume-env.sh . Все остальные части обрабатываются .файл conf создал (как описано в ссылке выше).

+54
nbhuiyan 28 июл. 2014 г., 03:57:49

Я этой системой врезанной ARM9 SAM9G25, запущенного ядра Linux 2.6.39 и с busybox. Я выложил изображения (загрузчик, и Linux+пакет initramfs) на SD, так что в конце концов система загрузки с него - это работает без проблем до сих пор.

Теперь, когда я пытаюсь получить доступ к SD-карты в Linux или busybox, то проблема начинается. Это не было никакой записи в

Общ /Дев

о mmcblk0p1, mmcblk0, СДБ или что-нибудь еще связанные. Но с

кошка /proc/устройства

в последней строке есть

179 ГМК

Я думаю, 179-это основной номер, поэтому я попытался добавить его в device_table, так что сборочного окружения создает mmcblk0p1 для следующего изображения

в /dev/mmcblk0p1 б 755 0 0 179 0 - - -

(это соответственно: 'название', 'тип' 'режим' 'Уид' 'гид' 'майор' 'несовершеннолетний' 'старт' 'Инк' 'количество')

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

Кто-нибудь знает почему я не могу даже видеть SD-карты/устройства?

+45
Sabreur 24 сент. 2013 г., 11:37:44

Вы можете легко сделать с помощью всего команде uname:

Команде uname ОС=``
 если [ "$ОС" == "Линукс" ];затем
дистро="Линукс"
Элиф[ "$ОС" == "управления" ];затем
дистро="Солярис"
еще
 Эхо "критически - неизвестно ОС"
 выход 2
+41
Njdart 9 окт. 2019 г., 23:00:01

Решение 1: с ПК в локальной сети, создать обратный SSH-туннель с чем-то вроде замазки , подключив к Linux-хост в Сети В. локальной порта 3389, удаленный хост 127.0.0.1 и порт является произвольным (позволяет использовать 6000 в качестве примера). Тогда с вашего ПК в сети B, использовать Putty для подключения к одному узлу Linux, и сделать прямой туннель. Локальный порт должен быть настроен на нечто иное, чем 3389 (как Microsoft RDP клиент не разрешать подключения к localhost, но он будет разрешать подключения к localhost на произвольный порт). Это позволяет использовать один и тот же номер порта 6000, удаленный IP должен быть 127.0.0.1 и удаленный порт 6000. Вы тогда укажите RDP клиент на 127.0.0.1:6000 .

Фактически вы подключитесь к порту 6000 на ПК в сети B. шпатлевка вперед, что к Linux хост, который был установлен, чтобы направить его на 127.0.0.1 на порт 6000. Шпатлевка подключение с ПК по сети слушает на 6000 и отправляет на 127.0.0.1 на ПК для порта 3389 который РДП затем принимает подключение.

Решение 2: Настройка sshd на ПК в сети B, и затем вы только должны сделать один обратный порт вперед. Есть компании bitvise демон , который работает в Windows и является бесплатным для некоммерческого использования. Компании bitvise также сделать отдельный клиент, который обрабатывает РДП туннелирования в сочетании с WinSSHD. Хорошая вещь об этом решении является то, что сохраняет логины, настройки (как полный экран и так далее), и может быть запущена с сохранить файл и остановить вас от того, чтобы создать/не забудьте подключить порт вперед, используя RDP.

+28
oribasht 18 дек. 2011 г., 20:30:55

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

# псевдоним Лл
псевдоним Лл='ЛС-л-цвет=телетайп'

Следующая команда будет выполнена

# смотреть Лл
ш: Лл: команда не найдена

Не должна команда расширения работы в этом случае?

+19
Steve Lam 31 июл. 2011 г., 14:15:40

Показать вопросы с тегом

$200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil