Возможность удаленного монтирования образа, который может загружаться и сам установить?

У меня есть удаленный сервер, который работает на Linux. Я хотел бы удаленно установить образ ОС, в случае, если он будет поврежден (такое уже было дважды, пока я экспериментировал с ОС).

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

Можно ли в принципе подключить к машине через SSH иприкрепите это изображение и будет она действовать как бы на виртуальный привод в Windows (как Daemon Tools для примера), поэтому оно будет сохраняться до перезагрузки, а мне предоставить возможность удаленно устанавливать ОС?

Я искал решения в Гугле, но я нашел кое-что отметить, загрузки PXE....которая звучит сложно, поскольку вам нужен сервер и такие, и это не так просто, как подключение образа и что делается с ним.

Кроме того, я не нашел ничего полезного, так что я довольно короткий по вариантам....кто-нибудь знает, как это сделать?

+190
user3725758 21 апр. 2011 г., 14:13:48
36 ответов

Гленна ответ хороший-различие между ( ... ) и { ... } - это важно.

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

Эхо "нормальный выход"
{
 Е "[%С] %З\п" "$(Дата+%г-%м-%д %Т')" "текст предупреждения"
 Е "[%С] %З\п" "$(Дата+%г-%м-%д %т')" "это событие регистрируется".
} | тройник -в $файл_журнала >&2
Эхо "более нормальный выход"

В тройник командование отправляет выходные данные в двух местах; опции "добавляет" выход к имени файла, и команда будет также пройти входное вместе в stdout. В >&2 в конце линии перенаправляет тройникс потока stdout в stderr, которые могут быть обработаны по-разному (т. е. в cron-задание).

И еще один совет, который я часто использую в скриптах изменить поведение Debug или подробный вывод на основе того, что скрипт выполняется на терминале или вариант. Например:

#!/Бен/ш

# Установки по умолчанию
если [ -Т, 0 ]; тогда
 Параметр verbose=true; в vflag="в"
еще
 Параметр verbose=false; в vflag=""
интернет
Отладка=ложь; AskYN=истина; доить=истина

# Определить параметры (по умолчанию изменить)
в то время как команде getopts vdqbn опт; делать
 дело "$опт" в
 в) параметр verbose=true; в vflag="в" ;; # режим verbose
 д) отладки=истина; параметр verbose=true; в vflag="в" ;; # многословность
 в) параметр verbose=false; в vflag="" ;; # тихий режим (не многословный)
 б) AskYN=ложь ;; пакетный режим # 
 Н) Сделайэто=ложь ;; режим тест # 
 *) использование; выход 1 ;;
эсок
сделано

# Сдвиг наши варианты для дальнейшей обработки
клавишу Shift $(($OPTIND - 1))

$Многословный && Эхо "информация: подробный вывод включен." >&2
В $debug && Эхо "информация: в самом деле, ожидать, чтобы быть захвачены." >&2

# Делай свое дело здесь
если $AskYN; затем
 читать -п "продолжить?" выбор
 случае "$" в
 Г|г) $доить && somecommand ;;
 *) Эхо "готово". ;;
эсок
интернет

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

Еще один вариант заключается в том, чтобы обработать ваш выход с "обработчик" -- функция оболочку, которая может делать более умные вещи. Например:

#!/бин/Баш

logme() {
 дело "${1^^}" в
 [В]*) уровень=уведомление ;;
 Ж*) уровень=предупреждение ;;
 А*) уровень=предупреждение ;;
 Е*) уровень=главный ;;
 *) уровень=уведомление ;;
эсок
 если [[ "$#" -экв 1 ]]; затем
 # Снять ненужные префиксы, такие как "информация:"
 строка="${1#+([А-я])?(:) }"
еще
сдвиг
строка="[email protected]"
интернет
 регистратор -п "${объект}.${уровень}" -Т "$(хост -ы)" "$строка"
}

Эхо "нормальный выход"
logme информация "здесь мы идем..."
somecommand | logme
Эхо "дополнительный выходной"

(Заметим, что ${ВАР^^} является bash-только.)

