Теневые копии на линукс

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

Dja
Сообщения: 2117
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 309 раз
Поблагодарили: 231 раз

Теневые копии на линукс

Сообщение Dja » 10 авг 2017, 05:27

sana-555 писал(а): где лучше располагать свои скрипты?
~/.scripts/
Новичок? - ознакомься с правилами

В поисках истины :grabli:


Автор темы
sana-555
Сообщения: 203
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 171 раз
Поблагодарили: 3 раза

Теневые копии на линукс

Сообщение sana-555 » 10 авг 2017, 10:22

Dja писал(а): ~/.scripts/
А тильда, это сокращенный путь /home/user?
Еще вопрос по поводу того, как вы запоминаете столько команд??...) Я, конечно понимаю, что ближайшие команды можно посмотреть стрелкой вверх, вниз. Также нашел команду history, но там столько повторений одних и тех команд... Научите как вы их запоминаете. Я, пока что, только копи паст нужных команд могу делать с сайтов, ну часто используемые запомнил, но есть команды которые редко используются. Есть ли возможность, например, сделать как то так: Открываем предположим файл, где по группам располагаются команды с комментами, нажал на эту строчку и команда скопировалась в терминал...) Ну я дал, из области фантастики...)) Ну или хотя бы простенький скрипт, по вставке одной определенной команды в терминал?

Аватара пользователя

Dja
Сообщения: 2117
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 309 раз
Поблагодарили: 231 раз

Теневые копии на линукс

Сообщение Dja » 10 авг 2017, 10:25

sana-555 писал(а):
А тильда, это сокращенный путь /home/user?
именно.
sana-555 писал(а): где по группам располагаются команды с комментами
можете посмотреть здесь и Команды консоли (terminal) в Linux Ubuntu
А так да... что чаще используешь, то и запоминаешь.
Новичок? - ознакомься с правилами

В поисках истины :grabli:


Unborn
Сообщения: 712
Зарегистрирован: 03 сен 2016, 10:36
Решено: 14
Благодарил (а): 2 раза
Поблагодарили: 109 раз

Теневые копии на линукс

Сообщение Unborn » 10 авг 2017, 10:31

sana-555 писал(а): Также нашел команду history, но там столько повторений одних и тех команд...
history -a; awk '!x[$0]++' ~/.bash_history > ~/.tmp && mv ~/.tmp ~/.bash_history;
Дубликаты уберёт.


Автор темы
sana-555
Сообщения: 203
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 171 раз
Поблагодарили: 3 раза

Теневые копии на линукс

Сообщение sana-555 » 10 авг 2017, 10:54

Unborn писал(а): history -a; awk '!x[$0]++' ~/.bash_history > ~/.tmp && mv ~/.tmp ~/.bash_history;
Почему то не удалила дубликаты...


slant
Сообщения: 251
Зарегистрирован: 21 июн 2017, 15:09
Решено: 4
Поблагодарили: 94 раза

Теневые копии на линукс

Сообщение slant » 10 авг 2017, 15:14

Unborn писал(а): slant, что ты простыни выкладываешь? Ты конкретнее ответь про объём базового снапшота у хоме-юзера на разделе для данных, которые, как правило, - картинки, музыка, видео, которые не сжимаются, прибавляются , да ещё по дефолту размер блока у btrfs 16К, про время создания базового снимка с такого объёма промолчу, всё-таки только один раз. На разделе для данных хоме-юзеру btrfs не нужна вообще. Для этого xfs давно придумали.
Если ты используешь btrfs на /, так и используй, но не нужно давать вредных советов. И btrfs - это ФС не для средних умов. Кроме снимков хомячки больше про неё ничего не знают. Обрадовались, откат можно безболезненно сделать если нарукожопил.
На счет данных в хомяке - ты путаешь сжатие и дедупликацию. И как я тебе отвечу про размер "базового" снапшота, если нету такого понятия в btrfs в том же смысле, что в lvm? И нет возможности непосредственно посмотреть, сколько места занимает подраздел в btrfs. Просто нету. Потому, что это место у него общее, с остальными подразделами/снапшотами, и часть занятых блоков данных тоже может принадлежать к нескольким подразделам/снапшотам одновременно. При создании снапшота, на сам момент создания - все его блоки. Т.е. нового места он потребует 0 - новых блоков не выделяется, данные не копируются. (За исключением метаданных). Меняться оно будет уже после.
Или ты прямо как Фрекен Бок - считаешь что на любой вопрос можно дать простой ответ? Так помнится Карлсон ей доказал, что не всегда. :)

