Страница, которую вы нашли, относится к Solaris Studio 12.3, выпущенной в 2011 году, когда в Solaris все еще использовались файлы подкачки. В Solaris 11.3, использующем ZFS в качестве корневой файловой системы, процесс несколько отличается, так как требуется настоящее блочное устройство. К счастью, ZFS упрощает использование реальных блочных устройств с помощью томов ZFS.
Сначала проверьте наличие существующих томов:
zfs list -t volume
Скорее всего, вы увидите том с именем swap
@ /rpool/swap
, поэтому вам потребуется другое имя для вашего нового устройства, например swap2
.
Вот что я вижу:
bash-[501]# zfs list -t volume
NAME USED AVAIL REFER MOUNTPOINT
rpool/dump 3.08G 139G 2.99G -
rpool/swap 2.06G 139G 2.00G -
Кроме того, проверьте существующие устройства подкачки:
bash-[502]# swap -l
swapfile dev swaplo blocks free
/dev/zvol/dsk/rpool/swap 275,1 8 4194296 4194296
Следующим шагом будет создание нового тома. В следующей команде параметр -V
указывает, что мы создаем необработанное блочное устройство, а не устройство с файловой системой, а 2G
— это размер:
bash-[503]# zfs create -V 2G rpool/swap2
Теперь вы увидите, что ваш список томов изменился:
bash-[504]# zfs list -t volume
NAME USED AVAIL REFER MOUNTPOINT
rpool/dump 3.08G 137G 2.99G -
rpool/swap 2.06G 137G 2.00G -
rpool/swap2 2.06G 137G 2.00G -
Затем вы можете активировать это блочное устройство как своп:
bash-[505]# swap -a /dev/zvol/dsk/rpool/swap2
И, как всегда, вы можете увидеть свои устройства подкачки с помощью swap -l
.
bash-[506]# swap -l
swapfile dev swaplo blocks free
/dev/zvol/dsk/rpool/swap 275,1 8 4194296 4194296
/dev/zvol/dsk/rpool/swap2 275,3 8 4194296 4194296
-121 ---154861 -Первая строка,
source ~/.profile
недопустимая строка для crontab:
$ echo "source ~/.profile" | crontab
"-":0: bad minute
errors in crontab file, can't install.
Если вы хотите использовать источник ~/.profile
так же, как если бы вы запускали оболочку входа в систему, рассмотрите возможность запуска сценариев оболочки как
0 0 * * * bash -l /path/to/script.sh
вместо (вместо bash
, используйте sh -l
вместо/bin/sh
)или, возможно,
SHELL=/bin/bash
0 0 * * * source ~/.profile && bash /path/to/script.sh
Необычно, однако, хотеть получить ~/.profile
в задании cron. Если у вас есть определенная переменная среды (или набор переменных ), которые необходимо установить в сценарии, было бы лучше установить их в сценарии, чтобы он оставался автономным.
Альтернативой этому является использование отдельного файла окружения и запуск скрипта, как
0 0 * * * BASH_ENV="$HOME/script.env" /path/to/script.sh
Вы можете включить такие пространства имен пользователей,
sysctl -w kernel.unprivileged_userns_clone=1
И вы можете сохранить его после перезагрузки в Debian, запустив это,
echo "kernel.unprivileged_userns_clone=1" >> /etc/sysctl.conf