# Case Study

### Case 1

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/29mVMnS94A1yPhJiIk73/image.png" alt=""><figcaption></figcaption></figure>

```jsx
git clone https://github.com/occlum/enable_rdfsbase.git
cd enable_rdfsbase 
make && make install  #if still error，remake && reinstall
```

### Case 2

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/GHmzh4TrUtw9XlLbjGn2/image.png" alt=""><figcaption></figcaption></figure>

* Mirror is incorrect.
* Curl is not installed in the container.

### Case 3

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/xomQNPy3oaoA1HociEyv/image.png" alt=""><figcaption></figcaption></figure>

* Install curl within the container.
* Missing sgx\_default\_gcnl.conf or sgx\_default\_qcnl.conf file

### Case 4

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/lPxyVagzMsFYYdjsWkUQ/image.png" alt=""><figcaption></figcaption></figure>

* Mirror version is not correct, please check the mirror ID.
* Wrong version

### Case 5

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/t3tXezNDXJtE9uBhCVBN/image.png" alt=""><figcaption></figcaption></figure>

Mirroring is wrong, this time apply epid mirroring on Azure.

### Case 6

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/JJWVgwQgJpuVMCxyCw0C/image.png" alt=""><figcaption></figcaption></figure>

Configuration file error, private key length is not correct.

### Case 7

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/pCz91qi8P7DuKd4BNCPZ/1111.png" alt=""><figcaption></figcaption></figure>

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/4PV6SHh0LiwprWjbVplt/20240809113915.png" alt=""><figcaption></figcaption></figure>

Check current configuration of max\_map\_count:&#x20;

`cat /proc/sys/vm/max_map_count`

Not persistent way to modify the max\_map\_count:&#x20;

`sysctl -w vm.max_map_count=3097152`&#x20;

To make the changes persistent you should modify `/etc/sysctl.conf` and then (optionally) execute `sysctl -p` to apply the changes without reboot

```
echo "vm.max_map_count=3097152" >> /etc/sysctl.conf
sysctl -p
```

### Case 8

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/e8OCIbPHTaswNdYqZEbl/14125ef010050b4d528ac2f5a861ba8.jpg" alt=""><figcaption></figcaption></figure>

If you are using the v0.11.9 image version of CRVA,  the Linux kernel version of the Operating System must be greater than 6.2.  Another option is to reinstall the operating system, using at least 22.04 Ubuntu version.

### Case9

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/QzMfuGiCARsGisgbqHyZ/ff51fe713f5c3f3d93c7830c6274a57d.png" alt=""><figcaption></figcaption></figure>

If the "current peers" is **0**, it means your device can not be connected through the P2P network. You should check the internet connection and the public IP first. Then you should check the security configuration of the cloud service which you can refer to the official docs for help.

### Case 10

<figure><img src="https://content.gitbook.com/content/dEFhPVPcRk2i8uAP6wof/blobs/WEA2bPVEzmOCesQYTxpF/lQLPJwQHNx2AdnXNAerNBlCwm2DCqFnsW_kHDtfTj5cXAA_1616_490.png" alt=""><figcaption></figcaption></figure>

For images with versions greater than `v0.12.8`, you need to add the `run` command to the startup command line, for example `occlum run /bin/bnk-watcher run /host/keyring.toml`.

### Case 11

<figure><img src="https://1540867602-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdEFhPVPcRk2i8uAP6wof%2Fuploads%2FAkTB0x3419VEMXZXdusv%2Fimage.png?alt=media&#x26;token=e14b90fe-0551-4634-a0cb-4865431733fa" alt=""><figcaption></figcaption></figure>

If you are using Ubuntu 24.04, you might encounter the `libssl.so.1.1: cannot open shared object file` error when running the ./sgx-detect script. This issue arises because the system lacks the OpenSSL 1.1 library. Ubuntu 24.04 uses OpenSSL 3.0 by default, but some programs may still rely on the older OpenSSL 1.1 version. Forcing the installation of OpenSSL 1.1 might cause other issues, so it's advisable to disregard this problem.

### Case 12

<figure><img src="https://1540867602-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdEFhPVPcRk2i8uAP6wof%2Fuploads%2FQ0HOpByIhOGDoynF8YFX%2Fimage.png?alt=media&#x26;token=d24dbd6c-9c21-46ac-a0ef-8e2c6c372112" alt=""><figcaption></figcaption></figure>

When encountering the above issue, it is likely because the image has not been pulled. To resolve this, execute `docker pull hub.bool.network/deepsafe/def-node:v0.11.9` to download the image. Subsequently, execute `docker tag hub.bool.network/deepsafe/def-node:v0.11.9 deepsafe/def-node:v0.11.9` to modify the image name to correspond with the configuration file docker-compose.yaml. Then, run `docker-compose up -d` again and use `docker-compose logs -f --tail 200` to check the logs and ensure the application is running normally.
