Почему в ZFS большой файл не мгновенно, как в Btrfs?

Копирование 1 ТБ диска на файловой системе Btrfs разделов с ДЦП занимает меньше секунды на моего Ubuntu 14.10 amd64 с ОС Linux 3.16.0. Почему нужно не менее 5 минут и требует > 1 ГБ для чтения на пуле ZFS с дедупликацией включенным и отключенным сжатием?

Я просто хочу, чтобы улучшить мое понимание ZFS и выяснить, есть ли в ZFS является адекватной альтернативой как дедупликация файловой системы для меня (понимая, например, копировать действия, описанные для файловой системы Btrfs можно на ZFS вообще (на Linux 3.16)).

Редактировать: после того, как Стефан Chazelas' комментарий я бегу СР --рефссылка=всегда файлом.БК , который выдает

$ Ланг=с СР --рефссылка=всегда файлом.БК
СР: не удалось клонировать 'image_lvm.рис.бк2' от 'image_lvm.ИМГ': несоответствующий ioctl для устройства
+28
sgw 1 апр. 2015 г., 04:25:19
39 ответов

Это решение работает, если вы установили О-мой-ЗШ и поддержкой ви-режиме плагина.

Жиля xsel и злэ решение не работает для меня. Однако, поскольку я настроил ВИМ использовать мою систему буфер обмена по умолчанию (установить буфер обмена=unnamedplus в ~/.vimrc), я просто ввел в терминал в нормальный режим, чтобы открыть текущую команду в ВИМ и тогда я смогу скопировать его в Х-буфер обмена с любым из ВИМ янки команды.

+974
Greg Kennedy 03 февр. '09 в 4:24

Сегодня я пошел, чтобы установить Groovy на этот Линкс Минт 17.2 установить. Пакет SDK (или ГВМ SDKMAN) инструкции мне показались очень понятными.

Сайт SDKMAN:

На странице установка ...

  1. $ завиток -с get.gvmtool.net | Баш
  2. $ источник "$HOME/.gvm/bin/gvm-init.sh"
  3. $ гвм установите круто * установите последнюю стабильную груви

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

  1. $ груви -версия

Результат совершенно неожиданный.

Программа 'заводной' в настоящее время не установлены. Вы можете установить его, введя:
судо apt-получить установку заводной

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

  • $ СДК использовать Groovy 2.4.5
    • Он говорит, что работал
  • $ СДК тока

    Нет кандидатов в использовании

Попробуйте заводной, такой же результат:

  • $ груви -версия

    Программа 'заводной' в настоящее время не установлены. Вы можете установить его, введя: судо apt-получить установку заводной

Когда я смотрю, на .sdkman кандидатов папку, там действительно копия Заводной 2.4.5. Что-то в скрипте установки или какой-то шаг, что не по инструкции отсутствует.

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

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

+936
TRISETIAWAN SETIAWAN 29 окт. 2017 г., 21:10:24

Как мне подключить устройства MTD от Linux? Команда Mount не работает, см. ниже:

[корень@10 ~]# кошка /proc/МТД
Дэв: размер erasesize имя
mtd0: 00400000 00080000 "приложения uboot"
mtd1: 00400000 00080000 "формат"
mtd2: 3f800000 00080000 "корень"
[корень@10 ~]# кошка /proc/filesystems с
nodev файловой системы sysfs
nodev файловой системы
nodev bdev
nodev прок
nodev файловая система tmpfs
nodev devtmpfs
nodev sockfs
nodev usbfs
nodev pipefs
nodev anon_inodefs
rpc_pipefs nodev 
devpts nodev 
в ext3
в ext2
в ext4
файл
nodev ramfs так
для vfat
рекламного
стандарта записи iso9660
nodev НФС
nodev а JFFS2
в XFS
nodev mtd_inodefs
nodev oprofilefs
nodev ubifs по
[корень@10 ~]# маунта -Т ubifs по устройству /dev/mtdblock2 /шоссе/вспышки
Ошибка ubifs по (пид 631): ubifs_get_sb: не удается открыть "в/dev/mtdblock2", ошибка -22
крепление: крепление на /dev/mtdblock2 в /MNT/вспышки ошибка: недопустимый аргумент
[корень@10 ~]# команды uname -а
Линукс 10.140.9.57 2.6.35.9 #12 Чт авг 23 22:13:28 ЭДТ 2012 armv7l Марвелл PJ4Bv7 процессор�� и REV 1 (v7l) Марвелл Армада-370 ГНУ/Линукс
[корень@10 ~]#
+936
kogoia 12 янв. 2011 г., 16:20:36

у logrotate можете сделать это, матч шаблон можно на *журнал, то вы добавить раздел под названием "postrotate", рассмотреть postrotate небольшой bash-скрипт, который выполняется после вращения.