При этом создается оболочка функция, которая использует системы syslog в функции (с регистратора команду), чтобы отправить вещи в системные журналы. Вlogme()` функция может быть использована либо с параметрами, которые генерируют одиночные линии данных журнала, или с несколькими строк, которые обрабатываются на вывод. Играть с ним, если он кажется привлекательным.

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

+986
Himanshu Balas 03 февр. '09 в 4:24

Это очень широкий

  1. местные секции смонтированы в целом. Вы cannont смонтировать его частично.
  2. вы можете (и обычно делаете много) смонтировать перегородку над другими разделами. существующие данные "скрытых" (например, файл foo.txt в /mnt/a/b/foo.txt скрыты, когда вы установите "Б" на /шоссе//б )
  3. да можно, это советуют горе местных местных, дальних на дальних и местных, но вы можете установить локальную систему ext3 на НФС на ext3, но за ...
  4. это зависит от ваших потребностей.
  5. точки подключения исчезают при загрузке, если прописан в /etc/fstab строчку.

Вы можете создавать временные устройства и точки монтирования, используя

  • ДД, если=/dev/нуль граф=100 БС=1К=ФОО ,
  • затем mkfs, а -т в ext3 фу,
  • затем, как корень, крепление foo в каталог /mnt

    размонтировать /шоссе и удалить ФОО , когда закончите.

согласно запросу.

у вас на /dev/sda1, поскольку на /dev/sda2

Общ /тугриков
#пусто
смонтировать /dev/sda1, поскольку в каталог /mnt/с
точка подключения ошибки не существует (1)
команды mkdir /MNT в/с 
смонтировать /dev/sda1, поскольку в каталог /mnt/с
Общ /тугриков
а
Общ /шоссе/а
# пусто
команды mkdir /MNT В/А/Б
дата > /mnt/a/b/foo.txt
смонтировать /dev/sda2 /MNT В/А/Б
Общ /шоссе/а/б
# пусто
размонтировать /шоссе/а
устройство занято (2) 
дата > /mnt/a/b/bar.txt
Общ /шоссе/а/б
bar.txt
размонтировать /шоссе/а/б
Общ /шоссе/а/б
foo.txt
  • (1) необходимо смонтировать на существующие реж.
  • (2) в /MNT/не может быть демонтирована, потому что есть точки монтирования, используя его (каталог/mnt/A/Б )
+972
Cory Klatt 18 июл. 2019 г., 22:37:18
Другие ответы

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


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

Один инода число используется для представления файла в каждой файловой системы. Все жесткие связи, основанные на номера inode. Файловая система ссылка здесь .

+944
Paramjeet Desai 4 сент. 2011 г., 18:55:14

Для людей, которые просто хотят найти недостающие репозитории:

список ням установленных | у awk '{печати 3$}' | СНП | уник

Это должно вернуть все репозитории, где у вас есть пакеты, установленные из.

+902
Deifiliya 3 мая 2011 г., 19:53:37

Добавить в ~/.конфиг/на GTK-3.0/ГТК.в CSS:

.окна-рамы {
 коробке-тень: нет;
 маржа: 0;
}

(через https://bbs.archlinux.org/viewtopic.php?pid=1416334#p1416334)

Мне пришлось перезапустить X для того, чтобы вступили в силу - сигнал SIGHUP удивительным было недостаточно.

+866
vaigoe 28 дек. 2019 г., 17:59:15

Я пытаюсь сделать эту программу , чтобы работать на моем Raspberry Pi для последние два дня и я получил к шагу 6, где говорится: "в этот момент, Вы должны быть в состоянии команды modprobe v4l2loopback".

Когда я побежал команду в нижней части страницы GitHub, ничего не произошло. Я никогда не работал в среде Linux раньше и даже не знаю, что означает команды modprobe. Может гуру посмотрите по ссылке и скажите мне, если есть больше modprobing, чем просто выполнив команду ./v4l2lepton устройство /dev/videox в?

+854
IIllIIll 2 июн. 2018 г., 07:06:20

Утилиты вы почувствуете различий. Взгляните на инструкции.

+805
Aedan Kerr 22 мая 2016 г., 23:03:20

Обработка одного файла Markdown в HTML:

pandoc -Ф уценки -Т исходный HTML-код.МД

Хотя я могу использовать Pandoc как это процесс индивидуальный Markdown файлов, я хочу составить список выбранных файлов уценки и обрабатывать их в один файл.

Если у меня есть некоторые уценки файлы:

inputfile1.доктор медицинских наук, inputfile2.доктор медицинских наук, inputfile3.МД

Как я могу их скомпилировать и обработать их с помощью Pandoc в один выходной файл?

+801
Richard Ginsberg 4 авг. 2017 г., 04:11:11

Для того, чтобы сделать рекурсивный шарики в bash, вам нужно globstar характеристика от Баш версии 4 или выше.

С Баша странице:

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

Пример рисунка:

shopt -с globstar
ЛС **/*.пы
+783
user3671 31 окт. 2011 г., 18:25:41

вы можете делать с &&.как это:

трубопровод {
 агент любой
 этапы {
 стадии('создать') {
 шаги {
скрипт{
 ш экспорт KUBECONFIG=/домой/k8stest/.Кубе/конфигурации && kubectl вам узлов
}
}
}
}
}
+751
moltsen 12 мар. 2018 г., 17:40:44

Это похоже на память или повреждения диска. Проверьте системные логи (например, в/var/журнал/Керн.журнала), чтобы увидеть, если любой диск с коррупцией упоминается.

Если вы видите признаки повреждения диска или нет, запустить проверку памяти. Memtest86+ входит во многие диагностические наборы или вы можете скачать загрузочный образ; это также устанавливается по умолчанию в Ubuntu (выбрать из загрузочного меню). Дайте ему поработать хотя бы один полный проход — вы можете оставить его на ночь. Если он находит ошибку, немедленно замените плохие модуль оперативной памяти.

+747
Alex Bean 13 нояб. 2010 г., 03:59:23

Мне удалось решить проблему, необходимо сначала установить устаревшие драйвера 304.08 и обновление драйвера 319. Я не совсем уверен, почему это сработало, но каждая вещь правильно настроен.

+727
Denyk 18 мар. 2019 г., 07:33:58

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

на awk 'ФНР==шп{а[ФНР]=$0;далее}{$NФ=генсуб (значение=".*"\/>/,"значение=\""это[ФНР]"\"\/>","г",$ЯТ);файл Print}' файл2 
#Или работает с регулярным выражением группами:
на awk 'ФНР==шп{а[ФНР]=$0;далее}{$NФ=генсуб(/(стоимость=")(.*)(".+)/,"\\1"в[ФНР]"\\3","г",$НФ);файл Print}' файл2 

Испытания:

файл $ кот 
<ключевое слово="активную" группу="приложение-служба" значение="testvalue1"/> 
<ключевое слово="активную" группу="приложение-служба" значение="testvalue2"/> 
<ключевое слово="активную" группу="приложение-служба" значение="testvalue3"/> 
<ключевое слово="активную" группу="приложение-служба" значение="testvalue4"/>
<ключевое слово="активную" группу="приложение-служба" значение=""/>

$ кот файл2
newvalue1
newvalue2
newvalue3
newvalue4 
newvalue5

ФНР $ на awk '==шп{а[ФНР]=$0;далее}{$NФ=генсуб (значение=".*"\/>/,"значение=\""это[ФНР]"\"\/>","г",$ЯТ);файл Print}' файл2 
<ключевое слово="активную" группу="приложение-служба" значение="newvalue1"/>
<ключевое слово="активную" группу="приложение-служба" значение="newvalue2"/>
<ключевое слово="активную" группу="приложение-служба" значение="newvalue3"/>
<ключевое слово="активную" группу="приложение-служба" значение="newvalue4"/>
<ключевое слово="активную" группу="приложение-служба" значение="newvalue5"/>
+723
3871968 23 сент. 2013 г., 21:19:01

Недавно, я узнал трюк, если файл не исполняемый разрешения, мы можем запустить этот файл с помощью /lib64/ЛД-ОС Linux для архитектуры x86-64.так.2.

Например, чтобы восстановить х разрешение на

-RW-р-р-- 1 корень 59K 1 марта 2017 /ОГРН/чмод

мы можем запустить

/lib64/ЛД-ОС Linux для архитектуры x86-64.так.2 /ОГРН/чмод +х /ОГРН/чмод

Я действительно не знаю, как это можно сделать, это не обычная фигня, какая-то тайна.

+680
ThePhi 8 нояб. 2017 г., 11:09:44

Я пытаюсь установить файл браузера Марлин. Я уже установлены многие необходимые пакеты, но я не знаю, что делать об этой ошибке Варька. Вот вывод с CMake (предыдущий шаг) и сделать (ошибка-производить шаг).

[ззз@localhost в сборка]$ CMake, например ..
-- проверка на минимальную версию валы 0.16.0
-- нашли вала, версия 0.16.1
-- проверка модуля 'единства>=4.0.0'
- пакет 'единства>=4.0.0' не найден
-- проверка на минимальную версию валы 0.11.3
-- нашли вала, версия 0.16.1
-- проверка на минимальную версию валы 0.16.0
-- нашли вала, версия 0.16.1
-- проверка на минимальную версию валы 0.16.0
-- нашли вала, версия 0.16.1
-- проверка на минимальную версию валы 0.12.0
-- нашли вала, версия 0.16.1
-- проверка на минимальную версию валы 0.16.0
-- нашли вала, версия 0.16.1
-- Схемы GSettings будет установлен локально.
-- Шемас GSettings будет составлен.
-- Схемы GSettings будет установлен в /usr/местные/доли/пакета GLib-2.0/схемы/
-- Схемы GSettings будет установлен в /usr/местные/доли/пакета GLib-2.0/схемы/
-- Настройка выполнена
-- Генерирующие сделано
-- Файлы сборки были написаны в: /Home/Эрик/загрузки/Марлин/строить

[ззз@localhost в строить]$ сделать
[ 1%] Генерирующих LocationBar.с, BreadcrumbsElements.с, BreadcrumbsEntry.с, marlinwidgets.Вапи, marlinwidgets.ч, marlinwidgets_internal.ч
ошибка: пакет `Варька' не найдена в указанных каталогах вала API или код-интроспекция каталоги Гир 
Ошибка компиляции: Ошибка 1(ы), 0 предупреждение(с)
сделать[2]: *** [libwidgets/LocationBar.с] Ошибка 1
сделать[1]: *** [libwidgets/CMakeFiles/marlinwidgets.каталог/все] Ошибка 2
сделать: *** [все] Ошибка 2
+638
Jawad Golzar 6 нояб. 2019 г., 16:53:06

