Is there any need to edit it in windows before starting the first time ? other than for the reason so that you can mine right away after boot ?
The first one I set up I edited it first the next four rigs I built I did it after. You might lose out on five minutes of mining. I burn the USB and stick it straight in the rig and turn it on. Once it is up and running I edit the 1bash (which is much easier in Linux with the highlighting) and then save it and reboot.
I had an issue one time with a bad usb image. Not sure what happened but making sure it boots with the default setup before taking the time to edit the 1bash seems like a good time saving idea to me.
The only downside is you may not have your payment addresses where you can access them on the new Linux boot up. I HATE manually typing them out and always prefer to copy and paste. With multiple rigs I just SSH to another rig and copy and paste from one 1bash to another.
Easier way is to create yor 1bash and save it to pastebin as instructed in upPASTE,
On first boot open 1bash and setup upPASTE and reboot
upPASTE will read from pastebin and update your 1bash.
Another way to streamline ops is to create a master image.
You can actually mount the image directly and edit 1bash, then boot straight into known config the first time and start mining (so all config can be done offline)
In cases where you use static IPs/static rig name/any additional routes not passed on from DHCP/or custom miners not included in stock nvOC I found the following really helped instead of recompiling or copying things around:
1 Take the image with all your pretty customizations/compiles etc
2 Boot that image on every board at least once
3 set any static settings you require during that time (ip/worker name/static routes) then once you've done this for all the rigs, image that USB and it becomes your master (every rigs ethernet interface will be remembered as a separate interface, it helps to identify them as well at the time you're editing static settings).
Once you have your master image you can drop in the necessary 1bash or specific configs before you image your target USB.
3.5 create an image, this now becomes the master image for all your rigs.
4 It's a good idea to keep all the latest miner specific configs on the image - I use the 10Mb partition to keep 1bash and any other specific configs on the master image and copy the desired config as needed before imaging the usb.
This has saved me lots of time between upgrades as well as USB failures, I've had 3 USBs die in past few months and having one spare ready to go for any rig really helps minimizing downtime.
Editing an .img can be done as follows:
cd /path/to/where/saved/your/image
sudo losetup -d /dev/loop0
sudo modprobe loop
sudo losetup -f
sudo losetup /dev/loop0 your master_image_file.img
sudo partprobe /dev/loop0
You should be able to browse the partitions on the image and add/edit any files (this is actually how I update the master with new functionality)
The commands below will help you resize any partitions on the image directly - was more useful before v0019 when the USB image required a true 16G USB, but this can still be useful for cloning from a larger SSD to a smaller one etc, or simply if you had chosen a larger usb to be the master, and then have to boot at least one rig from a smaller USB:
#to resize the partition
sudo gparted /dev/loop0
#(14230M) <-this is what I found fits on most 16Gig USBs
sudo losetup -d /dev/loop0
fdisk -l master_image_file.img.img
# find the ending sector of your last partition - in the case if v0019 and a 1423M partition it seems to be sector 29163519
# the command below truncates your image one sector after the last partition sector - therefore shrinking the image to your desired capacity
truncate --size=$[(29163519+1)*512] master_image_file.img.img