From: Bit Twister on 10 Jan 2010 06:44 On Sun, 10 Jan 2010 11:13:20 GMT, Mike Jones wrote: > Not going to work as I'm including stuff that doesn't appear on the > default install DVD. Yep, been there, done that, have the T-shirt. I always do clean installs on new release. My solution was to create a new_install script. It installed my basic extra applications and removed a few default apps, disabled some daemon/services then started calling install_whatever_app_here scripts or change_app_here and gets all updates. I reboot and run install_addons calling the install/change_app scripts. Then there is install_changes which then loads users into passwd/group files and makes changes based on node name. Those scrips would copy the app's config file(s) to whatever_vorig then modify the app's config file to what I want. Script checks if whatever_vorig exists, if so, skip install. If not, make one and install my changes. $ locate _vorig | wc -l 75
From: Mike Jones on 10 Jan 2010 10:32 Responding to Bit Twister: > On Sun, 10 Jan 2010 11:13:20 GMT, Mike Jones wrote: > >> Not going to work as I'm including stuff that doesn't appear on the >> default install DVD. > > Yep, been there, done that, have the T-shirt. > > I always do clean installs on new release. > > My solution was to create a new_install script. It installed my basic > extra applications and removed a few default apps, disabled some > daemon/services then started calling install_whatever_app_here scripts > or change_app_here and gets all updates. I reboot and run install_addons > calling the install/change_app scripts. > > Then there is install_changes which then loads users into passwd/group > files and makes changes based on node name. > > Those scrips would copy the app's config file(s) to whatever_vorig then > modify the app's config file to what I want. > > Script checks if whatever_vorig exists, if so, skip install. If not, > make one and install my changes. > Thats about where I am right now. In your experience\opinion, is it worth pursuing hacking the Slackware install DVD, or is it going to be a more productive option to simply polish up my post-install modifications package instead? I'm thinking complexity\time investment over convenience here. -- *=( http://www.thedailymash.co.uk/ *=( For all your UK news needs.
From: Henrik Carlqvist on 10 Jan 2010 14:04 Mike Jones <Not(a)Arizona.Bay> wrote: > I've already created and deployed a comprehensive post-install > customisation pack, including new Slack packages, and a list of > rip-outs, a bunch of custom configs, and so on. That is very useful when creating your own custom Slackware DVD. > What I'm looking to do is avoid having to do a post-install thing and > simply have all this already on my install DVD so it's ready to fly > after a single install operation. Yep, all that you otherwise would do after the install could be done by adding some custom packages of your own. > I'll also be looking at pre-setting various options, like a UK keyboard, > time set to Europe-London, and so on. Again, all that can be done by adding your own packages. Most likely you also want it to be done automatically without any questions asked from some script in /var/log/setup. For that reason you make sure that your custom package overwrites the script asking questions with a script which does the setting you want. So you could for instance have a package which replaces /var/log/setup/setup.timeconfig with a script which sets your time zone to Europe-London without asking any questions. > My problem is that I can't find\figure out what needs to be customised, > or how to begin tweaking things. I need a few pointers here. Only you know what you want to customize. If you don't know what you want to change you shouldn't change anything. The standard Slackware installation is supposed to be "one size fits all". If I told you what I prefer to customize you would get a Slackware insallation that is superb for me, but you would probably be better off with a standard Slackware installation DVD. That said, I prefer an installation which asks as few questions as possible before starting to install packages and no questions at all after the packages has been installed. With such an installation DVD I can boot from the DVD and two minutes later after having answered a few questions leave the machine. 45 minutes later I can come back to a graphical login prompt, login to the machine with my NIS password, access my automounted home directory from the NFS server and print to network printers. During the installation phase there are also some steps and questions to be asked. Things like how to partition your drive, which packages to install. Those steps cannot be avoided by adding packages. If you want to customize those steps you will instead have to customize the installation scripts in the initrd. Creating such an installation DVD involves a lot of work. It is not only about customizing the Slackware installation, you probably also want to add a lot of extra software. Maybe I have spent 20-40 hours to get my installation disc the way I want it, but it pays off when you have a lot of machines to install. regards Henrik -- The address in the header is only to prevent spam. My real address is: hc3(at)poolhem.se Examples of addresses which go to spammers: root(a)localhost postmaster(a)localhost
From: Mike Jones on 10 Jan 2010 16:31 Responding to Henrik Carlqvist: > Mike Jones <Not(a)Arizona.Bay> wrote: >> I've already created and deployed a comprehensive post-install >> customisation pack, including new Slack packages, and a list of >> rip-outs, a bunch of custom configs, and so on. > > That is very useful when creating your own custom Slackware DVD. > >> What I'm looking to do is avoid having to do a post-install thing and >> simply have all this already on my install DVD so it's ready to fly >> after a single install operation. > > Yep, all that you otherwise would do after the install could be done by > adding some custom packages of your own. > >> I'll also be looking at pre-setting various options, like a UK >> keyboard, time set to Europe-London, and so on. > > Again, all that can be done by adding your own packages. Most likely you > also want it to be done automatically without any questions asked from > some script in /var/log/setup. For that reason you make sure that your > custom package overwrites the script asking questions with a script > which does the setting you want. So you could for instance have a > package which replaces /var/log/setup/setup.timeconfig with a script > which sets your time zone to Europe-London without asking any questions. > >> My problem is that I can't find\figure out what needs to be customised, >> or how to begin tweaking things. I need a few pointers here. > > Only you know what you want to customize. If you don't know what you > want to change you shouldn't change anything. The standard Slackware > installation is supposed to be "one size fits all". If I told you what I > prefer to customize you would get a Slackware insallation that is superb > for me, but you would probably be better off with a standard Slackware > installation DVD. A clue or two about where to start, or even just which files I need to focus on learning about on the install DVD would be useful. > That said, I prefer an installation which asks as few questions as > possible before starting to install packages and no questions at all > after the packages has been installed. With such an installation DVD I > can boot from the DVD and two minutes later after having answered a few > questions leave the machine. 45 minutes later I can come back to a > graphical login prompt, login to the machine with my NIS password, > access my automounted home directory from the NFS server and print to > network printers. > > During the installation phase there are also some steps and questions to > be asked. Things like how to partition your drive, which packages to > install. Those steps cannot be avoided by adding packages. If you want > to customize those steps you will instead have to customize the > installation scripts in the initrd. > > Creating such an installation DVD involves a lot of work. It is not only > about customizing the Slackware installation, you probably also want to > add a lot of extra software. Maybe I have spent 20-40 hours to get my > installation disc the way I want it, but it pays off when you have a lot > of machines to install. So, how d'ya did it then? What didja hack? HOW didja hack it? ;\ -- *=( http://www.thedailymash.co.uk/ *=( For all your UK news needs.
From: Bit Twister on 10 Jan 2010 17:10 On Sun, 10 Jan 2010 15:32:35 GMT, Mike Jones wrote: > In your experience\opinion, is it worth pursuing hacking the Slackware > install DVD, or is it going to be a more productive option to simply > polish up my post-install modifications package instead? > > I'm thinking complexity\time investment over convenience here. Think about it, you have to debug the new distribution release/new app configuration, test, modify the install DVD, verify change, burn new DVD, do backups. With script method, it's debug, modify script, test, do backups. If you support more than one node, DVD is not the way to update an application. You still have to do the work. My way, I modify script, cut each command from script paste in terminal to do work and that performs 99% of my script test. Anytime an update of app config file comes out, I copy new config file to whatever_vorig, run script with -i, then run script again to fold in my changes. We know configuration words change, so do values. In some cases config file name/location change. With a little thought your script can manage those fairly easy. For interactive package installs, you can use expect to do the interactive answers. Here is an example, I install the dovecot package in my install_addons script. I run change_dovecot to change 5 configuration lines, and tell logrotate about the new log file needing compressing. #****************************************************************** #* #* dovecot_changes - installs my dovecot configuration changes #* #****************************************************************** _exe=$0 _arg1="$1" echo " running $_exe " .. /local/bin/functions_change #**************************************** # dovecot changes, if it is installed #**************************************** _fn=/etc/dovecot.conf if [ -e $_fn ] ; then if [ ! -e ${_fn}_vorig ] ; then echo "fixing $_fn" mkdir -p /var/log/dovecot cp_vorig $_fn /bin/cp /dev/null $_fn while read -r line ; do set -- $line case $1 in "#log_path") line="log_path = /var/log/dovecot/errors.log" ;; "#info_log_path") line="log_path = /var/log/dovecot/info.log" ;; "#mail_location") line="mail_location = mbox:~/mail:INBOX=/var/spool/mail/%u" ;; "#protocols") line="protocols = imap imaps" ;; "#mail_privileged_group") line="mail_privileged_group = mail" ;; *) ;; esac echo "$line" >> $_fn done < ${_fn}_vorig #*********************************** #* tell logrotate about dovecot files #* to compress and rotate #*********************************** _fn=/etc/logrotate.d/dovecot echo " /var/log/dovecot/*.log {" > $_fn echo " weekly" >> $_fn echo " notifempty" >> $_fn echo " missingok" >> $_fn echo " compress" >> $_fn echo " postrotate" >> $_fn echo " /usr/bin/killall -HUP dovecot" >> $_fn echo " endscript" >> $_fn echo "}" >> $_fn service dovecot restart fi # end if [ ! -e ${_fn}_vorig ] ; then fi if [ "$_arg1" = "-i" ] ; then restore_vorig /etc/dovecot.conf service dovecot restart fi echo " completed $_exe " #************************ end dovecot_changes ********************* Here is my functions_change script. #****************************************************************** #* #* functions_change - functions for changes scripts #* #****************************************************************** function cp_vorig { _fn=$1 if [ -z "$_fn" ] ; then echo "cp_vorig: arg1 is null" exit 1 fi if [ -e $_fn ] ; then if [ ! -e ${_fn}_vorig ] ; then cp $_fn ${_fn}_vorig fi fi } function mv_vorig { _fn=$1 if [ -z "$_fn" ] ; then echo "mv_vorig: arg1 is null" exit 1 fi if [ -e $_fn ] ; then if [ ! -e ${_fn}_vorig ] ; then mv $_fn ${_fn}_vorig fi fi } function restore_vorig { _fn=$1 if [ -z "$_fn" ] ; then echo "restore_vorig arg1 is null" exit 1 fi if [ -e ${_fn}_vorig ] ; then if [ -e ${_fn}_vorig ] ; then echo "renamed ${_fn}_vorig $_fn" /bin/mv ${_fn}_vorig $_fn fi fi } #************************** end functions_changes ****************
First
|
Prev
|
Next
|
Last
Pages: 1 2 3 4 5 Prev: I once paid about �200 for a compiler Next: ralink USB adapter w/ RT2870 chip |