пример;

/домашний каталог/usr/журналы/*.войти {
ежедневно
missingok
компресс
 #delaycompress (это предотвратит сжатие одного дня)
notifempty
 создать 640 корень адм
sharedscripts
postrotate
 МВ /домашний каталог/usr/журналы/*.ГЗ /домашний каталог/usr/журналы/архив/;
endscript
}

Обновление 1:

если вы хотите использовать молнию вместо gzip, добавить;

compresscmd /usr/Бен/зип
compressoptions -Р
compressext .молния
+927
Fabio Ciullini 22 окт. 2016 г., 16:05:10

Я пытаюсь запустить следующие команды SUBST команду, чтобы заменить одну строку в/var/jenkins_home с другой /СРВ/Дженкинс-раб-1/Сведения таким образом, что значение в HOST_LOG_DIR изменения в/var/jenkins_home/рабочих/ts_myapp_testing_integration-тесты для /СРВ/Дженкинс-раб-1/данных/рабочее место/ts_myapp_testing_integration-тесты

но когда я запускаю файл Makefile цель substtest значение HOST_LOG_FILE остается неизменной (см. скриншот).

Рабочее пространство : = "в/var/jenkins_home/рабочих/ts_myapp_testing_integration-тесты"
JENKINS_HOME : = "в/var/jenkins_home"
JENKINS_HOME_HOST_PATH := "/СРВ/Дженкинс-раб-1/Данные"
HOST_LOG_DIR := $(замест $(JENKINS_HOME),$(JENKINS_HOME_HOST_PATH),$(рабочего пространства))

.Трепло: substtest, print_env

substtest: print_env

print_env:
 @Эхо "рабочее пространство ${пространство}"
 @Эхо "JENKINS_HOME составляет ${JENKINS_HOME}"
 @Эхо "JENKINS_HOME_HOST_PATH составляет ${JENKINS_HOME_HOST_PATH}"
 @Эхо "HOST_LOG_DIR составляет ${HOST_LOG_DIR}"][1]][1]

enter image description here

Странное дело, когда я заменить $(JENKINS_HOME) с фактическим значением в/var/jenkins_home т. е.

HOST_LOG_DIR := $(замест /ВАР/jenkins_home,$(JENKINS_HOME_HOST_PATH),$(рабочего пространства))

затем он работает, как ожидалось,

enter image description here

Мне нужно исправить это, так что он работает без жестко замену.

+865
Simbah Gee Manyoka 5 янв. 2017 г., 14:27:03

Вы можете легко использовать вырезать, чтобы разделить их. Просто используйте вырезать -Д ""-Ф 1 , чтобы получить число и вырезать -Д "" -Е 2- чтобы сделать все остальное. Awk будет просто обработать его как пробел.

+863
Sukru 15 февр. 2015 г., 20:29:31

Это не проблема с определением адреса IPv6. Что разрешение имен работает нормально, потому что отчеты завить, что он не может достичь сеть 2800:3f0:4001:806::1005; это показывает, что перевод названия не удалось. Это отличается от ошибки в поиске по имени:

 $ завиток -6 http://does.not.exist.foo.
 завиток: (6) Не разрешать вовсе.нет.существует.фу.'

Для того, чтобы достичь IPv6-адрес, вы должны иметь маршрут к адресу назначения и очень немногие соединения либо подключение по протоколу IPv6 на всех. На машине я пишу это, у меня почти нет В6 маршруты на всех:

$ маршруте-inet6
Таблица маршрутизации ядра IPv6 
Пунктом Следующему Флагу Хоп Встретилась Использовать Ref, Если
на fe80::/64 :: у 256 0 0 как wlan0
ff00::/8 :: у 256 0 0 как wlan0

которая говорит, что вы я знаю, как достичь своей локальной сети и больше ничего. Сравните это с моим маршрутов IPv4

$ маршруте -Н 
Таблица IP-маршрутизации ядра 
Пунктом Genmask Шлюз Флаги Метрики Использовать Реф Недвижимость
0.0.0.0 192.168.1.1 0.0.0.0 UG с 0 0 0 как wlan0
...

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

Ваше разрешение имен работает нормально. Вам понадобится IPv6-маршрут к сети назначения и слишком мало где предусмотрено, что объект еще.

+822
Placinta 20 мая 2016 г., 06:43:24

Это похоже на то, что вы ожидаете увидеть, если процесс были отправить много непоследовательных (случайных) малый пишет. Вы бы иметь относительно небольшой средний размер (8, значит 8×сектора 512 байт = 4K, так что минимум с нормально пишет). Имея более грязные буферы также согласуется, значит, пишет были переданы ядра и ядро работает на записи их на диск. 285 ТПС-это чертовски хорошая производительность для магнитного диска.

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

в ext3 не рекомендуется, ну ничего. ext4 является консервативным выбором для замены (но с барьера=0, ты явно не волнует); XFS является еще одним хорошим выбором (и очень надежный). Но я сомневаюсь, что это поможет здесь. SSD-накопители, хотя, безусловно, даст гораздо более высокое значение IOPS.

+785
Treefish Zhang 25 авг. 2017 г., 19:48:40

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

В других случаях, я обнаружил, что ниже код работает.

Петля есть, потому что если бы это не было, полноэкранный команда выстрелить в ближайшее время, прежде чем появились такие окна ставить в полноэкранном режиме!

wmctrl -л находится в списке окна; сан. узел-л - это для подсчета строк; wmctrl -Р стоит указать что окна для того чтобы работать на, и, с , ты скажешь, что на самом деле сделать, чтобы это окно.

Мои приложения &
пока (( ! `wmctrl -я | Мои приложения | туалет -л` )) {}
wmctrl -R мой-приложение -Б переключения,полноэкранный
+781
Tobias Bergkvist 9 июл. 2016 г., 15:02:01

Я предлагаю проверять сам файл и, видя, если это на самом деле действительный и последовательный.

cksum вычисляет КПР. Есть цель-конкретная инструкция для этого на современных x86 процессоров, которые могут или не могут быть, которые здесь используются; в этом случае вполне возможно, что ЦП может быть неисправен, и также возможно, что это ошибка не может появляться нигде. Рассмотреть возможность обеспечения вашего микрокода или пытается контрольную сумму файла с помощью другой утилиты, которая не делает КПР (программы md5sum приходит на ум), или же испытать на другом компьютере.

+774
Chomolungma 17 апр. 2017 г., 07:44:40

Как я могу включить фреймбуфер в консоли в Debian?

Это то, что я уже пробовал:

  • Добавьте следующие строки В "/и т. д./По умолчанию/жратва" файл:

    GRUB_GFXMODE=1024х768

    GRUB_GFXPAYLOAD_LINUX=1024х768

Следующая строка закомментирована

#GRUB_TERMINAL=консоль
  • Я также добавить "set gfxpayload=сохранить" строки ниже "установить gfxmode={$GRUB_GFXMODE}" в "/etc/харч.файл D/00_header".

  • Выполнить команду "обновить-жратва"

Ничего не происходит. Я переключился на вторую виртуальную консоль (Ctrl-Альт-2) и попытался выполнить следующую команду:

~ $ ФБР some_image.jpg
используя "дежавю Санс моно-16", pixelsize=16.67 файл=/usr/доли/шрифты/шрифты TrueType/ЦФТ-дежавю/DejaVuSansMono.ТТФ
открыть /dev/fb0: нет такого файла или каталога

Почему? Что я делаю не так? Как я могу это исправить?

+765
ScottN 23 июн. 2017 г., 12:48:09

Как мне настроить получения справки об для запуска в фоновом режиме при входе в систему? Простой получения справки об & делать трюк?

+738
Ken Keller 29 сент. 2011 г., 00:37:51

Статьи объясняет это очень хорошо

Эти диаграммы не стандартный набор цвета можно найти на любом окне х системы. Скорее это стандартизированные "Х11 цветов", принятое браузерах после стандартов HTML и CSS. Этот набор вырубили и рациональное, и имеет несколько отличий от типичный rgb.txt...

http://en.wikipedia.org/wiki/X11_color_names

+730
NOOB GAMER 8 сент. 2010 г., 03:45:13

Еще одно решение на awk

на awk -Ф-ва="([0-9]+)" '$0=генсуб((а"-"а"-"в),"\\3/\\2/\\1","г")' файл

устанавливает разделитель полей разделителями

-ва="([0-9]+)" устанавливает переменную(а), а регулярное выражение в кавычки.

([0-9]+) это регулярное выражение соответствует любому числу число в диапазоне 0-9(все числа на самом деле) и в скобках так матч сохраняется.

$0=генсуб устанавливает $0(строки) в результат генсуб

(а"-"в"-"а) использует регулярное выражение, чтобы соответствовать 'количество' 'тире' 'количество' 'тире' 'количество'

,"\\3/\\2/\\1","г") инвертирует порядок сохранен сочетается и добавляет / между ними, не то что не в скобках и так не сохраняются.Г просто означает, что это относится ко всем играм.

+702
salman0405 12 янв. 2015 г., 15:52:52

Одиночные кавычки должны добиться того, чего вы хотите.

# " является специальным символом
переменная="привет "слово";'
grep в файл "$ВАР" 

На странице колотить человека:

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

Окружающих символов в двойные кавычки сохраняет буквальное значение все символы внутри кавычек, за исключением $, ‘,
 \ и, когда экспансия история включена, !. Символы $ и ‘ сохраняют свой особый смысл в двойные кавычки. В
 обратная косая черта сохраняет свое особое значение только при соблюдении одного из следующих символов: $, ‘, ", \, или <перевод строки>. Двойной
 цитата может быть заключено в кавычки в двойные кавычки, перед ним обратную косую черту. Если включено, расширение истории будет выполнена, если
 Ань ! появившись в двойные кавычки экранируются с помощью обратного слеша. Обратная косая черта, предшествующего ! не удаляется.
+548
LeleMarieC 14 мая 2013 г., 19:39:32

Я использую sendmail и в RHEL 5. У меня три учетные записи электронной почты для пользователей Джек, Боб и Алиса. Я хочу убедиться, что пользователь Bob можете отправить письмо на Элис, но Джек не может отправить почту с Алисой. Но Джек пользователь может отправить письмо Бобу. Как я могу это сделать?

+534
user194614 23 мар. 2012 г., 21:21:41

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

На данный момент, я не нашел рабочего ответа в интернете, поэтому сейчас я прошу вас, ребята :)

PinkPR

+508
Srinivas Chunduri 28 февр. 2011 г., 10:15:02

Я найти все необходимые файлы с помощью команды grep: команда grep-включить=\*.{в PHP,ini,в конф,ш} -рил-Р "'([\Д\Ш\-\_\.]+)(@domain.com)'" 'в/var/www_data/somepath/'

Теперь я предполагаю, что это либо использовать sed или Perl, чтобы в процессе замены, увы, я не могу выяснить, как использовать выше регулярное выражение в любой из них. Я видел этот способ и этот способ , но как я уже сказал, Я не мог заставить его работать с моим шаблоном (и под этим я подразумеваю, что я вам > в следующей строке после выполнения команды. Я предполагаю, что это проблемы с regexp, показанный выше, когда используется с помощью sed или Perl), так что любые советы по этому вопросу было бы неплохо.

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

+497
James Cole 15 апр. 2012 г., 05:31:03

По-видимому, невозможно без изменения исходного кода.

Поиск входа.дефс или LOGIN_TIMEOUT дает действительно нет релевантных результатов и глядя на loginutils/логин.ц очень похоже, что значение и весь таймера жестко:

в enum {
 Таймаут = 60,
 EMPTY_USERNAME_COUNT = 10,
 /* Некоторые пользователи нашли 32 символов ограничение будет слишком низкая: */
 USERNAME_SIZE = 64,
 TTYNAME_SIZE = 32,
};

