FUSEを試す

投稿者: | 2024年2月25日

パッケージインストール、ビルド

takayuki@ubuntu3:~/repos/libfuse/build$ sudo apt install meson
takayuki@ubuntu3:~/repos$ git clone https://github.com/libfuse/libfuse.git
takayuki@ubuntu3:~/repos/libfuse$ mkdir build
takayuki@ubuntu3:~/repos/libfuse$ cd build/
takayuki@ubuntu3:~/repos/libfuse/build$ meason
takayuki@ubuntu3:~/repos/libfuse/build$ meson configure -D disable-mtab=true
takayuki@ubuntu3:~/repos/libfuse/build$ ninja

サンプル実行

exampleディレクトリに移動して、root権限でサンプルを実行する。今回はsystemcallをパススルーするだけのpassthrough_llを使用する。

takayuki@ubuntu3:~/repos/libfuse/build/example$ sudo ./passthrough_ll /mnt/fuse



ftraceを有効化する

root@ubuntu3:/home/takayuki/repos/libfuse/build/example# cd /sys/kernel/debug/tracing
root@ubuntu3:/sys/kernel/debug/tracing# echo function_graph > current_tracer
root@ubuntu3:/sys/kernel/debug/tracing# echo 1 > /sys/kernel/debug/tracing/options/function-trace
root@ubuntu3:/sys/kernel/debug/tracing# cat /sys/kernel/debug/tracing/trace

root@ubuntu3:/sys/kernel/debug/tracing# echo 0 > trace
root@ubuntu3:/sys/kernel/debug/tracing# dd if=/dev/zero of=/mnt/fuse/test oflag=sync count=1 bs=1K
1+0 records in
1+0 records out
1024 bytes (1.0 kB, 1.0 KiB) copied, 0.038069 s, 26.9 kB/s
root@ubuntu3:/sys/kernel/debug/tracing# cat trace
trace trace_clock trace_marker trace_marker_raw trace_options trace_pipe trace_stat/
root@ubuntu3:/sys/kernel/debug/tracing# cat trace > /tmp/ftrace_write.txt


コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です