Я полагаю, вы можете использовать любые библиотеки XML доступен на вашем языке выбора, чтобы изменить такой XML-документ программно. В Python, например, это доступно https://docs.python.org/3/library/xml.html

+638
kotel 28 дек. 2015 г., 03:01:22

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

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

При установке программы в каталог/usr/местные или ваш домашний каталог, и они не требуют слишком конкретных версий библиотек, то они будут работать под обоими дистрибутивами.

+626
ThisIsMe 8 дек. 2017 г., 06:57:18

Для "анонимности" используют-случае появилась АПТ-транспорт-Тор , который затем позволяет поставить URI наподобие Тор+с HTTP:// в источниках.список файлов. Это гораздо лучше защита и анонимность, чем просто шифрование подключения к вашему зеркалу.

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

В Debian есть apt репозиториями через Tor "лук сервисы", так что вы можете сделать сквозное шифрование (аналог СС) без того, чтобы доверять системе доменных имен. См onion.debian.org для всех, доступными услугами по этому пути. Главное для Debian FTP-хранилища на vwakviie2ienjx6t.лук

+624
Vinnix 20 янв. 2016 г., 11:31:51

У меня есть HTML-документ, который выглядит (если упрощенно) такой:

<HTML>и
<тело>
 <а href="...">...</а>
 <а href="...">...</а>
 <а href="...">...</а>
