Вы можете создать полный -раздел на GPT-диске с помощью этих команд.У меня есть немного расширенная версия pdisk
в качестве стандартной утилиты на большинстве моих систем.
# Create a simple function pdisk to hide some of the complexity of parted
pdisk() {
local dsk="$1"; shift; [[ $# -eq 0 ]] && set -- print;
parted "$dsk" --align optimal unit MiB "$@";
}
# We are going to DESTROY and REFORMAT /dev/sdz. Change to suit your removable disk
dsk=/dev/sdz
pdisk "$dsk" mklabel gpt # GPT disk label (you may get asked for confirmation)
pdisk "$dsk" mkpart primary ntfs 1 100% # Create a single partition for the entire disk
pdisk "$dsk" # Show what we have done
partprobe "$dsk" # Generate the partition devices
mkfs -t ntfs "${dsk}"*1 # Format partition 1 as NTFS (if you must)
Если вы хотите безопасно поэкспериментировать, не ломая реальный диск, используйте такой временный файл на диске вместо наглого dsk=/dev/sdz
выше.
dd if=/dev/zero bs=1M count=100 >100m.img # Create 100MB "disk" image
dsk=$(losetup --show --find 100m.img) # Associate a loopback device
echo "$dsk" # Report what it is called
Затем, когда вы закончите,
losetup -d "$dsk" # Disassociate the loopback device(s)
rm "$dsk" # You know
Задания выполняются с помощью cron
или systemd
сценариев запуска, которые не выполняются в той же среде выполнения, что и на вашем рабочем столе. systemd
сценарии запуска запускаются как root
. Ни одно из ваших изменений PATH
или другие настройки переменных среды из ~/.bashrc
не распространяются автоматически на ваше задание cron
. Например, $DISPLAY
нет, поэтому программы с графическим интерфейсом требуют специальной обработки (читатьman xhost
).
Можно установить переменные среды для всех своих cron
заданий в файле crontab
. Прочтите man 5 crontab
.
Посмотрите на результаты echo "=== id ===";id;echo "=== set ===";set;echo "=== env ===";env | sort;echo "=== alias ===";alias
в каждой из ваших сред.
Поскольку часть command
строки crontab
по умолчанию интерпретируется как /bin/sh
, который имеет более простой синтаксис, чем /bin/bash
, я рекомендую, чтобы command
был вызовом bash
скрипт (исполняемый, смонтированный, начинается с #!/bin/bash
), который настраивает среду, а затем вызывает нужную программу.