А что до "системы не для средних умов" так ведь подобное можно сказать и про весь линукс в целом. И даже про компьютеры вообще. Может быть стоит пытаться остальных подтянуть в знаниях, а не уравниловкой заниматься? "Средние умы", вообще-то по техническим форумам не лазят. :) Или тут случай луддизма? :)


slant
Сообщения: 251
Зарегистрирован: 21 июн 2017, 15:09
Решено: 4
Поблагодарили: 94 раза

Теневые копии на линукс

Сообщение slant » 10 авг 2017, 15:37

sana-555 писал(а): Еще вопрос по поводу того, как вы запоминаете столько команд??...) Я, конечно понимаю, что ближайшие команды можно посмотреть стрелкой вверх, вниз. Также нашел команду history, но там столько повторений одних и тех команд... Научите как вы их запоминаете.
Две очень полезные возможности командной строки - клавиша TAB - автодополнение. В Минте оно работает не только с именами файлов и команд, но и большим количеством параметров различных команд тоже.
Например, я не пишу целиком "sudo aptitude install build-essential".
То что я набираю выглядит так: sud<tab> apti<tab> buil<tab>-<tab>
А на выходе получается первая строчка.

Вторая полезная возможность - CTRL+R и набрать фрагмент одной из предыдущих команд в истории - быстрый вывод ее в строчку. А далее можно подредактировать. :)
Ну а у меня еще в персональном списке must have - mc. Файловый менеджер вроде Total Commander или FAR. Очень помогает с навигацией по каталогам.

Ну а по синтаксису и применению - практически для каждой команды в линуксе есть подробный мануал. Вызывается командой: man <имя команды о которой нужна справка>

Если же я часто использую какую-то заковыристую команду с кучей параметров, но в моем случае меняется только один два (например имя файла) то я создаю bash скрипт с этой командой (и возможностью передать ему параметр) и забрасываю его в каталог ~/.bin
А чтобы можно было этот скрипт вызвать на выполнение простым набором - подправил ~/.profile добавив туда строчку (в конец файла):
PATH="$HOME/.bin:$PATH"
Решение конечно на любителя, и не будет работать, если хомяк монтируется с опцией noexec. Плюсом идет то, что эти скрипты лежат в моем собственном хомяке т.е. забекапятся и/или переедут автоматически при переносе хомяка в другую систему. Минусом - считается что для безопасности лучше запретить запуск программ из хомяка полностью. В общем - вопрос баланса удобства и защиты.


Unborn
Сообщения: 712
Зарегистрирован: 03 сен 2016, 10:36
Решено: 14
Благодарил (а): 2 раза
Поблагодарили: 109 раз

Теневые копии на линукс

Сообщение Unborn » 10 авг 2017, 16:10

slant писал(а): На счет данных в хомяке - ты путаешь сжатие и дедупликацию.
Что я путаю? В btrfs по умолчанию LZO.
slant писал(а): И как я тебе отвечу про размер "базового" снапшота, если нету такого понятия в btrfs в том же смысле, что в lvm?
У меня Ящерица была установлена с / на btrfs (сменил на хрен на ext4). Все снапшоты в скрытом каталоге в /. Можно полюбоваться на базовый, созданный при установке ОС и автоматом созданных при обновлениях. За месяц прилично набегает, т.к. корень гигантский никто не делает. Поэтому периодически очистка от старых. Так что всё видно и всё можно посмотреть. Так что, если хомячок на раздел с пополняемыми данными, не только добавление записей в файла, установит btrfs, и начнет клепать бестолково ежедневные снимки, то быстро осознает свою ошибку.
Да и Шапка, одна из разработчиков btrfs, отказалась от её дефолтной поддержки.
Пока btrfs актуальна только для корня.
А то нет понятия, нельзя посмотреть :-D


Unborn
Сообщения: 712
Зарегистрирован: 03 сен 2016, 10:36
Решено: 14
Благодарил (а): 2 раза
Поблагодарили: 109 раз

Теневые копии на линукс

Сообщение Unborn » 10 авг 2017, 16:39

