Freebsd команды с дисками
Менять права доступа и владельца файлов и каталогов в Unix подобных операционных системах, можно с помощью команд chmod и chown. Маску для установки прав на создаваемые файлы, можно изменить глобально, в /etc/profile для Linux и в /etc/login.conf для FreeBSD. Обычно, маска по-умолчанию 022. Значение umask вычитается из 777, таким образом права доступа будут иметь значение 755.
Find out the disk sizes with the diskinfo command
Use the diskinfo command to acquire information on the disk sizes
How to get disk drive information in FreeBSD
To acquire the information related to disk drives and cd ROMs, etc., the most straightforward path we can take is to head over to /var/run/dmesg.boot file and accessing the file. This is where the required information is kept in a snapshot, taken right after the system mounts the disk drives.
Монтирование/перемонтирование файловых систем
FreeBSD
Linux
Монтирование FreeBSD раздела с Linux
Посмотрите номер раздела в fdisk, обычно это корнеыой раздел, но может быть и на другом BSD слайсе. Если на разделе FreeBSD много слайсов, их не будет видно через fdisk, но их можно найти в dev/sda* или /dev/hda*.
Перемонтирование
Перемонтировать устройство без предварительного размонтирования, например для fsck Копировать поток данных с CDROM'а в файл ISO образа.
Точки монтирования, использование дисков
Информация о директориях
Disk drive information with camcontrol command
You can also use the camcontrol command to access the CAM subsystem and see the working drives on your system. This is made possible by the CAM subsystem, a modular system that drivers for ATA and SCSI devices use to implement. The CAM system also accommodates host adapter drivers for the SCSI and ATA host controllers.
To present a list of disk-drives on your system, type in:
To see details on each partition:
Информация о дисках
Using atacontrol command to list disk drives
Using the atacontrol command-line utility, we can list the disk drives working within our system. The atacontrol command is used to gain permission to work with the FreeBSD ata subsystems and should be used with caution. If executed improperly, it can cause the CPU to crash, leading to some unrecoverable data loss.
Монтирование SMB раздела
CIFS - Common Internet File System SMB - server message block Предположим вам нужно получить доступ на расшаренному SMB разделу myshare на сервере smbserver, адрес набираемый на Windows машине будет \\smbserver\myshare\. Монтировать будем на /mnt/smbshare. Не забывайте, для cifs требуется IP адрес или доменное имя.
Linux
Кроме того пакет mount.cifs позволяет хранить привилегии в файле, например /home/user/.smb: И теперь монтируем:
FreeBSD
freebsd команды, настройка, установка сервера и не только
Прервать выполняющуюся команду:
^C (Ctrl-C)
Выйти из shell:
exit
Показать документацию к команде ls. Вместо ls можно подставить любую другую команду:
man ls
Описание структур каталогов:
man hier
Показать текущую дату и время:
date
Показать продолжительность того, сколько времеи включена система:
uptime
Показать кто залогинен:
w
Показать последние 10 входов:
last -10
Показать директорию, в которой сейчас находимся:
pwd
Перейти в директорию /usr/local/etc/:
cd /usr/local/etc/
Вместо /usr/local/etc/ можно указать любую другую директорию, в которую есть доступ.
Перейти в каталог на один уровень вверх:
cd ..
Перейти в свою домашнюю директорию:
cd ~
Перейти в корневую директорию:
cd /
Узнать размер папки:
du -hsx /путь/до/папки
Показать содержимое текущей директории:
ls
Показать подробно содержимое текущей директории (в выводе команды указаны даты, права на файлы/директории):
ls -l
Показать список всех файлов, включая скрытые файлы:
ls -a
Показать права доступа к файлу filename:
ls -l filename
Показать права доступа к директории directory:
ls -ld directory
Создать даректорию newdir в папке tmp:
mkdir /tmp/newdir/
Создаём директорию subdir, даже если у нас отсутствует папка newdir. Все папки создадутся автоматически:
mkdir -p /tmp/newdir/subdir/
Удалить директорию /tmp/newdir/ . Вместо /tmp/newdir/ можете указать нужную вам папку:
rmdir /tmp/newdir/
Удалить непускую директорию newdir. Вместо «newdir» у вас может быть другая папка:
rm -rd /tmp/newdir/
Колличество активных соединений tcp:
netstat -an|grep tcp | wc -l
Колличество активных соединений udp:
netstat -an|grep udp | wc -l
Прочитать несколько байт файла и определить тип файла:
file filename
Пример 1:
file /etc/rc.conf
/etc/rc.conf: ASCII English text
Пример 2:
file /bin/cp
/bin/cp: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), for FreeBSD 7.1, dynamically linked (uses shared libs), FreeBSD-style, stripped
Вывести на экран содержимое файла filename:
less filename
space(пробел) = следующая страница, b = предыдущая страница,
q = выйти, / = искать далее, ? = искать в предыдущем, n = повторить поиск.
Вывести на экран содержимое файла filename. -M = показывать название файла:
less -Mi filename
Показать количество строк в файле filename:
wc -l filename
Показать первые 5 строк файла filename (количество строк можно указать самостоятельно):
head -5 filename
Показать последние 5 строк файла filename (количество строк можно указать самостоятельно):
tail -5 filename
Показать последние 10 строк файла, подождать и показать новые линии по мере их добавления (^ C для выхода). Особенно полезено для лог-файлов:
tail -f filename
Создать файл filename, если он не существует или обновить время создания, если такой файлик имеется:
touch filename
Удалить файл filename:
rm filename
Копировать файл filename и присвоить ему новое имя — newname:
cp filename newname
Копировать файл или файлы в директорию /tmp/ ,название файлов и директорию укажите самостоятельно:
cp file1 file2 … /tmp/
Копировать директорию /tmp/ в директорию /home/ ,название директорий укажите самостоятельно:
cp -R /tmp/ /home/
Перенести файл oldname в туже директорию, где он находится, но под другим названием — newname. Проще говоря, переименовать файл oldname в newname:
mv oldname newname
Перенести файл или файлы в директорию /tmp/ , название файлов и директорию укажите самостоятельно:
mv file1 file2 … /tmp/
Сделать жёсткую ссылку newname на файл filename:
ln filename newname
Найти все файлы в директории /etc/ , или в любой другой указанной вами директории (/etc/ -для примера):
find /etc/ -type f
Найти все файлы в директории /etc/, начинающиеся с rc. Вместо /etc/ и rc укажите свои данные:
find /etc/ -type f -name ‘rc*’
Читать сжатый текстовый файл, без распаковки его на диск:
gzip -dc filename.gz | less
bzip2 -dc filename.bz2 | less
Показать содержимое сжатого архива:
tar -tzf filename.tgz или .tar.gz
tar -tjf filename.tbz2 или .tar.bz2
Извлеч содержимое архива filename.tgz в директорию /tmp/:
tar -xvzf filename.tgz -C /tmp/
Извлеч содержимое архива filename.tbz2 в директорию /tmp/:
tar -xvjf filename.tbz2 -C /tmp/
Извлеч содержимое архива filename.tgz в текущую директорию:
tar -xvzf filename.tgz
Извлеч содержимое архива filename.tbz2 в текущую директорию:
tar -xvjf filename.tbz2
Показать все процессы:
ps auxw
Показать все процессы «sshd»:
ps auxw | grep sshd
Постоянно показывать наиболее активные процессы (q — выход):
top
kill pid
или
kill -TERM pid
Искать команду cp в PATH и показать, где она была найдена:
which cp
Показать 20 последних введённых команд:
history 20
Показать все переменные окружения:
printenv
Показать одну переменную окружения ‘PATH’:
printenv PATH
или
echo $PATH
Переменные среды можно установить в ~/.profile для sh, ~/.bash_profile для bash, или ~/.cshrc для csh
Показать текущие uid, gid и дополнительные groups:
id
Показать текущее имя пользователя:
whoami
Стать root’ом (пользователь должен быть в группе «wheel»):
su
Изменить uid на username:
su username
Показать все учётные записи (выводится содержимое файла /etc/passwd, где они перечислены):
cat /etc/passwd
Показать все группы (выводится содержимое файла /etc/group, где они перечислены):
cat /etc/group
Создать пользователя username; — m = создать домашную директорию:
pw useradd username -m
Изменить свой пароль:
passwd
Изменить пароль пользователя username (имеет право только root):
passwd username
Добавить пользователя username в группу «wheel» (или отредактируйте /etc/group):
pw usermod username -G wheel
Удалить пользователя username; -r = удалить домашную директорию:
pw userdel username -r
Показать все учётные записи с зашифрованными паролями:
cat /etc/master.passwd
Показать примонтированные файловые системы:
mount
Показать используемое и свободное место на всех примонтированных файловых системах (-h = для большей читабельности для людей, -m = если надо узнать размер в Мб):
df
df -h
df -m
Список процессов с открытыми файлами:
fstat
Показать файловую таблицу:
cat /etc/fstab
Показать слайсы устройства ad0:
fdisk /dev/ad0
Показать статистику дисковых операций ввода/вывода каждые 2 секунды:
iostat 2 gstat -I 2s
Показать список установленных пакетов:
pkg_info
Показать подробное описание пакета «zip» (вместо zip укажите любой установленный у вас пакет):
pkg_info zip\*
Показать список файлов, включенных в пакет «zip»:
pkg_info -L zip\*
Установить пакет foo-1.2.3.tbz:
pkg_add foo-1.2.3.tbz
Установить пакет foo из FTP сервера, используемого по умолчанию:
pkg_add -r foo
Установить пакет foo из альтернативного FTP сервера:
PACKAGEROOT=»ftp://ftp.freebsd. org» pkg_add -r foo
Удалить пакет foo-1.2.3:
pkg_delete foo-1.2.3
Выполнять после установки пакетов, для повторного сканирования PATH. (Необходимо только если используете csh):
rehash
Показать загруженные модули:
kldstat
Загрузить модуль:
kldload название_модуля
Выгрузить модуль:
kldunload название_модуля
Показать все сетевые интерфейсы:
ifconfig -a
Показать таблицу маршрутизации:
netstat -r -n
Добавить статический маршрут по умолчанию:
route add default 192.168.0.254
Отправка пакетов до адреса 1.2.3.4 и отображение промежуточных найденных маршрутизаторов:
traceroute -n 1.2.3.4
Показать все пакеты, переданные и принятые на интерфейсе em0:
tcpdump -i em0 -n -s1500 -X
Показать только заголовки tcp пакетов приходящих/уходящих на 80 порт:
tcpdump -i em0 -n tcp port 80
Открыть TCP соединение на порт 80 хоста с адресом 1.2.3.4:
telnet 1.2.3.4 80
Инициализация настроек сетевых интерфейсов в /etc/rc.conf:
/etc/rc.d/netif start
Инициализация настроек статических маршрутов из /etc/rc.conf:
/etc/rc.d/routing start
Настройка интерфейса с пометкой «DHCP» в /etc/rc.conf:
/etc/rc.d/dhclient start
Показать активные сетевые подключения:
netstat -finet -n
Показать процессы слушающие на IPv4 sockets:
sockstat -4 -l
Перезагрузить ОС:
reboot
Выключить ПК, немедленно
shutdown -p now
Права на файлы/папки:
права на файлы и папки обозначаются в виде цифр или букв:
4 = read (разрешение на чтение)
2 = write (разрешение на запись)
1 = execute (разрешение на выполнение)
Права представлены тремя цифрами:
первая цифра — разрешения для вас
вторая цифра — разрешения для группы
третяя цифра — разрешения для всех остальных
Сложение цифр можно добиться установления прав. Например:
3 (2+1) — разрешение на запись и выполнение файла (каталога);
5 (4+1) — разрешение на чтение и выполнение;
6 (4+2) — разрешение на чтение и запись;
7 (4+2+1) — разрешение на чтения, запись и выполнение
Для установления прав доступа используется команда CHMOD.
На примере нагляднее:
chmod 777 /tmp/file.sh -разрешить читать, изменять, выполнять файл file.sh всем
chmod 766 /tmp/file.sh -разрешить себе читать, изменять, выполнять файл file.sh, а группе и всем остальным только читать, изменять.
Если надо дать права всем файлам в папке и всему содержимому включая подпапки(рекурсивно), надо использовать параметр -R, т.е.:
chmod -R 766 /tmp/
Узнать количество установленной физической памяти:
cat /var/run/dmesg.boot | grep «real memory»
Узнать переменные окружения (PATH) в языке csh (по умолчанию во FreeBSD):
setenv | grep PATH
Перестартовать сеть (сетевое подключение по ssh сохранится)
/etc/rc.d/netif restart
Остановить сетевую карту:
ifconfig network-interface down
здесь network-interface — это интерфейс сетевой карты, который можно посмотреть командой ifconfig
Аналогично запуск сетевой карты:
ifconfig network-interface up
Получить список поднятых сетевых интерфейсов:
ifconfig -u
Получить список выключенных сетевых интерфейсов:
ifconfig -d
Посмотреть размер директории:
du -h
Перезапустить ipfw:
/etc/rc.d/ipfw restart
Информация об установленном CPU:
sysctl -a | egrep -i ‘hw.machine|hw.model|hw.ncpu’
Создать дамп базы mysql:
mysqldump -u ЛогинАдминаБД -pПарольАдминаБД -B ИмяБД > /путь/куда/сохранить/дамп/базы/ИмяБазы.sql
Настроить дату и время на freebsd:
date yymmddhhss
где
yy -сокращённо год (две последние цифры)
mm -месяц
dd -день
hh -час
ss -минуты
Все команды и их комбинации перечислять излишне. Если есть, что нужно добавить, добро пожаловать в комментарии, добавлю.
Создание файловой системы в памяти
Файловая система в памяти очень быстрая, имеет смысл использовать ее для приложений с высоким дисковым IO. Создадим раздел размером 64 мб и смонтируем его в /memdisk:
mount — показывает смонтированные подразделы и флаги из монтирования
df — показывает смонтированные подразделы, их размер и свободное место на них
fdisk /dev/ad0 — показывает информацию о диске ad0 и разделах на нем
disklabel /dev/ad0s1 — показывает список подразделов в первом разделе диска ad0
swapinfo — показывает список подразделов свопинга на дисках и их использование
fstat — показывает список открытых файлов (имена файлов не выводятся)
pstat -f — выводит список открытых файлов (имена файлов не выводятся)
systat -vmstat n — каждые n секунд выводит количество транзакций с диском в секунду, объем записанных/считанных данных на диск в секунду, средний размер транзакции и процент времени в течение которого диск был занят работой.
iostat — выводит информацию, аналогичную systat -vmstat, но не выводит занятости диска по времени и может выводить среднюю статистику с момента загрузки.
vmstat — выводит количество операций на диске в секунду
/stand/sysinstall — можно посмотреть и изменить разметку диска и монтирование
less /etc/fstab — таблица монтирования при загрузке
du -h /путь к каталогу — выводит размер каталога
gstat — выводит статистику о записи на диски(очередь) очень удобно.
Ремонт файловой системы
fsck — проверка диска на ошибки
Информация о процессоре и памяти
systat -vmstat n(systat -v 1) — вывод показателей загрузки (number of jobs in the run queue averaged over 1, 5 and 15 min), состояния памяти (в страницах), количества процессов в группах, количество вызовов специальных функций ядра (traps, interrupts, system calls, network software interrupts), использование процессора, трансляции имен, активность свопа, прерывания, а также информацию по использованию диска (см)
top — аналогичная информация в сокращенном виде + использование памяти и свопа в мегабайтах, список процессов, отсортированных по использованию процессора.
ps afx — список запущенных процессов и время процессора на каждый
Информация о сети
ifconfig — список сетевых интерфейсов с ip-адресами, масками, mac-адресами, типами карт и их статусами (названия карточек можно посмотреть в файле конфигурации ядра)
systat -ifstat n — объем трафика за n секунд на всех сетевых интерфейсах
netstat — вывод активных сетевых соединений (сокетов)
systat -netstat n — аналог netstat в реальном времени
systat -ip n — таблица IP-пакетов и ошибок по типам за n секунд
systat -tcp n — таблица TCP-пакетов и ошибок по типам за n секунд
systat -icmp n — таблица ICMP-пакетов и ошибок по типам за n секунд
netstat -ibt — список интерфейсов, разбитых по ip-адресам (!) с объемом трафика на каждом, количеством ошибок, коллизий, значением watchdog-таймера
netstat -r — таблица маршрутизации
arp -a — таблица ARP
tcpdump -i rl0 host 192.168.61.20 and port 80 — сниффер пакетов на интерфейсе rl0, фильтрующий пакеты, содержащие адрес 192.168.61.20 и порт 80
trafshow -i rl0 — программа для сортировки и вывода сетевых потоков (устанавливается дополнительно пакетом или из портов)
Службы времени
date — выводит текущее время и дату
date 201010012312 — устанавливает время 23:12 01-10-2010
w — выводит, сколько времени назад система загрузилась и залогиненных пользователей
last — выводит историю перезагрузок и входов пользователей
Работа над файлами
tar -xzf archive.tgz — разархивировать архив *.tar.gz
unzip archive.zip — разархивировать архив *.zip
Поиск файлов
find /etc -name «*.conf» -найти в каталоге /etc все файлы с расширением .conf
find /etc -name «moy_f*» -найти в каталоге /etc все файлы имя которого начинается с moy_f
Welcome to another tutorial on FreeBSD. In this tutorial, you’ll see how disk drive names in a FreeBSD system can be listed. We’ll also get into the nitty-gritty and discuss how to find out exactly how much space a disk drive has and how other information relating to disk drives is acquired, all without rebooting the server every time that information is needed.
Монтировать образ
Linux loop-back
FreeBSD
Используя md - устройство памяти (если нужно, сделайте kldload md.ko): Или используя псевдоустройство(VN, Virtual node):
Installing and using the lsblk command
Enter the line below to install the lsblk command for use later:
Then run the lsblk command:
To list all of the detectable disks on your FreeBSD
To display info on a specific disk, use a similar syntax to the command below, which is requesting info for ada0 disks:
Информация о дисках
Загрузка
FreeBSD
Что-бы загрузить старое ядро, в аварийной ситуации, например после неудачной сборки и установки нового, остановите загрузку, нажав 6 во время обратного отсчета, что-бы попасть в приглашение командной строки.
Wrapping up
This tutorial presents different ways to obtain information on disk-drives in a FreeBSD system. We’ve presented commands and methods that are very different from each other, as they have wildly different intended applications.
Создание и запись образа ISO
Будем копировать cd или dvd сектор за сектором. Используйте mkisofs что-бы создать образ из файла в директории. Для преодоления ограничений имен файлов используйте опцию -r, включающую расширение RockRidge, основное для UNIX систем, -J включает Joliet, используемое Microsoft, -L разрешает ISO9660 имена, начинающиеся точкой. Во FreeBSD, mkisofs можно установить из портов /usr/ports/sysutils/cdrtools.
Запись CD/DVD ISO образов
FreeBSD
FreeBSD не устанавливает DMA на ATAPI устройства, это можно сделать через переменную sysctl или в файле /boot/loader.conf, следующими записями. Используйте burncd для ATAPI устройств (burncd, стандартная программа, часть базовой системы) и cdrecord (из /usr/ports/sysutils/cdrtools) для SCSI устройств.
Linux
Так-же используйе cdrecord, как описано выше. Кроме того можно использовать родной ATAPI интерфейс: Записывайте, как было описано выше.
dvd+rw-tools
Пакет ]]> dvd+rw-tools ]]> (FreeBSD: ports/sysutils/dvd+rw-tools) имеет весь функционал необходимый для работы с DVD, плюс growisofs, для записи CD или DVD. Документацию с примерами можно найти в ]]> FreeBSD handbook Глава 18.7 ]]>
Конвертировать образ из Nero .nrg файла в файл .iso
Конвертировать образ bin/cue в .iso
Это можно сделать с помощью небольшой программы, ]]> bchunk ]]> . Во FreeBSD ее можно найти в портах /usr/ports/sysutils/bchunk.
Using geom utility to list disk-drive information:
You can use the geom command line to show disk drive information as well:
This listing can be made more specific when combined with the grep command.
About the author
Younis Said
I am a freelancing software project developer, a software engineering graduate and a content writer. I love working with Linux and open-source software.
Listing disk drives with egrep
To find out the exact number of hdds/ssds are working under the server, use the grep command as under:
Alternatively, you may put:
The output you’ll get should list all of the disk drives, including cd/DVD ROMs being read by your system.
Кто какие файлы открыл
Иногда необходимо выяснить, какой файл заблокировал раздел, из-за чего команда umount выдает соответствующую ошибку.
FreeBSD и большинство Unix подобных систем
Linux
Создание swap раздела на лету
freebsd команды, настройка, установка сервера и не только
В тот прекрасный день, когда я решил сделать домашний файловый сервер на FreeBSD встал вопрос, как разметить большие винчестеры и получить, по моему мнению, оптимальное соотношение надёжности и не расточительности. Ход мыслей был таков: делать зеркало(дублировать содержимое одного носителя на другом) – жалко место ради медиа контента, т.к. придётся попрощаться с целым винчестером, а делать пул(слить объёмы всех носителей воедино) из нескольких винчестеров – не надёжно, выйдет из строя один из носителей и накроется «всё, что нажито непосильным трудом» и хранится на остальных винчестерах. Поэтому решил использовать gpart для разметки, zfs в качестве файловой системы и делать не зеркало, а пулы но в пуле держать только один винчестер. Пошёл по принципу: один хард – один пул. Таким образом мы и не потеряем место и можем пользоваться прелестями zfs (создание снэпшотов).
Краткие характеристики железа:
Итак в наличии был потенциальный файловый сервер на FreeBSD с четырьмя винчестерами, на одном(40 Гб ide) установлена сама ОС, а 3-и остальных (каждый по 2Тб sata) будут использоваться для хранения. ОЗУ 4Гб, если у вас мало оперативки в сервере, то с zfs не стоит заморачиваться, либо докупить памяти. Тип cpu — I686_CPU. ОС – FreeBSD 8.0-RELEASE.
смотрю свои винчестеры:
cat /var/run/dmesg.boot | grep ad
вижу
…
ad0: 1907729MB at ata0-master SATA300
ad1: 1907729MB at ata0-slave SATA300
ad2: 1907729MB at ata1-master SATA300
ad4: 38166MB at ata2-master UDMA100
…
Про ad4 сразу забываем, там ОС стоИт, остаются ad0, ad1, ad2.
Выполняем от root’а, тем самым создавая разметку GPT для каждого из hdd:
gpart create -s GPT ad0
gpart create -s GPT ad1
gpart create -s GPT ad2
После этого можно посмотреть, что получилось:
gpart show
Далее создаём разделы:
gpart add -b 34 -i 00 -t freebsd-zfs -l dsk00 ad0
gpart add -b 34 -i 01 -t freebsd-zfs -l dsk01 ad1
gpart add -b 34 -i 02 -t freebsd-zfs -l dsk02 ad2
здесь:
b –смещение начального блока
s –размер раздела в блоках.этот параметр я не указывал, таким образом создавал один раздел размером в весь винчестер, как и было нужно. 1кБайте=2 блока, при необходимости можно посчитать число блоков и в мб и в Гб. Либо можно написать не в блоках а сразу в Gb. Например: -s 500G
i — индекс в таблице разделов, на которых должен быть размещён новый раздел.
t – тип раздела (может быть: efi, freebsd, freebsd-boot, freebsd-swap, freebsd-ufs, freebsd-vinum, freebsd-zfs, mbr.)
l — метка раздела
опять можно посмотреть изменения:
gpart show
и ещё так:
ls /dev/gpt
Теперь переходим к ZFS.
zfs должен быть подгружен в ядро, поэтому делаем:
kldload zfs
посмотрим загруженные модули:
kldstat
1 9 0xc0400000 b6dfe0 kernel
2 1 0xc292c000 123000 zfs.ko
3 1 0xc2159000 3000 opensolaris.ko
Чтобы включить поддержку zfs при запуске ОС, делаем и заодно подправим кое какие параметры. Сначала в /etc/rc.conf добавляем:
zfs_enable="YES"
И в /boot/loader.conf добавляем:
zfs_load="YES"
vfs.zfs.prefetch_disable="1"
vfs.zfs.arc_max="104857600"
vm.kmem_size_max="1024M"
vfs.zfs.zil_disable="1"
Так же необходимо пересобрать ядро(о том, как это делать здесь ), добавив туда строку:
options KVA_PAGES=512
О том как его пересобрать, уже было рассмотрено.
Создадим точки монтирования пулов(произвольные точки монтирования):
mkdir -p /mnt/pools/dsk00
mkdir -p /mnt/pools/dsk01
mkdir -p /mnt/pools/dsk02
chmod –R 0777 /mnt/pools/
И наконец можно создавать пулы zfs:
zpool create -m /mnt/pools/dsk00 storage00 /dev/gpt/dsk00
zpool create -m /mnt/pools/dsk01 storage01 /dev/gpt/dsk01
zpool create -m /mnt/pools/dsk02 storage02 /dev/gpt/dsk02
здесь:
m – точка монтирования пула.
storage00 , *01 , *02 – названия пула.
/dev/gpt/dsk00 , *dsk01 , *dsk02 – диски, с указанием точного пути (в /dev/gpt/ они должны были появиться после «gpart add», который выполняли выше).
Увидеть список сформировавшихся пулов можно так:
zpool list
Их стало видно и в списке файловых систем:
df -h
Вобщем то и всё, можно перезагружаться.
Если вы напортачили, то:
1) удаляем пулл (на примере пула с названием storage01)
zpool destroy storage01
2) удаляем партицию (в пуле storage01 у меня винчестер ad1)
gpart delete -i 1 ad1
3) уничтожаем схему разметки ad1
gpart destroy ad1
и теперь можно пересоздать всё заново.
Собственно о снимках файловой системы – это образы фс на определённый промежуток времени доступные только на чтение.
Снимок делается так:
zfs snapshot storage01@snap01
здесь мы создали снэпшот пула storage01 под названием snap01
смотрим список снэпшотов:
zfs list -t snapshot
NAME USED AVAIL REFER MOUNTPOINT
storage01@snap01 0 — 18.5K —
делаем откат storage01 до снэпшота snap01:
zfs rollback storage01@snap01
Большое Руководство по администрированию файловых систем ZFS Solaris расположено здесь .
Создание образа на основе файла
Например, раздел размером 1Гб использует файл /usr/vdisk.img. В данном случае мы используем ключ -u 0, но номер может быть любым.
FreeBSD
Linux
Linux и losetup
Читайте также: