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

Если Вы храните снимки в файлах, в противоположность в файловой системе (например, с zfs receive), я боюсь, это не возможно.

ZFS на стороне получения

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

ssh myserver 'zfs send -i pool/dataset@2014-02-04 pool/dataset@2014-02-05' | \
  zfs receive

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

Другая файловая система на стороне получения

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

ssh myserver 'zfs send -i pool/dataset@2014-02-04 pool/dataset@2014-02-05' \
  > incremental-2014-02-04:05

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

Возможные решения

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

Или Вы могли изучить другие решения для резервного копирования. Существует rsnapshot, который использует rsync и жесткие ссылки. Это делает очень хорошее задание при вращении и является очень эффективной пропускной способностью, так как это требует полного резервного копирования только однажды.

Затем существует bareos. Это делает incrementals, которые являются bandwith-и экономящий место. Это имеет очень хорошую функцию; это может вычислить полное резервное копирование от ряда incrementals. Это позволяет Вам удалить старый incrementals. Но это - довольно сложная система и предназначенный для больших установок.

Лучшее решение, однако, состоит в том, чтобы использовать ZFS на стороне получения. Это будет эффективная пропускная способность, устройство хранения данных, эффективное и намного быстрее, чем другие решения. Единственное действительно недостаток, о котором я могу думать, состоит в том, что у Вас должен быть минимум 8 GiB память ECC на том поле (Вы могли бы согласиться с 4 GiB, если Вы не выполняете сервисов и только используете его для zfs receive).

2
24.09.2014, 09:10
2 ответа

Да, в основном, инструкции из Ubuntu или Mint - это то же самое, что и в Arch. Arch - это более удобная система разработки. На самом деле не предназначен как стабильный выпуск для учетной записи типа киоска. Но это может быть сделано. Получите правильные команды chmod и правильные настройки adduser и passwd и проверьте их.

1
27.01.2020, 22:00

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

В этом случае можно объединить два вызова grep/sed в один вызов GNU grep, sed или awk. Легко с sed: передайте опцию -n , чтобы вывести только явно напечатанные строки и напечатать строки, на которых сделана подстановка.

echo "$(
    iw dev wlp1s0 link |
    sed -nr -e 's/^\s*SSID:\s//p' -e 's/^\s*signal:\s//'
)"

Есть одно отличие от исходного сценария: SSID и значения сигнала печатаются в том порядке, в каком они появляются на выходе iw . Если бы вы хотели быть независимыми от этого порядка, это было бы громоздко с седом, так что неловкость была бы инструментом выбора. При таком подходе получить выходные данные на одной линии так же просто. Следующий сценарий печатает последнее значение для каждого настраивать ( iw выводит только одно, поэтому в данном конкретном случае это не имеет значения); измените, например, ssid = $0 на ssid = ssid «» $0 , чтобы напечатать их все.

iw dev wlp1s0 link | awk '
    $1=="SSID:" {sub(/[^:]*:[[:space:]]*/,""); ssid = $0}
    $1=="signal:" {sub(/[^:]*:[[:space:]]*/,""); signal = $0}
    END {print ssid, signal}
'

Если требуется отправить выходные данные команды в два разных фильтра, можно использовать tee и передать ему подстановку процесса . Это признак bash (от ksh93, присутствует также в zsh, но не в plain sh), обобщающий трубы. Команда tee видит имя файла, обозначающее канал, подключенный к указанной команде.

iw dev wlp1s0 link | tee >(
    grep '^\s*SSID:\s' |
    sed -r 's/^\s*SSID:\s//'
  ) |
    grep '^\s*signal:\s' |
    sed -r 's/^\s*signal:\s//'

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

-121--133376-

Вы пытаетесь выполнить $ file . Вместо этого, вы должны повторить его:

# ...
if echo "$file" | grep 'o' ;
# ...

Обратите внимание, что grep уже напечатает имя файла, поэтому вы должны замолчать его (например, grep -q 'o' или grep 'o' >/dev/null ).

Вы также передаете -l ls , что вы не хотите делать. ls -l печатает имя и атрибуты файла, и вы будете сопоставлены с ними.

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

P.S.: Как отмечали другие, для начала не следует использовать ls .

-121--78137-

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

Безопасность Отключите доступ к любой командной строке

https://help.gnome.org/admin/system-admin-guide/stable/lockdown-command-line.html.en

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

Отключить список пользователей на экране входа

Как отключить список пользователей GDM3 экране входа? '

Отключить перераспределение для пользователя

https://help.gnome.org/admin/system-admin-guid/stable/lockdown-repartitioning.html.en

Отключить параметры изменения

https://help.gnome.org/admin/system-admin-guide/stable/dconf-lockdown.html.en

Отключить сохранение файлов:

https://help.gnome.org/admin/system-admin-guide/stable/lockdown-file-saving.html.en

Отключить печать (например, из firefox или libreoffice)

https://help.gnome.org/admin/system-admin-guide/stable/lockdown-printing.html.en

Нет установленного пакета ключей

Также можно заблокировать mozdown Попробуй гуглить тему.

3
27.01.2020, 22:00

Теги

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