...
</тело>
тегом </HTML>

Что я бы хотел бы, чтобы извлечь URL-адреса в строке, разделенных выходных. Введите xmllint:

$ xmllint --в HTML --язык XPath //а/@href, в
с href="..." с href="..." с href="..."

Он становится атрибутом, весь атрибутов, включая имя, и это выводит их пробелами. Как я могу получить список строк со значениями атрибута href атрибут? Я хочу выходной, как это:

...
...
...

где ... является url, найденные в теге href атрибут каждой такой элемент.

Как я могу отформатировать правильно этот выход?

+604
Izhar Alam 14 мар. 2015 г., 12:39:40

Я пытаюсь построить врезанную систему Linux, основанный на Atmel для соц AT91SAM9G25 (обработчик ARM9 @ 400 МГц) процессора. Я использую загрузчик AT91Bootstrap.

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

Проблема я столкнулся в деталях выглядит следующим образом:

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

Параметры управления питанием --> приостановить в оперативную память и в режиме ожидания

Управление питанием --> спящий режим & по умолчанию резюме раздел на/dev/mmcblk0p3

(Ядро версия я использую это 4.0.4 и на/dev/mmcblk0p3 - это раздел подкачки на sdcard.)

Когда я запустил систему в первый раз, я заметил, что swap раздел не монтировать автоматически. Мне удалось подключить swap-раздела вручную с помощью команды mkswap /dev и/mmcblk0p3 и вызове swapon -а команды. Я также вставить соответствующую строку в файл fstab:

в /dev/mmcblk0p3 не поменять Юз 0 0

После перезагрузки, я не мог найти любой раздел подкачки установлен. Для решения этой проблемы я включил указанные команды mkswap и вызове swapon команды содержимое файла inittab файл. После перезагрузки раздел подкачки был успешно установлен при запуске.

С раздела подкачки установлен, Я прошу систему в спящий режим (остановка диска). Приостановить процесс, кажется, работает, как ожидалось.

Проблема начинается, когда я снова подключите питание. Хотя система вроде понимаю, что он проснулся от приостановки, он не восстанавливает предыдущую сессию. Это как выполнение "холодной" перезагрузки.

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

Я пытался гибернации системы с помощью следующих команд:

rtcwake -С20 -м диске
Эхо отключение > /системы/питания/диск
Эхо диска > файл /sys/власть/государство
ПМ-гибернация

но все они терпят неудачу, как описано выше.

Некоторые полезные dmesg и консоли выходы могут быть найдены здесь

Любые предложения или идеи, что я может быть делаю не так?

+597
undetected 4 мар. 2012 г., 10:50:42

Мост для подключения двух интерфейсов в одной подсети.

