Попытка запускать команду при загрузке, но не работает

Я уже три дня борюсь с этой проблемой. У меня есть компьютер, который я настраиваю для друга, и у меня есть Zorin OS 12, поскольку это было первое, что пришло в голову, это была Windows, и я знал бы, как с ней работать, поскольку она основана на Ubuntu. В любом случае, поскольку у меня это работает на старом Macbook, на котором я лежал, у меня нет правого клика, поэтому я использовал эту командную вещь, чтобы сопоставить ее с ключом. Это код, который я использую, и я использовал chmod a + x, чтобы сделать его исполняемым.

#!/bin/sh xmodmap -e "keycode 134 = Pointer_Button3" xkbset m 

Но я пробовал rc.local, init.d, init, даже приложения для запуска, и все же никто из них не работает! Поэтому я начинаю думать, что с сценарием что-то не так, но он отлично работает, делая это вручную! Другое, что странно, когда я проверяю, работает ли rc.local, он говорит, что он работает нормально, но после того, как я ввел эту команду и перезапустил ее, она говорит, что в следующий раз я проверяю ошибку совместимости или что-то в этом роде.

xmodmap и xkbset – это команды, которые запускаются в xorg. Попробуйте поместить свой скрипт в свой xinitrc https://wiki.archlinux.org/index.php/Xinit

В недавнем дистрибутиве на основе ubuntu вы можете автозапуск программы после входа в GUI, как описано здесь

переименуйте файл с именем, которое вы можете запомнить, а затем скопируйте в / bin. Проверьте, введя имя недавно скопированной команды / файла. Если он работает, добавьте это имя в файл /etc/rc.local.

Надеюсь, это сработает для вас.