sana-555 писал(а): Еще вопрос по поводу того, как вы запоминаете столько команд??...)
Обоину на первое время поставь с командами, например - http://brightwallpapers.com.ua/Tags/%D0 ... 8B%20Linux
Примелькается, что-то запомнишь. :smile:


slant
Сообщения: 251
Зарегистрирован: 21 июн 2017, 15:09
Решено: 4
Поблагодарили: 94 раза

Теневые копии на линукс

Сообщение slant » 10 авг 2017, 16:58

Unborn писал(а): Что я путаю? В btrfs по умолчанию LZO.
Снапшот в момент своего создания не занимает места не из-за сжатия, а потому что физически один и тот же блок данных (содержимое файла) принадлежит и родительскому подразделу, и снапшоту. При этом система (обычные программы вроде df) воспринимают такой файл как два разных, хотя физически на диске этот блок один! Действительно разными физически, эти блоки станут только в момент когда какая-то программа перезапишет файл на снапшоте или на родителе. В этот момент свободное место убавится. А сжатие тут не при чем.

За счет этого может возникнуть такая ситуация: у вас физический диск на 500GB, BTRFS. Вы заполнинили его на 400GB и создали 10 снапшотов подряд (получилось 11 подразделов c одинаковыми данными). Система радостно отрапортует, что у вас теперь 4400GB на диске, при наличии 100GB свободных (при условии, что все подразделы смонитрованы). Допустим, вы записали еще 20GB на любой из этих подразделов. Система отрапортует, что суммарно у вас теперь занято 4420GB и 80GB свободно.
А вот если вы не писали файлы а перезаписывали предыдущие - сколько будет показано как "занято всего" предугадать не получится, т.к. подраздел с перезаписанными данными может не изменить размера, но его данные перестанут быть одинаковыми с другими подразделами, и на это уйдет место. И вот это место будет отражено в "80GB свободных". И это будет реальная цифра в отличии от "занято всего".
Unborn писал(а): За месяц прилично набегает, т.к. корень гигантский никто не делает.
Из этой строчки я заключаю, что вы либо не в курсе особенности BTRFS - у всех подразелов и снапшотов BTRFS общее свободное место внутри одной FS. Размера как такового у них нету. Он увеличивается динамически, по мере надобности.
Либо вы поставили систему так, что / оказался в корне BTRFS, а не в отдельном подразделе. Что ломает половину ее преимуществ.
Unborn писал(а): Так что, если хомячок на раздел с пополняемыми данными, не только добавление записей в файла, установит btrfs, и начнет клепать бестолково ежедневные снимки, то быстро осознает свою ошибку.
Читаем заголовок темы. Человеку нужно средство аналогичное теневым копиям винды. Возможно вы с ними не сталкивались, но там теневые копии - вообще просто скопированные файлы в отдельном каталоге. Т.е. вообще никакой дедупликации. И старые копии тоже удаляются, а не накапливаются бесконечно. А если не удалять - "ошибка будет осознана" еще быстрее.

Аватара пользователя

Chocobo
Сообщения: 5110
Зарегистрирован: 27 авг 2016, 19:57
Решено: 122
Откуда: НН
Благодарил (а): 384 раза
Поблагодарили: 1330 раз

Теневые копии на линукс

Сообщение Chocobo » 10 авг 2017, 17:30

Не по теме
Unborn писал(а): Да и Шапка, одна из разработчиков btrfs, отказалась от её дефолтной поддержки.
Чуть уточню, они вывели её в разряд "устаревших", начиная с 7.4
Сдеовательно использовать её в рхелах уже смысла нет, сидим на xfs и дальше)
https://access.redhat.com/documentation ... ality.html


Автор темы
sana-555
Сообщения: 203
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 171 раз
Поблагодарили: 3 раза

Теневые копии на линукс

Сообщение sana-555 » 10 авг 2017, 17:40

slant писал(а): Если же я часто использую какую-то заковыристую команду с кучей параметров, но в моем случае меняется только один два (например имя файла) то я создаю bash скрипт с этой командой (и возможностью передать ему параметр) и забрасываю его в каталог ~/.bin
А чтобы можно было этот скрипт вызвать на выполнение простым набором - подправил ~/.profile добавив туда строчку (в конец файла):
PATH="$HOME/.bin:$PATH"
Можете пример показать?