Если у вас разные подсети и хочу, чтобы они общаются друг с другом, вам нужно включить маршрутизацию Эхо 1 > /труды/системы/нетто/протоколов IPv4/ip_forward , но по умолчанию это не включено, поэтому они не смогут разговаривать друг с другом.

Редактировать: преодоление двух интерфейсы в разных подсетях будет работать, но это не традиционные установки. Если вы хотите сохранить ваши настройки таким образом, вы должны будете использовать ebtables , а не в iptables блокировать трафик.

+566
dhru 9 янв. 2019 г., 17:38:33

Вы можете использовать xbacklight для контроля яркости экрана. В Xfce, откройте Настройки и добавить вызовы xbacklight в разделе “клавиатура” → “ярлыки приложений”: что-то вроде xbacklight -декабря 5 -шаги 1 для BrightnessDown и xbacklight -ВКЛ 5 -шаги 1 для BrightnessUp.

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

Универсальный метод, который работает с любой настольной среде (или вообще), чтобы запустить xbindkeys (услуга доступна в большинстве дистрибутивов, в том числе и Ubuntu). Xbindkeys потребляет только процессор при запуске или при нажатии клавиши, и очень мало на что; это не разряд батареи на всех. (Это было бы дело для любого дистанционно достойного программного обеспечения, предоставляющий такие же возможности.) В ~/.xbindkeysrc, поставить что-то вроде

"xbacklight -декабря 5 -шаги 1"
XF86MonBrightnessDown
"xbacklight -Inc в 5 -шаги 1"
XF86MonBrightnessUp

и добавить xbindkeys в автозапуск приложений в среде рабочего стола, или в ~/.xsession теперь или ~/.файла , если вы не используете среду рабочего стола.

+561
Fortitudus 7 авг. 2010 г., 08:43:11

Если я прав, то Дельфин будет использовать SFTP доступ к файлам на удаленном сервере и SFTP протокол реализован OpenSSH не имеют никакой поддержки для эскалации разрешения.

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

+558
Feng Wang 10 окт. 2013 г., 12:33:02

Я пытаюсь редактировать файл/etc/пользователям использовать sudo? через visudo, но я не знаю, как поменять root права.

Я хочу, чтобы корень будет предложено для пользователя user1 пароль, когда он пытается использовать Су пользователь1.

+536
user99092 8 апр. 2010 г., 09:05:43

У меня есть сервер, где раздел (/ВАР) перешел в режим только для чтения. Поэтому я стараюсь, чтобы воспроизвести эту проблему на другой сервер с помощью следующей команды.

горе -о перемонтировать,РО /ВАР/ -Ф

Когда я проверить наш журнал приложений на том же разделе я перемонтирована ро я вижу записи недавно добавленные.

