forked from stec-inc/EnhanceIO
-
Notifications
You must be signed in to change notification settings - Fork 31
/
Copy pathInstall.txt
123 lines (70 loc) · 3.43 KB
/
Install.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
Installation
------------
EnhanceIO requires Linux running kernel 3.7 or higher along with the procfs virtual filesystem
and udev utilities. The eio_cli utility requires Python2 version 2.6.6 or higher.
Older versions of the Linux kernel or Python may work, but will not be suppoerted.
Prerequisit
-----------
Building kernel modules from source requires that you have kernel development headers installed.
See your distribution's documentation for what packages you need installed for kernel
development.
Install-EIO
-----------
For convienience and simplicity, EnhanceIO can now be build and installed using the new
Install-EIO script. It contains many useful options and saves a lot of time, especialy when
building for multiple kernels.
Install Now:
To build and install EnhanceIO and it's utilities immediately on the current kernel,
simply run:
# ./Install-EIO
This will build, install, and load the modules required by EnhanceIO, as well as installing
eio_cli and it's manual, and even clean up the files leftover by make. No further steps are
required.
Install For Another Kernel:
To build/install for another kernel run:
# ./Install-EIO -k <KERNEL_VERSION>
This will assume that eio_cli has already been installed and will skip its installation.
Installing eio_cli separately is covered below.
It also assumes that you will not be building for the running kernel and will not load
modules for the running kernel.
Manualy loading modules is covered below.
Installing For Multiple Kernels:
Install-EIO does not explicitly support building for multiple kernels. However it is
theoretically possible to do so using a shell loop.
For example:
# for i in $(ls /lib/modules); do ./Install-EIO -k $i; done
This assumes that the required kernel headers are installed for all present kernels.
Installing eio_cli Separately:
Installing eio_cli with Install-EIO is as easy as running:
# ./Install-EIO install-cli
This will only install eio_cli and it's manual.
Manual Cleanup:
Install-EIO allows you to skip the build cleanup and run it later. To do this just run:
# ./Install-EIO cleanup
This will only reomve the files created by make after the build process.
Other Install-EIO Options:
For other options suppoted by Install-EIO run:
# ./Install-EIO --help
Manual Installation
-------------------
If you feel the need to install EnhanceIO manualy, this is still an option.
Make and Make Install:
To build and install the EnhanceIO modules run:
# cd ./Driver/enhanceio
# make && make install
Installing eio_cli:
The best way to install the EnhanceIO utility is to use:
# install -o root -g root -m 700 ./CLI/eio_cli /sbin/eio_cli
The manual can be installed using:
# install -o root -g root -m 644 ./CLI/eio_cli.8 /usr/share/man/man8/eio_cli.8
This ensures the files are placed correctly with the correct owner, group, and permissions.
Loading Modules:
Once the modules have been installed on the running kernel they can be loaded using:
# modprode enhanceio
# modprode enhanceio_rand
# modprode enhanceio_fifo
# modprode enhanceio_lru
Once the modules have been loaded you will be able to use eio_cli to create/modify caches.
Notes
-----
Caches created with eio_cli will be persistent by default. See ./Ducuments/Persistence.txt.