[...]

статический недействительным alarm_handler(инт UNUSED_PARAM сиг)
{
 /* Это люк! Бедный серийный пользователи линии и тому подобное
 * прибытие здесь, когда их связь нарушается.
 * Мы не хотим, чтобы блокировать здесь */
ndelay_on(STDOUT_FILENO);
 /* Проверить правильность достопри восстановления:
 * запустить "Гетти 0 -" из командной строки, введите фиктивные имя пользователя, остановка
 * запрос пароля, дайте ему тайм-аут. Без tcsetattr ниже
 * когда вы вернулись в командной строке, эхо будет еще.
*/
tcsetattr_stdin_TCSANOW(&г. tty_attrs);
 функции printf("\Р\nLogin истекло после %U секунд\р\н", таймаут);
fflush_all();
 /* с Unix API является повреждение мозга в отношении системного,
 * мы должны отменить его, иначе мы можем влиять на другие процессы */
ndelay_off(STDOUT_FILENO);
Для _exit(EXIT_SUCCESS);
}

[...]

инт login_main(АГДС, типа char **argv в) MAIN_EXTERNALLY_VISIBLE;
инт login_main(АГДС UNUSED_PARAM, типа char **argv в)
{

[...]

 /* Мы устанавливаем тайм-аут обработчик только _after_ мы сэкономили г. tty_attrs */
 сигнал(истечении отправляет, alarm_handler);
сигнализация(тайм-аут);

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

Альтернативную идею

Из пакета busybox' пример содержимое файла inittab:

# <действие>: допустимые действия включают: sysinit, респаун, askfirst, ждать, когда,
# перезагрузка, ctrlaltdel, и выключение.
#
# Примечание: askfirst действует так же, как респаун, но перед выполнением указанного
процесс # он отображает строку "Пожалуйста, нажмите клавишу Enter, чтобы активировать этот
# консоли." и затем ждет, пока пользователь нажмите Enter перед началом
# указанный процесс.

Так что вы могли бы просто изменить респаун в askfirst. Таким образом /ОГРН/логин после истечения этого времени просто уходит обратно , пожалуйста, нажмите "Enter"... подскажите, а не начинать /ОГРН/логин . спасибо.

+489
Justice Nelson 22 сент. 2019 г., 03:29:48

Теперь я понимаю, что это не совсем то решение, которое вы имели в виду, но я хотел бы указать вам и будущим пользователям интернета с подобными вопросами к утилиту rinetd(8), "перенаправление сервера" для TCP-трафика.

Обратите внимание, что это не требует никакой дополнительной пересылки и маршрутизации или ДНАТ (Нат таблицы в iptables) магии, при условии исходящий трафик перенаправляется на сервер и порт и входящий трафик на порт который утилиту rinetd прослушивает (для пересылки трафика) допускается также.

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

+426
billyduc 2 авг. 2017 г., 15:08:28

Я залогинен как пользователь я хочу, чтобы запустить приложение с графическим интерфейсом, как пользователю Б. пользователь, не root. Пользователь B Местные тоже, не удаленный, мне только нужны разные переменные среды. Я не хочу, чтобы запустить второй X, я хочу, чтобы они на том же дисплее. У меня нет проблем с программами, работающими в терминал, Су - ... работ. Для графического появляется сообщение об ошибке:

Инициализации приложения ошибка: не удалось подключиться к дисплей ":0.0"

или

ГТК-предупреждение **: не удалось открыть дисплей: :0.0

Есть хороший способ это исправить? В статье о правильном использовании команду xhost или что-то?

+408
Warren Smith 22 нояб. 2016 г., 19:52:17

Посмотри на Debian на компакт-диск часто задаваемые вопросы:

Пакеты сортируются по популярности: первый компакт-диск/DVD-диск содержит система установки и наиболее популярных пакетов. Второй содержит чуть менее популярных, третий еще меньше популярные из них и т. д. Вы, вероятно, понадобится только первый DVD (или первые два компакт-диска), если у вас нет очень специфических требований. (И в случае, если вам понадобится пакет, позже которой не на одном из компакт-дисков/DVD-дисков, которые вы скачали, вы всегда можете установить пакет напрямую из интернета.)

Тот же FAQ также есть ссылка на cdimage.debian.orgгде можно найти списки , которые вы просили.

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

+400
SiriusXM 26 авг. 2010 г., 16:58:04

Я скачал Debian Джесси(8) с официального сайта, вот именем:

в Debian-видео-8.0.0-на amd64 рабочего стола LXDE-десктоп

И я в настоящее время загружена на другой компьютер через USB, но он сказал, что установить Debian Сида на рабочем столе и в приложениях.

Что здесь происходит? Я просто схожу с ума или это Сид на Debian=нестабильна и не версии 8, я также проверил контрольную сумму и что было все в норме.

Вот цитата с сайта debians:

Нынешний "стабильный" дистрибутив Debian имеет версию 8, новинки Джесси.

и прямо над ссылкой на скачивание он скажет:

Официальные живые образы установки на "стабильный" релиз

+397
Shelly Henderson 1 янв. 2020 г., 09:39:47

Итак, в процессе отладки процесса сборки программного пакета я случайно выполнили команду РМ -РФ строить /* как не-root пользователь на моем ноутбуке. Я остановил команду, как только я увидел сообщение об ошибке отказ за попытку удалить содержимое файла/etc.

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

Мои непосредственные мысли, чтобы убедиться в моей домашней директории архивации текущей (я пользуюсь Crashplan, последнего резервного копирования около 10 минут, прежде чем моя ошибка), получить список установленных пакетов из ДНФ и заново установить ОС с нуля, но это кажется немного ядерного оружия.

Есть ли способ проверить, какие файлы были удалены (вне моей домашней директории) и, возможно, восстановление ОС без переустановки?

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

+389
gauteh 10 нояб. 2015 г., 17:27:15

Наверное вы ищете sysdig

Например:

sysdig -а-с echo_fds
+351
user538669 22 апр. 2018 г., 02:46:43

Решение Арнаут работал для меня, но там немного ошиблись в нем. Монтирование в fstab должна быть такой (он заменил "связывать" и "нет"). БФ инструкция файл fstab.

# в /etc/fstab строчку
/дома/вар /вар не х-systemd не.требует=/дома,х-systemd не.автомонтирование,привязки к 0 0

Systemd в Маунт-ссылка здесь : https://www.freedesktop.org/software/systemd/man/systemd.mount.html

+349
varinodd 17 июн. 2015 г., 10:19:58

У меня есть сценарий, целью которого является:

  • Для получения списка файлов, получить конкретное количество для каждого файла (это последовательность данных, чтобы быть точным) и хранить их в массив1
  • Используя массив1, найти наименьшее число массив1
  • Исходя наименьшее количество в массив1, разделить все его числа в массив1 массив2 сделать.

Мой сценарий выглядит следующим образом:

#!/УСР/бин/Баш



Использование() { Эхо "использование: Баш $0 [-б <в-БАМ-файлы-реж>] [-о <из-реж>] [-с <chromlen>]" 1>&2; покинуть 1; }

если (($# == 0))
тогда
Использование
интернет



а команде getopts ":Б:О:С:ч" опт
делать
 случае $опт в
 б ) BAMFILES=$OPTARG
;;
 о ) OUTDIR=$OPTARG
;;
 с ) CHROMLEN=$OPTARG
;;
 H ) использование
;;
 \? ) Эхо "недопустимый параметр: -$OPTARG выходе" >&2
выход
;;
 : ) вариант -$Эхо "OPTARG требует аргумента" >&2
выход
;;
эсок
сделано



если [ ! -д ${OUTDIR} ]
тогда
 команды mkdir ${OUTDIR}
интернет

если [ ! -д ${OUTDIR}/темп ]
тогда
 команды mkdir ${OUTDIR}/темп
интернет

если [ -д ${BAMFILES} ]
тогда
 Эхе -е "\nProcessing БАМ файлы из следующей директории: ${BAMFILES} \п "
интернет



продувки модуля 
модуль samtools нагрузки 
модуль bedtools нагрузки 
модуль ucsctools нагрузки 
модули Эхо -э "загружаются\Н"



FIRSTBAM=$("ЛС" $BAMFILES/*БАМ | глава -1)
Мин=$(вид-с-Ф samtools 260 ${FIRSTBAM} )
Эхо -э "минимальное количество читает в настоящее время равен $min от $FIRSTBAM (первый БАМ в каталог)\Н"



объявить-BAMREADS
Эхо "массив BAMREADS инициализируется"

для меня в $("ЛС" $BAMFILES/*БАМ)
делать
 Эхо", подсчет читает в $я "
 BAMREADS[$я]=$(samtools вид -с-F 260 $я)
сделано



для меня в ${BAMREADS[@]}
делать
 если [[ $я -ЛТ $мин ]]
тогда
Мин=$я
интернет
сделано

Эхо -э "минимальное количество прочтений, который будет использоваться для масштабирования составляет $мин \п"



объявить-BAMFRACS
Эхе -е "массив BAMFRACS инициализируется"

для меня в ${!BAMREADS[@]}
делать
 BAMFRACS[$я]=$(awk, С -в переменная var1=${мин} -в переменная2=${BAMREADS[$я]} 'начать { х= переменная var1 / var2 будет; функции printf "%.8ф", х }')
сделано



для меня в $("ЛС" $BAMFILES/*БАМ)
делать

 Образец=`базовое имя $я`
ОБРАЗЕЦ=${ОБРАЗЕЦ%.БАМ}
 пример Echo $

 если [[ ${BAMREADS[$я]} -экв $мин ]]
тогда

 Эхо "образец $мне не требуется масштабирование"

 команда="ср $я ${OUTDIR}/темп/${образец}.масштабируется.БАМ;
 genomeCoverageBed -БГ -сплит -ибам ${OUTDIR}/темп/${образец}.масштабируется.БАМ > ${OUTDIR}/темп/${образец}.bedgraph;
 СЭД -Е 'С/^/ЧР/г;С/Т/М/Г' ${OUTDIR}/темп/${образец}.bedgraph > ${OUTDIR}/темп/${образец}.модифицированных.bedgraph;
 сортировка -К1,1 -К2,2Н ${OUTDIR}/темп/${образец}.модифицированных.bedgraph > ${OUTDIR}/темп/${образец}.отсортированный.bedgraph;
 bedGraphToBigWig ${OUTDIR}/темп/${образец}.отсортированный.bedgraph $CHROMLEN ${OUTDIR}/${образец}.БВ"
 #Ят ${OUTDIR}/темп/${образец}.*

еще

 команда="вид -с samtools ${BAMFRACS[$я]} -б $я > ${OUTDIR}/темп/${образец}.масштабируется.БАМ;
 genomeCoverageBed -БГ -сплит -ибам ${OUTDIR}/темп/${образец}.масштабируется.БАМ > ${OUTDIR}/темп/${образец}.bedgraph;
 СЭД -Е 'С/^/ЧР/г;С/Т/М/Г' ${OUTDIR}/темп/${образец}.bedgraph > ${OUTDIR}/темп/${образец}.модифицированных.bedgraph;
 сортировка -К1,1 -К2,2Н ${OUTDIR}/темп/${образец}.модифицированных.bedgraph > ${OUTDIR}/темп/${образец}.отсортированный.bedgraph;
 bedGraphToBigWig ${OUTDIR}/темп/${образец}.отсортированный.bedgraph $CHROMLEN ${OUTDIR}/${образец}.БВ"
 #Ят ${OUTDIR}/темп/${образец}.*

интернет

 команду echo $ | qsub -в-ухо -о $OUTDIR -е $OUTDIR -л tmem=10г -л h_vmem=10г -л h_rt=3600 -Н bigwig_${образец}

сделано

 задача Эхо "завершен: преобразование рабочих мест представлен кластер"

У меня 2 вопроса:

  • Насколько я понимаю, bash это не очень хорошо делать арифметические математика: т. е. делать какие-либо операции (сложение, деление и т. д.) с привлечением вещественных чисел. Однако, учитывая тот факт, что var1 и var2 всегда целые в мой скрипт (см. $мин и все значения массив1), мы согласны, что это не проблема? Т. е. мои итоги в цифрах поплавок, но он использует целые числа, так что это не проблема, верно?

  • Это не очень понятно, в клиент StackExchange, потому что нет подсветки синтаксиса, но я заметил, что значение переменной var2=${BAMREADS[$я]} часть моего скрипта не совсем верно. Я использую нано и на мой терминал, вместо того, что все ${BAMREADS[$я]} в красный, как и другие переменные (такие как ${Мин}), только ${BAMREADS[$I часть скрипта появляется в красном цвете, т. е. концовка ]} не красный. Сценарий, кажется, ведет себя, как я ожидаю, и все вроде бы работает.. так что я не совсем понимаю, почему это все не в красный.

Это как мой скрипт выглядит в нано (обратите внимание, как ]} в ${BAMREADS[$я]} в команду awk, а позднее во втором $команда не в красный, как это должно быть):

enter image description here

Однако, если вставить этот код в https://www.shellcheck.net/вы не получаете любую проблему с точки зрения выявления в этой части скрипта. Так как нано и shellcheck не говоришь мне то же самое? Я использовал этот скрипт и это, кажется, работает для меня, но я обеспокоен подсветка этого вопроса..

Спасибо

+316
Olizerro 1 окт. 2014 г., 21:52:22

С Читать предотвратит \ с побег характер, так как не введите \ или не используют .

Так что попробовать его следующим образом:

читать -рэп "папки: папка" 
найти "$папку" | сортировка -рН

и войти в/MNT/мой folderX без всяких побегов

или

читай-ЕР "папки: папка" 
найти "$папку" | сортировка -рН

и войти в/MNT/мой\ folderX (или в/MNT/мой folderX без отдыха-вы сможете прочитать всю строку в папке, так что вам не нужно, чтобы избежать его в любом случае)

+305
smokinguns 7 февр. 2015 г., 13:39:08

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

Слой5: файловая система | пользователя | клиента
Layer4: шифрование | Лукс | клиента
3 Уровня: Транспорт ?
Слой2: разделы | пользователей-часть |серверной части| сервер
Слой1: рейд | для mdadm RAID массив 5-6Тб | сервер
Layer0: аппаратное обеспечение: | 3 ТБ | 3 ТБ | 3 ТБ | сервер

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

+301
Severgun 29 июл. 2013 г., 12:48:59

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

Учитывая важность удаления легко, что предполагает несколько подходов:

  1. Похоже, у вас уже есть какой-то способ быстрого создания пользователей. Есть хороший шанс, что это LDAP, например. LDAP можно хранить открытый SSH-ключ, и вы можете закрепить это в случае sshd с помощью параметра конфигурации AuthorizedKeysCommand. Например, если вы работаете допускается использование разных механизмов, sss_ssh_authorizedkeys предназначен для этого. (См., например, Редхат документы на допускается использование разных механизмов авторизованных ключей). Ключ добавление и удаление могут быть мгновенными, в худшем случае это обычно несколько секунд для распространения в LDAP. Можно с большой долей вероятности полностью автоматизировать этот (и если у вас есть куча пользователей, вероятно, уже есть!), не требуя никакого вмешательства администратора.

  2. Если ваши серверы должны обрабатывать в автономном режиме проверки подлинности (и сверх того, что допускается использование разных механизмов можно сделать), другой подход заключается в использовании центра сертификации (ca) поддержка в OpenSSH. Это задокументировано в основном в SSH-ключей по странице “сертификаты” раздел. В основном настройки серверов твердотельные накопители доверять ЦС и автоматически получать обновления списков отзыва. Затем вы подписываете открытого ключа клиента с CA и дают сертификат клиенту. В этот момент клиент может зайти на все сервера с использованием указанного сертификата. Для отмены авторизации клиента, вы добавляете его в список аннулированных (как описано в следующем разделе В разделе человек). Ключевым дополнением является мгновенным, удаления зависит от того, как часто вы обновляете списки отзыва. К сожалению, нет ничего подобного OCSP для СШ КАС. Автоматизации (без админа помочь) добавляет возможность делать безопасно; снимает легко.

  3. Можно—как вы предлагаете—использовать общие, авто-установленная (или постоянно установленный на авто-монтирования не требуется) домашние каталоги так все сервера вижу тот же ~/.по SSH/authorized_keys — но это много накладных расходов, если иное не нужен общий $дома. Ключ добавление и удаление мгновенные довольно быстро, в зависимости от кэширования. Ключ управления, скорее всего, полностью выполнен пользователем, не администратором.

    3б. Ульрих Шварц указывает на то, что вы можете изменить местоположение пользователя файл авторизованных ключей; он не должен быть ~/.по SSH/authorized_keys. Так что вы могли бы поделиться каталог, содержащий авторизованных ключей файлы всех пользователей, и не имеют издержки полностью разделяет домашние каталоги.

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

+219
Padawan 31 янв. 2010 г., 14:41:24

Вы также можете попробовать использовать Gephi выступает. https://gephi.org/users/download/

+150
paulSFO 21 апр. 2012 г., 16:06:47

Конфигурации nginx'файлы не поддерживают блоки комментариев; они принимают только # в начале строки комментария. Вы также можете иметь действительное заявление по # , а затем комментарий на той же строке. (Источник.)

Если у вас есть между 30 и 50 строк в кювет, я хотел бы предложить, чтобы удалить блок (предварительно сделав копию файла), чтобы избежать путаницы.

+126
Man 20 апр. 2013 г., 08:33:14

На Linux:

$ сенсорного 1 12

Нет проблем,создать 1 и 12.

Два или HP-UX в 11.31:

$ сенсорного 1 12
дата: плохая конверсия

Я пробовал с Ланг=с, та же ошибка. Почему?

+111
Katz D Kool 11 апр. 2016 г., 12:20:50

Там может быть больше чем один способ сделать это. Но я рекомендую Вам отключить внутреннего звукового оборудования BeagleBone черный путем добавления optargs=capemgr.disable_partno=ББ-BONELT-HDMI и в конце /boot/uEnv.txt файл. И перезагрузить ваш совет со звуковой картой связаны. Это сделает вашу звуковую карту в качестве оборудования по умолчанию . Поэтому каждый звук процесс будет выбор звуковой карты автоматически.

+90
CMack 5 февр. 2019 г., 22:09:20

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

найти -типа F -размер +100к -экзек стат {} +

или получить конкретную outout например файлы permissions:

найти -типа F -размер +100к -экзек стат-С %а {} +

Или написать скрипт, который использует только стат:

#!/бин/Баш
на файл в $Home/*; делать
 если [ -Ф "$файл" ] && [[ $(стат -с %с "$файл") -Гэ 100000 ]]; затем
 файл Echo"$"
интернет
сделано
+52
varun Gakhar 6 февр. 2018 г., 23:32:55

Вы можете использовать bash е и тр для этого гистограммы:

а читать наименование num; делать 
 точки=$(Е "%*ь" $ням ""| тр "" .)
 функции printf "%з\т%з\п" "$имя" "$дотс"
сделал <<конец
корень 5
xuser 3
юсер 1
Конец
корень .....
xuser ...
юсер .
+36
Voronov Alexander 27 июл. 2011 г., 14:19:40

Я бегу Manjaro Linux с KDE и наслаждаюсь. Но открытие файла Office & Zip-это лаваш для меня. Посмотрите на скриншоте. Мой zip-файл открывается в LibreOffice (или WPS). И если я исправить в свойствах файла в момент его открытия на ковчеге, то офисные файлы открывать ковчег. Тип файла, кажется, добавляются автоматически. Я не могу открыть любой zip или офис файл без правой кнопки мыши.

Странная проблема. Интересно, если я единственный, тоже страдают от этого. Хотя, никакие другие типы файлов находятся в конфликте, как этот, кроме ZIP и офисных файлов. Я не смог найти каких-либо настроек/вариантов, чтобы исправить это. Duckduckgoing также не дает каких-либо пост. Любой вход помощь будет хорошо оценили. Спасибо.office-zip filetype conflict

+27
Abdullahi Usman 9 июн. 2019 г., 14:47:51

Поскольку никто не имеет реального ответа, вот мой ужасный Хак. Некоторые снаряды (*rxvt например) имеют параметры, которые позволяют заставить оболочку. Итак, в вашем .Xdefaults ивы можете добавить что-то сродни

urxvt256c-мл:loginShell: правда

Это означает, что все urxvt256c-мл терминала, вы запустите появится регистрационная оболочка по умолчанию.

Это поможет вообще?

+26
DeeperID 27 февр. 2018 г., 18:10:49

Это удалит первые 4096*4096=16 МБ и последнем 512*4096=2 Мб на жестком диске, которые содержат важные структуры полезны для восстановления. Я предполагаю, что этот код был размещен вредоносного.

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

+20
mattyk 20 окт. 2013 г., 10:58:36

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