Есть ли причины НЕ использовать LVM?
С его плюсами и возможностями всё ясно. А есть ли хоть какие-нибудь причины его НЕ использовать? Просветите, пожалуйста.
С его плюсами и возможностями всё ясно. А есть ли хоть какие-нибудь причины его НЕ использовать? Просветите, пожалуйста.
Поставил на старый компьютер Linux Mint, решил не городить LUKS/Cryptsetup а просто поставил галочку «Шифровать домашнюю папку». Посмотрев выхлоп mount, я понял, что используется ecryptfs. При запуске системы я ввожу только один пароль - пароль логина пользователя в MDM. Я понимаю принцип работы ecryptfs, но вот вопрос - если от меня не требуется пароль для отпирания данных в домашнем каталоге, то он ведь не потребуется и от врага? ecryptfs - решето, или за данные можно реально не беспокоиться?
В стандартном конфиге Awesome вот такой код находится сразу после загрузки стандартных модулей:
-- Handle runtime errors after startup
do
local in_error = false
awesome.connect_signal("debug::error", function (err)
-- Make sure we don't go into an endless error loop
if in_error then return end
in_error = true
naughty.notify({ preset = naughty.config.presets.critical,
title = "Oops, an error happened!",
text = tostring(err) })
in_error = false
end)
end
-- }}}
Вот у меня есть корневая файловая система. Допустим, я создаю её снапшот. После того, как я его куда-то смонтирую, все изменения пишутся туда. Если я его отмонтирую - то изменения будут применены к корню. Если я его отмонтирую и сделаю lvconvert --merge, то изменения будут отменены, а снапшот удалится. В связи с этим возникают следующие вопросы:
1.) После создания снапшота, могу ли я как-нибудь оставить его, не удаляя, но и не применяя изменения, чтобы при следующей загрузке выбирать, загрузиться ли мне в состояние системы до снапшота, или в состояние снапшота?
2.) Могу ли я такое проделывать с несколькими снапшотами? Например, на основе одного и того же логического тома создать несколько снапшотов, каждый - со своими изменениями, и выбирать, хочу ли я загрузиться в основную систему, или в каждый из снапшотов, а так же, при желании, объединить один из снапшотов с основной системой?
3.) Почему merge означает отмену изменений? merge - это, вроде, слиться/объединить.
Заранее спасибо.
Создал снапшот логического тома, который у меня представляет /. Действовал по этому ману: http://www.tecmint.com/take-snapshot-of-logical-volume-and-restore-in-lvm/
Снапшот создался, я записал в корень 4 гига нулей в отдельный файл, lvdisplay показал, что на снапшоте теперь занято столько-то процентов. Всё нормально. Делаю
# lvconvert --merge /dev/путь_к_снапшоту
Получаю выхлоп:
filesystem in use, merging will happen on next activation of имя_группы_томов.
Окей, перезагружаюсь. При включении ловлю:
Buffer I/O error on device dm-4, logical block 16
Загрузка проходит нормально, снапшота больше нет, нулей в корне тоже нет. В моём представлении, нули должны были оказаться в корне, снапшот - исчезнуть. Что я делаю не так? Как правильно создавать снапшот корня, если я хочу, например, обновиться, потестировать, и либо принять изменения, либо откатиться? Заранее спасибо
Какой из этих подходов корректнее? Как я понимаю, во всех трёх случаях функционал mpd будет одинаковым, а 1 от второго отличается только тем, что в первом mpd запускается по запросу, а во втором - висит постоянно.
Помню, когда у меня был предыдущий телефон на Android, после рутования и установки Busybox у меня появился бинарник ssh, и я его мог запускать через мой любимый Android Terminal Emulator. Сейчас у меня новый телефон, root, Busybox установлены, а ssh, который я мог бы запустить просто из командной строки, нет. ssh-клиенты типа JuiceSSH и Connectbot не кажутся удобными - у Android Terminal Emulator очень удобный доступ к |, tab и прочим функциям терминала. Есть ли простой способ вкатить такой клиент на мобилу? ADB есть, root есть. Заранее спасибо
Я заметил, что нет такой фичи apt-{get,cache,mark}, которой не было бы у aptitude, но у aptitude гораздо более удобное управление и поиск.
В связи с этим вопрос - есть ли причины предпочесть apt-* и использовать его вместо aptitude? Заранее спасибо
Сейчас расклад такой - через некоторое время бездействия монитор сначала начинает показывать чёрный экран, а ещё через некоторое время - переходит в режим энергосбережния. Никакие скринсейверы не стоят. Хочу, чтобы он не врубал чёрный на весь экран, а просто переходил в режим энергосбережения. Попробовал xset s off; xset s noblank; xset s noexpose
xset q
Keyboard Control:
auto repeat: on key click percent: 0 LED mask: 00000000
XKB indicators:
00: Caps Lock: off 01: Num Lock: off 02: Scroll Lock: off
03: Compose: off 04: Kana: off 05: Sleep: off
06: Suspend: off 07: Mute: off 08: Misc: off
09: Mail: off 10: Charging: off 11: Shift Lock: off
12: Group 2: off 13: Mouse Keys: off
auto repeat delay: 660 repeat rate: 25
auto repeating keys: 00ffffffdffffbbf
fadfffefffedffff
9fffffffffffffff
fff7ffffffffffff
bell percent: 50 bell pitch: 400 bell duration: 100
Pointer Control:
acceleration: 2/1 threshold: 4
Screen Saver:
prefer blanking: no allow exposures: no
timeout: 0 cycle: 600
Colors:
default colormap: 0x20 BlackPixel: 0x0 WhitePixel: 0xffffff
Font Path:
/usr/share/fonts/X11/misc,built-ins
DPMS (Energy Star):
Standby: 600 Suspend: 600 Off: 600
DPMS is Enabled
Monitor is On
, но он всё равно сначала темнеет. Как реализовать нужное?
Вариант на bash: http://pastebin.com/sWx7C4XC
Вариант для включения в .zshrc (есть автодополнение): http://pastebin.com/n9zz7s9u
Частично сам, частично не сам, набросал вот такую вещь. Замысел таков: вместо многочисленных лаунчеров типа xfce4-appfinder, gmrun и прочее, мне кажется более удобным запускать эмулятор терминала с соответствующей геометрией, и там запускать команды. Для того, чтобы это было больше похоже на лаунчер, и служит эта функция/этот скрипт.
Суть его такова: проверяем аргумент на соответствие шаблону (строки 6-15), если подходит - выполняем то или иное действие для строки, из которой убран, собственно, идентификатор (для примера - гуглинг по g:запрос и открытие википедии по w:страница). Затем, если то, что ввёл пользователь - это исполняемый файл в $PATH, то выполнить его (способы поиска в $PATH для bash и zsh разные). Дальше - если то, что ввёл пользователь, не находится в $PATH, то проверить - есть такой файл? Если нет, то открыть строку через exo-open (так как там может быть протокол http://, ftp:// или ещё что-то, не являющееся файлом, но открываемое exo-open). Если же это - файл, то проверить его на то, исполняемый ли он. Если исполняемый - то выполнить, иначе - открыть через exo-open.
Если какое-либо из действий было успешно - то открепить запущенное от терминала и закрыть оболочку (если запускается, как скрипт, то сам терминал не закроется, а просто прекратится выполнение скрипта с отвязкой запущенного от терминала. В случае же запуска, как функции zsh, закроется сам zsh, таким образом, будет поведение, как у лаунчеров: набрал, enter, лаунчер закрылся, команда выполнилась).
Вместо exo-open можно использовать xdg-open, kde-open, gnome-open — по желанию. Результат будет примерно одинаковым.
Реализовано ещё не всё, что хотелось бы. Конкретно, мне хотелось бы добавить обработку опций: например, чтобы при -t команда выполнялась в терминале, но я не знаю, как сделать обработку опций так, чтобы это не конфликтовало с основным аргументом функции/скрипта. Буду рад подсказкам. Все желающие приглашаются к тестированию, допилу, указанию на костыли и ошибки и прочее.
Запускать так: если zsh, то всё со второй ссылки добавить в конец .zshrc, и вызывать по «xo строка». Чтобы работало автодополнение, надо его включить в zsh (autoload -Uz compinit, вроде)
Если запускать, как отдельный скрипт на bash - то всё с первой ссылки положить в файл, сделать ему chmod +x и запускать по ./файл строка.
Видео-демонстрация того, как я это использую: https://dropmefiles.com/PUv3I (.ogv файл)
Здравствуйте.
Мне известно, что Bash и Zsh не полностью совместимы друг с другом. В связи с этим такой вопрос: прав ли я, полагая, что это совершенно неважно? Приведу свои доводы:
1.) Есть два режима использования командного интерпретатора - интерактивный (когда пользователь вводит команды) и неинтерактивный (когда интерпретатор выполняет какой-либо скрипт).
2.) Есть два способа запустить скрипт. Либо он делается исполняемым и вызывается по пути к нему, либо вызывается интерпретатор и ему указывается путь к скрипту.
3.) В первом случае интерпретатор выбирается автоматически исходя из shabang в начале скрипта.
4.) Во тором случае интерпретатор указывает сам пользователь.
5.) При этом, большая часть shell-скриптов написана совместимо с sh. Те, что не написаны совместимо с sh, совместимы с bash. Поскольку bash обратно совместим с sh, любой shell-скрипт можно открывать интерпретатором bash и не промахнуться.
6.) На zsh/fish и других скрипты не пишут, поскольку основные отличия zsh/fish и прочих от sh и bash направлены на увеличение удобства интерактивного использования, а в написании скриптов бесполезны.
7.) Таким образом вопрос со скриптами решается сам собой: писать на bash/sh, выполнять bash'ем - и не прогадаешь. И в любом случае совсем не играет роли, какой интерпретатор используется, как основной.
8.) В режиме интерактивного использования всё определяется исключительно личными предпочтениями пользователя, потому что ни о какой совместимости при этом речи не идёт.
Правильны ли мои мысли?
Хочу себе запускатор, который работает по такому принципу - по кейбинду открывается окошко терминала с заданной мною геометрией, там я могу указать имя проги или имя файла для выполнения/открытия, жму ентер, окошко закрывается, программа выполняется.
Пока сделал так:
cat .zshrc
xo () {
xdg-open $1 &
disown
exit
}
xr () {
$1 &
disown
exit
}
xo ФАЙЛ
Файл открывается через xdg-open, окошко терминала уходит
По команде
xr команда
Выполняется команда, окошко терминала уходит.
Вроде, всё неплохо, но некоторые вещи далеки от идеала:
1.) Если вызываю xo (ожидается имя файла), то автодополнение zsh работает, как надо - предлагает имя файла. При этом, если я вызываю xr, мне надо, чтобы автодополнение предлагало пути из $PATH (как если бы я не вызывал xr, а просто набрал первую букву имени проги и жал Tab), однако, оно предлагает по-прежнему автодополнять пути (что ожидаемо, ведь оно считает, что xr - команда, а её аргумент - файл). Как бы мне сделать так, чтобы автодополнение после xr предлагало команды, а не файлы?
2.) Можно ли сделать так, чтобы по-умолчанию любая вводимая команда выполнялась так, как если бы она была аргументом функции xr? То есть, я себе вижу это так: я ввожу какую-то команду, как если бы речь шла об обычном zsh/bash без каких-либо функций (автодополнение работает, как обычно), жму enter - она выполняется с отвязкой от shell, shell закрывается. Либо же я могу ввести xo ФАЙЛ и он откроется так, как полагается с учётом той функции xo.
Буду очень благодарен за все советы.
Мне нужно из скрипта запустить программу, так, чтобы shell не ждал её завершения (а сразу получал управление назад), и чтобы закрытие shell не убивало программу. Как это сделать?
gmrun умеет следующее: если указан путь к файлу, то открыть его программой, определённой в конфиге для конкретного расширения. Например:
EXT:doc = libreoffice %s
Скажите, пожалуйста, есть ли способ заставить его открывать все файлы через xdg-open по умолчанию? Я попробовал EXT:all, EXT:*, EXT:, EXT:«» (всё, что пришло в голову) - не работает.
Зато работает, если перечислить все расширения через запятую:
EXT:doc,pdf...
Но это долго, мучительно и неуниверсально
Ищу что-то по тику xfce4-appfinder, krunner, rofi.
Требования:
Есть что-нибудь такое в природе? Заранее спасибо
Всем привет. Использую ext4 как основную файловую систему. Сейчас прогнал df -i на корень и на /home - увидел, сколько inode свободно, а сколько - занято. В принципе, то, что я увидел, меня не слишком беспокоит. Но как узнать, хватит ли их для полного заполнения ФС? Насколько я знаю, один inode создаётся на каждые N байт. Как бы посмотреть, чему равно это самое N?
Кстати, что вообще надо сделать (при создании ФС или после), чтобы гарантировать, что inode не кончатся раньше, чем кончится место?
Какие ФС выбрать для / и /home (по отдельности)?
Мне нужна максимальная надёжность и хорошая производительность. В хомяке содержимое смешанное, в / - стандартное для Linux-системы. Есть ли причины использовать какую-либо ФС, кроме Ext4? Весь функционал вроде снапшотов будет реализован посредством LVM.
Есть вот такой виджет для Awesome: https://awesome.naquadah.org/wiki/Volume_control_and_display
Принцип работы такой - каждые 0.2 секунды он дёргает amixer и получает информацию о звуке. Мне показалось это не очень изящным решением. Поскольку включение/выключение звука/изменение громкости у меня происходят через настроенные в Awesome бинды с помощью amixer, я попробовал добавить в эти бинды и команду update_volume(volume_widget). То есть, в function() для биндов добавил update_volume(volume_widget) и убрал автообовление. Работает, но не очень: на первое нажатие сочетания клавиш нет реакции. Т.е. вот так происходит отображение:
5% - (нажал +5) - 5% - (нажал +5) - 10% - (нажал -5) - 15% - нажал (+5) - 10%
Мне хотелось бы как-нибудь реализовать отображение актуальной громкости без необходимости получать инфу каждые N секунд, а чтобы она обновлялась при изменении. Есть ли такой способ для Awesome? Заранее спасибо
Рассмотрев все возможные варианты получения злодеем доступа к моему компютеру/моим дискам, я пришёл к выводу, что единственный сценарий, при котором шифрование данных на компьютере является необходимым и достаточным условием сохранности данных - это если кто-то просто крадёт мой компьютер/мои диски и я их уже не вижу больше в своей жизни.
Мне кажется крайне-крайне маловероятным, что это произойдёт с моим домашним стационарным компьютером. Прошу всех, кто задумывался об этом вопросе, высказать своё мнение на этот счёт: Какова вероятность того, что злодей ВНЕЗАПНО ворвётся в мою квартиру на >4 этаже, за несколькими дверьми, украдёт мой компютер и убежит с ним под мышкой? Имеет ли смысл предохранять данные на случай этого сценария? Естественно, вопрос укрепления самой квартиры не стоит, поскольку к нему любой человек относится серьёзно, безотносительно данных.
Мне бы хотелось, чтобы все логи journald были доступны в плейнтексте в /var/log. Как можно настроить его для такого поведения? Debian 8, Systemd.
следующие → |