slant
Сообщения: 251
Зарегистрирован: 21 июн 2017, 15:09
Решено: 4
Поблагодарили: 94 раза

Теневые копии на линукс

Сообщение slant » 10 авг 2017, 18:02

Удивительно, что BTRFS вообще в RedHat попала. (Хотя в общем-то она была там только в статусе technology preview). Она ведь до сих пор в статусе разработки - (продвинутые функции, RAID5, 6, онлайн дедупликация, и т.д.). А шапка - корпоративное решение, где надо, чтобы было все полностью закончено. А BTRFS даже статус стабильной получила сравнительно недавно, и статус этот только про основные функции. В общем - ничего удивительного.


Unborn
Сообщения: 712
Зарегистрирован: 03 сен 2016, 10:36
Решено: 14
Благодарил (а): 2 раза
Поблагодарили: 109 раз

Теневые копии на линукс

Сообщение Unborn » 10 авг 2017, 18:10

slant, какие подразделы, тома на простом разделе тебе автоматом создадутся? Это в дистрибутивах для корня настроено.
slant писал(а): какая-то программа перезапишет файл на снапшоте
Какая это программа, кроме утилиты ФС там что-то пишет?
slant писал(а): Либо вы поставили систему так, что / оказался в корне BTRFS, а не в отдельном подразделе.
Это не я, а установщик ОС. Я не думаю, что в Ящерице, где по дефолту btrfs для корня, что-то ломают преимущества.
Всё там как должно быть. Хомяк отдельным разделом не делал, он подтомом тоже нарисовался, но для него по уму сделано - автоматический снапшот раз в месяц, и его можно отключить прямо очень просто.
Это в теории всё там распределилось и хорошо, а в реале место на хрен кончилось.
А у кого SSD с 512б блоком, а писать будет по 16К, тут хоть lzo, хоть gzip да ещё CoW и снимок при каждом обновлении - место кончилось. А не делать снимки и отключить CoW?
slant писал(а): Из этой строчки я заключаю, что вы либо не в курсе особенности BTRFS - у всех подразелов и снапшотов BTRFS общее свободное место внутри одной FS. Размера как такового у них нету. Он увеличивается динамически, по мере надобности.
Да в курсе я всего, поэтому и отказался в пользу старушки ext4.
slant писал(а): Удивительно, что BTRFS вообще в RedHat попала.
Что удивительного? Оракул, Шапка, Фаджитца. Удивительно, что она в Убунту попала.


slant
Сообщения: 251
Зарегистрирован: 21 июн 2017, 15:09
Решено: 4
Поблагодарили: 94 раза

Теневые копии на линукс

Сообщение slant » 10 авг 2017, 18:30

sana-555 писал(а): Можете пример показать?
Ну вот например что у меня в файле ~/.bin/winrdp

Код: Выделить всё

#!/bin/bash
xfreerdp /v:$1 /w:1280 /h:800 /bpp:24 /aero /compression /clipboard /sound
Так я могу одной командой вроде winrdp <ip_or_name> зайти на windows машину с удобным мне размером окна RDP сессии, полной глубиной цвета, сжатием, включенной синхронизацией буфера обмена, и звуком который передается ко мне, и проигрывается на моей машине. Ну и если на той стороне семерка - aero эффекты тоже будут включены несмотря на удаленное подключение.
$1 - обозначает первый параметр командной строки.


slant
Сообщения: 251
Зарегистрирован: 21 июн 2017, 15:09
Решено: 4
Поблагодарили: 94 раза

Теневые копии на линукс

Сообщение slant » 10 авг 2017, 18:59