хвост -Ф /ВАР/лог/файл httpd/*

В CentOS 6.7

Апач: 2.2.15

uname-Р: 2.6.32-573.7.1.el6.архитектуру x86_64

+479
user310616 19 сент. 2011 г., 07:56:55

У меня один вопрос беспокоит меня, не могу избавиться от него. Предположим, нам нужно создать LVM на ВГ будет иметь физический размер объем 16М и НН в нем будет 80 степени.

Сколько места я должен назначить из программы fdisk,помощью gdisk или команды cfdisk .

Я думал, что это простая математика (16*80), но правильно ли это ?

+401
vikram jain 31 июл. 2011 г., 23:22:37

У вас файловая система NTFS. В этом случае вы не сможете безопасно устранить проблему на все, кроме Windows-машины. (Код Linux-это хорошо, но я не могу рекомендовать вам доверять это исправить чужой файловой системы.)

Возьмите диск на вашей системе Windows и выполните команду chkdsk /Ф вопрос:или буквой диска, что он был назначен. Затем попробуйте удалить файл. Если это не удается, вы собираетесь нужно ждать команду chkdsk /Р в:, который может занять много часов, чтобы выполнить.

+397
Melita Sheilini 12 янв. 2013 г., 20:54:04

Сервер работает на Debian 7 Wheezy и не добавлена.

У меня есть пользователь в Debian с помощью Perlbrew, установленных в их домашний каталог. Пользователь запускает приложение Mojolicious. Для того, чтобы приложение, чтобы работать, файл Perlbrew bashrc и должен быть загружен. В настоящее время пользователь входит в систему и запускает свои приложения с гипножабой приложение, которое запускает демон. Я пытаюсь сохранить приложение, и все, что связано с его изолировали в домашнем каталоге пользователя, и я бы предпочла не связываться с системой на языке Perl. Однако, я хотел бы, чтобы их приложения для запуска в качестве службы, начал на загрузке и так далее, но я не уверен, как источник в Perlbrew bashrc и, когда запущена служба как пользователь.

Так, короче, мой вопрос заключен в названии, но в основном мне интересно как источника в файл bashrc для службы.

+340
ysKim 22 янв. 2018 г., 15:38:42

Костас ответ Это, наверное, лучшее, учитывая ваш точный проблема, потому что у вас есть поле, которое имеет 100% совпадение.

Но если ваша проблема действительно была применение grep к миллионам регэкспы в миллиарды строк, то в GNU параллельно есть описание как это сделать: https://www.gnu.org/software/parallel/man.html#EXAMPLE:-Grepping-n-lines-for-m-regular-expressions

Самое простое решение грэп большой файл на много регулярные выражения:

грэп -Ф bigfile regexps.txt 

Или если регулярные выражения являются фиксированными строками:

грэп -ф-ф bigfile regexps.txt 

Есть 3 сдерживающих факторов: процессора, оперативной памяти и дискового ввода/О.

ОЗУ легко измерить: если процесс поиска занимает большую часть вашего свободного памяти (например, при беге вверх), то оперативной памяти является ограничивающим фактором.

Процессор тоже легко измерить: если команда grep занимает >90% процессора в топ, то процессор является лимитирующим фактором, и распараллеливание позволит ускорить этот процесс.

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

Ограничивающим фактором: оперативная память

Нормальный грэп -Ф regexs.txt bigfile работает независимо от размера bigfile, но если regexps.txt это настолько большой, он не помещается в память, то вам нужно разделить это.

грэп -Ф занимает около 100 байт оперативной памяти и grep занимает около 500 байт оперативной памяти в 1 байт выражения. Так что если regexps.txt это 1% от вашей оперативной памяти, то это может быть слишком большой.

Если вы можете конвертировать ваши регулярные выражения в фиксированных строк сделать это. Е. Г. если линии вы ищете в bigfile все выглядит:

Id1 в Foo бар Базом Идентификаторов1 quux
кранты ID2, которое Василий Пупкин баз Идентификатор2

тогда ваш regexps.txt можно конвертировать из:

Типа id1.*Идентификаторов1
ID2, которое.*Идентификатор2

в:

Id1 в Foo бар Базом Идентификаторов1
ID2, которое Василий Пупкин баз Идентификатор2

Таким образом, вы можете использовать команду grep -F, которая занимает около 80% меньше памяти и намного быстрее.

Если он до сих пор не укладывается в памяти, вы можете сделать это:

параллельно --pipepart -а regexps.txt --блок 1М грэп -ф-ф - и-Н bigfile |
сортировка -ООН | Перл -ЧП 'с/^\д+://'

На 1м должна быть ваша свободная память делится на количество ядер и разделен на 200 для grep -F и по 1000 для нормальной командой grep. На GNU/Linux вы можете сделать:

бесплатно=$(на awk '/^((своп)?Кэшированные|MemFree|буферы):/ { сумма += $2 }
 Конец { напечатать сумму } ' в /proc/meminfo)
percpu=$((бесплатно / 200 / $(параллельные --кол-во ядер)))к

параллельно --pipepart -а regexps.txt --заблокировать $percpu --сжимать грэп -ф-ф - и-Н bigfile |
сортировка -ООН | Перл -ЧП 'с/^\д+://'

Если вы можете жить с дублируются линиями и неправильном порядке, это быстрее сделать:

параллельно --pipepart -а regexps.txt --заблокировать $percpu --сжимать грэп -ф-ф - bigfile

Ограничивающим фактором: ЦП

Если процессор является ограничивающим фактором распараллеливание должно быть сделано на регулярках:

кошка regexp.txt | --параллельные трубы -водостотьким L1000 --циклический --сжимать грэп -ф-Н bigfile |
сортировка -ООН | Перл -ЧП 'с/^\д+://'

Команда начнет грэп на ЦП и читать bigfile один раз в процессора, но как это делается параллельно, все читает, кроме первого, будут кэшироваться в памяти. В зависимости от размера regexp.txt это может быть быстрее, чтобы использовать ... блок вместо 10м -водостотьким L1000.

Некоторые системы хранения лучше выполнять при чтении нескольких блоков параллельно. Это верно для некоторых систем RAID и для некоторых сетевых файловых систем. Чтобы распараллелить чтение bigfile:

параллельные --pipepart --блок 100м-bigfile -к --сжимать грэп -Ф regexp.txt

Это позволит разделить bigfile на 100 МБ куски и запустить грэп на каждый из этих кусков. Для распараллеливания чтения в bigfile и regexp.txt объединить два использование --ФИФО:

параллельно --pipepart --блок 100м-bigfile --ФИФО кошка regexp.txt \
\ | --параллельные трубы -водостотьким L1000 --раунд-Робин грэп -Ф - {}

Если строка соответствует нескольким регулярные выражения, строки могут дублироваться.

Большая проблема

Если проблема слишком большая, чтобы быть решена с помощью этого, вы, вероятно, готовы для Лудене.

+339
wimnors 14 янв. 2010 г., 13:18:24

Ок, я просто пытаюсь убрать двойные кавычки в моих именах. Вот команда я придумал (Баш).

$ найти . -имя_экземпляра "*\"*" -print0 команды | команды xargs -0 -Я {} МВ {} {} | тр -д \"

Проблема в МВ {} {} | тр -д \"' часть. Я думаю, что это приоритет проблемы: Баш-видимому, интерпретировать как (МВ {} {}) | тр -д \"), и что мне остается, - это имена обоих файлов лишен двойных кавычках. Это не то, что я хочу, очевидно, потому, что тогда это не удается переименовать файл. Вместо этого, я хочу, чтобы первое имя в ковычках, а второй не, более такой: МВ {} ({} | тр -д \").

Как я могу добиться этого? Я пробовал и фигурные скобки, но я не совсем уверен, что я делаю, когда дело доходит до явного задания выполнение команд приоритет.

+308
zytro 8 окт. 2010 г., 18:19:17

Ш (которые в большинстве (в Debian-производных) системы связан с тире) не разрешить процесс замещения. Попробуйте ссылаться на баш script.sh. Же позвонив по ./script.sh выполняет с ша-Банг , который /бин/баш в вашем скрипте.

+248
Ram Gadde 23 окт. 2015 г., 06:33:56

У меня есть этот набор данных, но вы хотите превратить его в формате CSV вызов файл с данными строками сказать Оби не всегда на одном и том же поле в следующей строке!!!

Дн: 0,фото: 0,SUBSPDPCPVERS: 4,лагерю: 0,серв: ППО,CSLOC: 2,PSLOC: 2,GSMUEFEAT: 0,UNKNLOCDATECS:: EAoL,UNKNLOCDATEPS:: EAoL,Оби: 1
Дн: 0,Фото: 4,SUBSPDPCPVERS: 4,лагерю: 0,серв: ППО,CSLOC: 2,PSLOC: 2,GSMUEFEAT: 0,UNKNLOCDATECS:: EAoL,UNKNLOCDATEPS:: EAoL,ядро osb1: 1
: 0,Фото: 1,лагере: 0,серв: ППО,CSLOC: 2,PSLOC: 2,GSMUEFEAT: 0,UNKNLOCDATECS:: EAoL,UNKNLOCDATEPS:: EAoL,Оби: 1,ядро osb1: 1 дн
Дн: 0,фото: 0,лагерем: 0,серв: ППО,CSLOC: 2,PSLOC: 2,GSMUEFEAT: 0,UNKNLOCDATECS:: EAoL,UNKNLOCDATEPS:: EAoL,Оби: 1,ядро osb1: 1
Дн: 0,фото: 422,SUBSPDPCPVERS: 4,лагерю: 0,серв: ППО,CSLOC: 2,PSLOC: 2,GSMUEFEAT: 0,UNKNLOCDATECS:: EAoL,UNKNLOCDATEPS:: EAoL,ядро osb1: 1

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

Нам,ЦКЗ,SUBSPDPCPVERS,лагерь,серв CSLOC,PSLOC,GSMUEFEAT,UNKNLOCDATECS,UNKNLOCDATEPS,Оби,ядро osb1
0,0,4,:0,ППО,2,2,:0,:EAoL,:EAoL,1,
0,4,4,:0,ППО,2,2,:0,:EAoL,:EAoL,,1
0,1,,:0,ППО,2,2,:0,:EAoL,:EAoL,1,1
0,0,,:0,ППО,2,2,:0,:EAoL,:EAoL,1,1
0,422,4,:0,ППО,2,2,:0,:EAoL,:EAoL,,1
+170
Shai Rippel 23 янв. 2014 г., 11:14:13

Я использовать MP4Box как работают базы.
Сценарий я предлагаю читает все файлы по одному, проверяя каждый (погода, это обычный файл), запрашивает у пользователя ввод имени файла, чтобы создать.

#!/бин/Баш
е "### объединить медиа-файлов ###\Н"
fInputCount=0
Входные файлы # чтение 
ИФС="
в то время как (правда)
делать
 пусть currentNumber=$fInputCount+1 
 е "файл n°%с (\"ОК\", чтобы закончить): "$currentNumber
 читать входной_файл
 [ "$входной_файл" == "ОК" ] && сломать
 [ ! -е "$входной_файл" ] || [ ! -Ф "$входной_файл" ] && е "\"%ы\" : неверное имя. Обезательно!!! \Н" "$входной_файл" и продолжить
((fInputCount++))
inputFileList[$fInputCount]=$входной_файл
 функции printf "\"%s\" на : добавлено в очередь\!Н" "$входной_файл"
сделано
[ "$fInputCount" == "0" ] || [ "$fInputCount" == "1" ] && эхо "не хватает входных данных. Тю ! "&& выход
# Список список входных файлов 
Для ((я=1;я<=$fInputCount;я++))
делать
 функции printf "%в 2D : %з\п" $я ${inputFileList[$я]}
сделано
# Чтение выходного именем
в то время как (правда)
делать
 е "выходной файл без расширения (\"нет\", чтобы закрыть) : "
 outputRead читать 
 [ "$outputRead" == "никто" ] && Эхо "без удовлетворения. Тю ! "&& выход
 [ "$outputRead" == "" ] && Echo "а попробуйте еще раз ! "&& продолжить
 [ -е "$outputRead" ] && Echo "а\"$outputRead\" существует. Попробуйте еще раз !" && продолжить
параметр outputfile=$outputRead.МР4
 Эхо "выход \"$выходной_файл\". Иди !" && сломать
сделано
# Создание случайных временных именем
дата tmpOutFile="/tmp/и concatMedia"`+"%с%Н"| помощью sha1sum | у awk '{печати $1}"".МР4"
# Соединения двух первых входных файлов
MP4Box -кошка "${inputFileList[1]}" -кот "${inputFileList[2]}" $tmpOutFile
# Добавляем все остальные файлы
Для ((я=3;я<=$fInputCount;я++))
делать
tmpIntermediateFile=$tmpOutFile
 дата tmpOutFile="/tmp/и concatMedia"`+"%с%Н"| помощью sha1sum | у awk '{печати $1}"".МР4"
 MP4Box -кошка $tmpIntermediateFile -кошка "${inputFileList[$я]}" $tmpOutFile
 РМ $tmpIntermediateFile
сделано
МВ $tmpOutFile "$выходной_файл"
# Закончила
Эхо "\"$\ выходной_файл" спасены !"
+162
Jonathan N KaShawna Goodrich 20 сент. 2014 г., 22:16:31

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

Вместо:

#!/Бен/ш

Функ () {
 если [ "$1" -экв 1 ]; тогда
 Эхо какие-то лесозаготовки вещи >>журнал
 возвращение 1
интернет

 Эхо 'Привет мир'
}

а="строка"

если B=$( Функ 0 ); тогда
 а=${б%% *}
интернет

Е '1: а = "%S"В\Н' "$а"

а="строка"

если B=$( изм 1 ); тогда
 а=${б%% *}
интернет

е '2: а = "%S"В\Н' "$а"

Запуск этого производства

1: а = "Привет"
2: а = "строка"

Как видите, во втором случае, это сохраняет свое значение.

+129
Adhe Ansyori 16 сент. 2013 г., 20:41:31

Ответ короткий: потому что Linux-это действительно GNU/Линукс. Только ядра Linux, но базовый набор утилит для обеспечения UNIX-подобные среды обеспечивается лицензией GNU и GNU оболочка Баш
Как я уже говорил, что короткий ответ ;)

отредактированный, чтобы добавить некоторые дополнительные комментарии...
Дайте мне приставку, сказав, что я не историк Unix, так что я могу только ответить ИМХО

Несколько моментов, в первую очередь bash является кухонная раковина раковины, а Emacs-это к редакторам.
Во время Баш был выпущен не было свободных реализаций КШ, в tcsh была бесплатная замена хсг, но Столлман имел тираду хсг для программирования оболочки.
В качестве интерактивной оболочки Bash были отличные истории/команды напомним, вместе с сохранением истории от сессии к сессии. Это была капля в замена для ш, БШ, КШ для программирования Shell и сделал для приличной интерактивной оболочки.
Как снежный ком катится под откос, Баш набирает силу и размер.


Да, существуют десятки других снарядов; снаряды, которые лучше подходят для индивидуальных целей или вкус, но на один все вокруг оболочки Bash делает достойную работу и имеет много глаз на нем уже более 20 лет.

+75
Thalla RinA 15 авг. 2016 г., 05:56:43

Во-первых, файл/sys/класс - удобный способ найти вещи в файл/sys. Вы найдете все, что внутри на самом деле является символической ссылкой; Я уверен, что ваша первая строфа-это симлинк на твой третий куплет.

2-й куплет-это ядро значение температуры напрямую от чипсета процессора/. 3-й куплет-это ядро, получая значение из BIOS через интерфейс ACPI. Хотя в системе они могут дать такой же ответ, они не нужны (например, в BIOS можно было с помощью различных датчиков, усреднение вместе или применяет какую-то доску корректировка).

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

+46
RnMs 5 янв. 2010 г., 00:41:06

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

$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