1PMEMPOOL-CREATE(1) PMDK Programmer's Manual PMEMPOOL-CREATE(1)
2
3
4
6 pmempool-create - create a persistent memory pool
7
9 $ pmempool create [<options>] [<type>] [<bsize>] <file>
10
12 The pmempool invoked with create command creates a pool file of speci‐
13 fied type. Depending on a pool type it is possible to provide more
14 properties of pool.
15
16 Valid pool types are: blk, log and obj which stands for pmemblk, pmem‐
17 log and pmemobj pools respectively. By default the pool file is creat‐
18 ed with minimum allowed size for specified pool type. The minimum
19 sizes for blk, log and obj pool types are PMEMBLK_MIN_POOL, PMEM‐
20 LOG_MIN_POOL and PMEMOBJ_MIN_POOL respectively. See libpmemblk(7),
21 libpmemlog(7) and libpmemobj(7) for details.
22
23 For pmemblk pool type block size <bsize> is a required argument.
24
25 In order to set custom size of pool use -s option, or use -M option to
26 create a pool of maximum available size on underlying file system.
27
28 The size argument may be passed in format that permits only the upper-
29 case character for byte - B as specified in IEC 80000-13, IEEE 1541 and
30 the Metric Interchange Format. Standards accept SI units with obliga‐
31 tory B - kB, MB, GB, ... which means multiplier by 1000 and IEC units
32 with optional “iB” - KiB, MiB, GiB, ..., K, M, G, ... - which means
33 multiplier by 1024.
34
35 Available options:
36 -s, --size <size>
37
38 Size of pool file.
39
40 -M, --max-size
41
42 Set size of pool to available space of underlying file system.
43
44 -m, --mode <octal>
45
46 Set permissions to (the default is 0664) when creating the files. If
47 the file already exist the permissions are not changed.
48
49 -i, --inherit <file>
50
51 Create a new pool of the same size and other properties as <file>.
52
53 -b, --clear-bad-blocks
54
55 Clear bad blocks in existing files.
56
57 -f, --force
58
59 Remove the pool before creating.
60
61 -v, --verbose
62
63 Increase verbosity level.
64
65 -h, --help
66
67 Display help message and exit.
68
69 Options for PMEMBLK:
70 By default when creating a pmem blk pool, the BTT layout is not written
71 until the first write operation of block entry is performed. Using -w
72 option you can force writing the BTT layout by writing zero data to
73 specified block number. By default the write operation is performed to
74 block number 0. Please refer to libpmemblk(7) for details.
75
76 -w, --write-layout
77
78 Force writing the BTT layout by performing write operation to block
79 number zero.
80
81 Options for PMEMOBJ:
82 By default when creating a pmem obj pool, the layout name provided to
83 the libpmemobj library is an empty string. Please refer to libpmemo‐
84 bj(7) for details.
85
86 -l, --layout <layout>
87
88 Layout name of the pmemobj pool.
89
91 $ pmempool create blk 512 pool.blk
92
93 Create a blk pool file of minimum allowed size and block size 512 bytes
94
95 $ pmempool create log -M pool.log
96
97 Create a log pool file of maximum allowed size
98
99 $ pmempool create blk --size=4G --write-layout 1K pool.blk
100
101 Create a blk pool file of size 4G, block size 1K and write the BTT lay‐
102 out
103
104 $ pmempool create --layout my_layout obj pool.obj
105
106 Create an obj pool file of minimum allowed size and layout “my_layout”
107
108 $ pmempool create --inherit=pool.log new_pool.log
109
110 Create a pool file based on pool.log file
111
113 pmempool(1), libpmemblk(7), libpmemlog(7), libpmemobj(7) and
114 <https://pmem.io>
115
116
117
118PMDK - pmem Tools version 1.4 2021-07-22 PMEMPOOL-CREATE(1)