Unborn писал(а): slant, какие подразделы, тома на простом разделе тебе автоматом создадутся? Это в дистрибутивах для корня настроено.
Терминология btrfs - subvolume. Подраздел, или подтом.
Если в дистибутиве настроено использование корня FS без подразделов - это не в плюс дистрибутиву. Нормальное использование btrfs в простейшем случае выглядит так (в случае одного диска, sda):
/dev/sda1 - btrfs (он же корень btrfs, он же подтом 5, он же подраздел по умолчанию)
Далее монтируется через mount/fstab:
btrfs/@root - /
btrfs/@home /home
То что начинается с @ - подразделы, которые находятся на корневом подтоме. Сам символ "@" не обязателен, просто удобен чтобы отличить каталог от подраздела. Сам корневой подтом НЕ монируется.
Снапшоты хранятся в отдельном подтоме, например btrfs/@snap - этот подтом не примонтирован постоянно, что исключает случайный доступ. Монтируется только если нужен.
В корне btrfs кроме подтомов нету ничего.
Unborn писал(а): Это в теории всё там распределилось и хорошо, а в реале место на хрен кончилось.
Я не видел как было сделано в вашем случае, но подозреваю, что не совсем правильно. Любой инструмент можно сломать неправильным применением.
Unborn писал(а): А у кого SSD с 512б блоком, а писать будет по 16К, тут хоть lzo, хоть gzip да ещё CoW и снимок при каждом обновлении - место кончилось. А не делать снимки и отключить CoW?
А ничего, что btrfs разрабатывается с прямой поддержкой SSD? Оно понимает на HDD или на SSD находится, и ведет себя соответственно, минимизируя запись на устройство. (Отложенная запись, сначала формируется пакет, потом пишется единым куском). Так же во время создания FS учитывается тип носителя - на SSD по умолчанию только один блок метаданных, на HDD - два.
Unborn писал(а): Что удивительного? Оракул, Шапка, Фаджитца. Удивительно, что она в Убунту попала.
Убунту использует стандартное ядро с минимальными изменениями. BTRFS - официальная часть стандартного ядра еще со времен 3.x, когда она даже стабильной не считалась. Соответственно, все дистрибутивы на стандартном ядре 4.х имеют поддержку btrfs.


Автор темы
sana-555
Сообщения: 203
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 171 раз
Поблагодарили: 3 раза

Теневые копии на линукс

Сообщение sana-555 » 10 авг 2017, 19:24

sana-555 писал(а): Почему то не удалила дубликаты...
Пардон...), работает, только после ввода команды нужно закрыть терминал и после очередного открытия, дубликатов нет..)
slant писал(а): CTRL+R
Тоже хорошая комбинация, только бы еще была возможность выбора всех вводимых команд из истории.


Unborn
Сообщения: 712
Зарегистрирован: 03 сен 2016, 10:36
Решено: 14
Благодарил (а): 2 раза
Поблагодарили: 109 раз

Теневые копии на линукс

Сообщение Unborn » 10 авг 2017, 19:43

slant писал(а): (Отложенная запись, сначала формируется пакет, потом пишется единым куском).
Да причём отложенная запись? vm.dirty_writeback_centisecs= поставь по своему разумению. Это не зависимо от ФС.
slant писал(а): Убунту использует стандартное ядро с минимальными изменениями. BTRFS - официальная часть стандартного ядра еще со времен 3.x, когда она даже стабильной не считалась. Соответственно, все дистрибутивы на стандартном ядре 4.х имеют поддержку btrfs.
Возьми исходник Убунту-Минтовского ядра, да хоть ванильного, и посмотри поддержка каких ФС там включена. Если ты при установке ОС выбрал btrfs, это ещё не значит, что по умолчанию в ядре она была включена.
slant писал(а): Оно понимает
Она ничего не понимает. Это ядро понимает.


Автор темы
sana-555
Сообщения: 203
Зарегистрирован: 21 июл 2017, 17:38
Благодарил (а): 171 раз
Поблагодарили: 3 раза

Теневые копии на линукс

Сообщение sana-555 » 10 авг 2017, 19:55

slant писал(а): xfreerdp /v:$1 /w:1280 /h:800 /bpp:24 /aero /compression /clipboard /sound
Чем ваше написание лучше этого:? Двойные стандарты, в вашем случае больше параметров можно ввести?
xfreerdp -u sana -p 123 -g 800x600 192.168.1.41


slant
Сообщения: 251
Зарегистрирован: 21 июн 2017, 15:09
Решено: 4
Поблагодарили: 94 раза

Теневые копии на линукс

Сообщение slant » 10 авг 2017, 20:59

sana-555 писал(а): Чем ваше написание лучше этого:? Двойные стандарты, в вашем случае больше параметров можно ввести?
Это новый синтаксис ключей xfreerdp. Старый вариант пока поддерживается как legacy, но грозятся его вообще убрать со временем. Так что лучше привыкать к новому уже сейчас. https://github.com/FreeRDP/FreeRDP/wiki ... eInterface
У меня там, кстати, не совсем канонично написано, но работает.

Вернуться в «Параметры и оптимизация»