迷惑メールを使用してVMを構築するときに、ユーザーレベルでコマンドを実行するのに役立つでしょうか?具体的には、Ubuntuの画面の左側にある「ランチャーアイコン」を更新しようとしています。以下の迷惑メールファイルでは、私はインラインシェルとインラインスクリプトの両方でこれを試みました。あなたが提供できる援助に感謝します。Vagrantがコマンドラインのユーザーレベルを実行する
$script = <<SCRIPT
echo "Configuring Launcher Icons..."
gsettings set com.canonical.Unity.Launcher favorites "['application://org.gnome.Nautilus.desktop', 'application://chromium-browser.desktop', 'unity://running-apps', 'application://terminator.desktop', 'unity://expo-icon', 'unity://devices']"
service lightdm restart
SCRIPT
Vagrant.configure(2) do |config|
config.vm.box = "box-cutter/ubuntu1604-desktop"
config.vm.provider "virtualbox" do |vb|
# Display the VirtualBox GUI when booting the machine
vb.gui = true
vb.name = "UpdateLauncherIcons"
# Customize the amount of memory on the VM:
vb.memory = "4096"
end
config.vm.provision "shell", inline: <<-SHELL
# Update OS
apt-get update
apt-get upgrade
apt-get --yes install git
apt-get --yes install terminator
apt-get --yes install chromium-browser
gsettings set com.canonical.Unity.Launcher favorites "['application://org.gnome.Nautilus.desktop', 'application://chromium-browser.desktop', 'unity://running-apps', 'application://terminator.desktop', 'unity://expo-icon', 'unity://devices']"
service lightdm restart
SHELL
config.vm.provision "shell", inline: $script
end
注、浮浪者は、インラインスクリプトが実行されたときにエラーメッセージを提供し:ターミナルウィンドウ内のゲスト・マシンで実行されたとき
==> default: Running provisioner: shell...
default: Running: inline script
==> default: Configuring Launcher Icons...
==> default:
==> default: (process:6221): dconf-WARNING **: failed to commit changes to dconf: Cannot autolaunch D-Bus without X11 $DISPLAY
さらなる試験がうまく以下コマンド作業ことを確認します。ここでも、ホスト上で実行される迷惑メールファイルからこのコマンドを処理するという課題があります。
gsettings set com.canonical.Unity.Launcher favorites "['application://org.gnome.Nautilus.desktop', 'application://chromium-browser.desktop', 'unity://running-apps', 'application://terminator.desktop', 'unity://expo-icon', 'unity://devices']"
インラインプロビジョナリの 'sudo -u vagrant'です。 –
@CodeGnome私はあなたのアドバイスを試み、使用しました: 'sudo -u vagrant gsettingsはcom.canonical.Unity.Launcherを設定しました" ['application://org.gnome.Nautilus.desktop'、 'unity:// running- 「 」vagrantfileを実行しているホスト端末内にまだエラーメッセージが表示されます: ''==>デフォルト:(プロセス:5495):dconf-CRITICAL **:ディレクトリ '/root/.cache/dconf'を作成できません:許可 が見つかりませんでした。 dconfは正常に動作しません。 ' 他に提案はありますか? – Nick
なぜあなたは何かをルートとして作成していますか?迷惑行為のユーザーは通常、「迷惑」または「ubuntu」であり、デフォルトでsudoを使用してrootとして実行されます。私はあなたが扱っているパーミッションとロケーションについてもう少し説明してもらえると思います。これは明らかにパーミッションの問題です。 –