web-dev-qa-db-ja.com

ファイルを新しいシステムにキックスタートコピー

キックスタートファイルの作成を終了しましたが、1日中1つの問題が発生します。私はネット全体を検索し、さまざまな解決策の投稿を多数見つけましたが、どれも役に立ちませんでした。

いくつかのファイルを含むkickstart-edISOから新規インストールを実行しました。それらのファイルを新しくインストールしたシステムにコピーし、それらのファイルの1つをサービス(サービス)として開始したいと思います。

これは今の私の%postです:

%post --log=/root/ks-post.log
exec < /dev/tty6 > /dev/tty6 2> /dev/tty6
chvt 6
clear
cp /mnt/source/JOTC/src/mongod.conf /etc/
cp -r /mnt/source/JOTC/src/jotc/ /opt/
cp /mnt/source/JOTC/src/service /etc/init.d/jotc

エラーはかなり合理的です。 /mnt/source/JOTC/src/mongod.conf: no such file or directory

ただし、仮想端末2に手動で切り替えて、すばやくls /mnt/source/JOTC/src/を実行すると、ISそのmongod.confファイルがあります。

私は何が間違っているのですか?

4
ivica

私はそれを解決しました...

%post --log=/root/ks-post.log
exec < /dev/tty6 > /dev/tty6 2> /dev/tty6
chvt 6
#mount the cd (ISO in my case) to copy files from it
#since this is chrooted environment
mount /dev/cdrom /mnt
cp -rf /mnt/JOTC/src/jotc/ /opt/
cp -f /mnt/JOTC/src/service /etc/init.d/jotc
#starting a service is dead simple
chkconfig iptables on
service iptables start
#opening a port is a little trickier
#this line adds a rule right before the Word 'COMMIT' in iptables config
sed -i "/COMMIT/ { N; s/COMMIT\n/-A INPUT -p tcp -m tcp --dport 8888 -j ACCEPT\n&/ }" /etc/sysconfig/iptables
iptables-save > /etc/sysconfig/iptables
service iptables restart

誰かがこれから恩恵を受けることを願っています。それをすべて理解するのに3日かかりました:)(私のキックスタートファイルにはさらに50行あります)。

5
ivica