サードパーティのソフトウェアを持っています。現在、システムを再起動するたびに、シェルを介して手動でinsmod
を使用してモジュールをロードする必要があります。
buntu Wiki-DKMS を少し読んで、これを見つけました。だから、これは[〜#〜] dkms [〜#〜]が今のところ最先端のものだと思います。補足として、私はこの質問もここに見つけました: https://stackoverflow.com/questions/4356224/how-to-load-a-custom-module-at-the-boot-time-in- ubunt -しかし、これはもはや最新ではないようです。
だから、私の日常はこれです:
cd /usr/src/gx/kernel/gxsd/
make
/sbin/insmod gxsd.ko
cd /usr/src/gx/kernel/fxmc_usb/
make
/sbin/insmod fxmc_usb.ko
cd /usr/src/gx/examples/cpp/cpd
make
このサードパーティモジュールのサポートチームから、再起動するたびにこれを実行する必要があるというフィードバックを受けました。しかし、これはオプションではありません。自動的に起動させたい。
誤解しない限り、make
パーツは1回だけ必要ですよね?再起動するたびにmake
を使用する必要はありません。しかし、insmod
- partをもう一度実行する必要がありますよね?
Dkmsをインストールしたばかりですが、これらのinsmodコマンドを自動起動に追加する方法に行き詰まっています。
誰でもモジュールを「自動的に」挿入できないようにするには、次の手順に従います。
#!/bin/sh
# Example script for loading modules
# This script is in answer to question http://askubuntu.com/questions/660901/insmod-to-autostart
# Copyright (c) 2015 Fabby
# This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
# This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. See the GNU General Public License for more details.
# You DID NOT receive a copy of the GNU General Public License along with this program as the license is bigger then this program.
# Therefore, see http://www.gnu.org/licenses/ for more details.
# Note:
# untested as I do not have these proprietary modules.
# Version 0.1 DD 2015/08/13 converted from manual work.
# version 0.2 DD 2015/08/14 added Sudo ls /home
# Activate Sudo with bogus command so next lines will not need password
Sudo ls /home > /dev/null
if [ "$EUID" -ne 0 ]; then
read -p "You need to be a member of the im-operator group or root to be able to run this script"
exit
fi
# Make statement : cd /usr/src/gx/kernel/gxsd/&&make
# Insmod statement : /sbin/insmod gxsd.ko
Sudo /sbin/insmod /usr/src/gx/kernel/gxsd/gxsd.ko
# Make statement : cd /usr/src/gx/kernel/fxmc_usb/&&make
# Insmod statement : /sbin/insmod fxmc_usb.ko
Sudo /sbin/insmod fxmc_usb.ko
# Make statement : cd /usr/src/gx/examples/cpp/cpd&&make
# Seems superfluous, so let's skip this
/usr/local/bin/DasSaffe_insmod.sh
に保存します次のコマンドを実行します。
chmod +x /usr/local/bin/DasSaffe_insmod.sh
このマシンのすべてのユーザーがこれらのモジュールをロードできるようにする必要があるので、sodoers
ファイルを適合させます。
Sudo visudo
次に、セクション### Alias section ###
を探し、次に# Cmnd alias specification
を探します。
次の行を追加します。
# Fabby: 2015-08-14 Create special operator for insmod
InsMod_alias INSMOD_OPERATOR=/sbin/insmod, /usr/local/bin/DasSaffe_insmod.sh
次に、セクションを探します。
# Allow members of group Sudo to execute any command
%Sudo ALL=(ALL:ALL) ALL
その下に追加:
# Fabby: 2015-08-14 Allow the group "im-operator" to use certain applications
%im-operator ALL=CMD_OPERATOR
グループim-operator
とユーザーを追加します。
Sudo groupadd im-operator&&Sudo adduser $USER im-operator
ダッシュに移動してstartup app
と入力し、そこにある唯一のアイコンをクリックします。
Command
フィールドに次のように入力します。DasSaffe_insmod.sh
と、Name
およびComment
フィールドでこれが何であるかを通知する任意の項目。警告:上記ではテストできないので、あなたは私のモルモットです。これが機能するかどうかにかかわらずコメントを残してください。
動作する場合、次のように簡単です。
Sudo adduser zsUserName im-operator
ここで、szUserName
は、特定の時点からモジュールを挿入できるようにするユーザーの名前です。