Использование диска в другой файловой системе

Существует вероятность ошибки при настройке ОС (особенно если вы не использовали ISO-файл, предоставленный официальным веб-сайтом Linux Mint).
Можно попробовать использовать команду startx , если установлена минималистичная версия среды ядра Linux Mint.
Лучше всего выполнить команду which startx , чтобы узнать, существует ли команда startx , и если она есть, то используйте ее.
Если команда no startx отсутствует, попробуйте переустановить Linux Mint с нуля еще раз.
Если проблема по-прежнему существует, перейдите на страницу /boot и проверьте наличие неисправного файла. Я боюсь, что если это не сработает, вы, возможно, захотите использовать свой первый диск для Linux Mint и избавиться или переместить Windows.

-121--229901-

Можно использовать:

sed "s/'"'/&\\&&/g
     s/.*/'"'&'"'/
' <

Для безопасной оболочки строки значения на строку.

Shell в зависимости от того, вы можете также иметь возможность сделать:

printf %q\\n "$arbitrary_value"

Хотя я обычно предпочитаю делать:

a=$(alias "a=$arbitrary_value" a); a=${a#*=}

Более ручной подход может выглядеть как:

sq(){ set \' "$1"
      while case $2 in (*\'*) :;;
      (*) ! RETURN="$1$2'"     ;;esac
      do  set "$1${2%%\'*}'\''" "${2#*\'}"
      done
}

... что, по крайней мере, без вилки.

-121--16440-

Вас может заинтересовать S3FS , пользовательская файловая система FUSE , позволяющая монтировать Amazon S3 места хранения в локальном дереве файловых систем. Существуют также аналогичные системы для Google Drive , Azure и других - ключевым словом поиска для использования является fuse .

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

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

Системы S3-based, как правило, также работают с другими поставщиками, поддерживающими тот же API.

0
19.10.2014, 21:30
2 ответа

Вот сценарий Bash / awk для этого:

#!/bin/bash
find . -type f -printf '%s\n' | awk '
    function ceil(number) {
        if (number == int(number)) {
            return (number);
        }
        return int(number) + 1;
    }

    function ceilWithUnit(number, unit) {
        return ceil(number / unit) * unit;
    }

    BEGIN {
        blockSize = 32 * 1024;
        fileSizeSum = 0;
        diskUsage = 0;
    }
    {
        diskUsage += ceilWithUnit($0, blockSize);
        fileSizeSum += $0;
    }
    END {
        printf("File count: %u\n", NR);
        printf("Average size: %.2f KB\n", fileSizeSum / NR / 1024);
        printf("Disk usage with %d bytes blocks: %.2f MB\n", blockSize, diskUsage / 1024 / 1024);
    }
'
0
28.01.2020, 02:52

Понятия не имею, есть ли для этого специальный инструмент, но если бы я действительно хотел разобраться в этом, я бы сделал что-то вроде (в скрипте/программе, конечно): посчитал бы файлы и умножил бы их на размер кластера. Конечно, мне нужно будет проверить их "диапазон" (я имею в виду увидеть их размер и проверить, займет ли он 4, 8, 32 или 64 КБ по кластеру).

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

1
28.01.2020, 02:52

Теги

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