I have had some issues getting the ftp command on a Juniper switch to download a new JunOS image from a FTP server. Basically I would initiate this command:
request system software add ftp://test:[email protected]/jinstall-ex-2200-12.3R1.7-domestic-signed.tgz
and then I would get this in return
Checking pending install on fpc0
error: File-fetch failed
error: Couldn’t retrieve package ftp://test:[email protected]/jinstall-ex-2200-12.3R1.7-domestic-signed.tgz
And after that I was basically stuck and had no idea what else to do to resolve it and how to pull down this image. Then I knew the underlying OS running on the switch is freebsd linux and this is shows when the switch first boots up. When the switch boots you get into the command line 0% which allows you to perform linux type commands, and this includes using the ftp package, only when you type “cli” you get into JunOS.
So with that in mind here is my attempt to update the image via FTP in 0% mode. You must make sure to type in “binary” to transfer the images in binary mode. I have used /var/tmp on the switch since that had most amount of space.
[email protected]:RE:0% cd /var/tmp
[email protected]:RE:0% ftp 10.1.1.1
Connected to 10.1.1.1.
Name (10.1.1.1:root): test
331 Password required for test
230 Logged on
Remote system type is UNIX.
200 Type set to I
ftp> mget jinstall-ex-2200-12.3R1.7-domestic-signed.tgz
200 Port command successful
150 Opening data channel for file transfer.
100% |**************************************************| 96491 KB 00:00 ETA
226 Transfer OK
98807485 bytes received in 130.93 seconds (736.97 KB/s)
Now we can see the image has been downloaded as its in the directory when typing ls.
[email protected]:RE:0% ls
Then to load the image to the switch simple type:
[email protected]:RE:0% cli
[email protected]>request system software add validate /var/tmp/jinstall-ex-2200-12.3R1.7-domestic-signed.tgz
[email protected]>request system reboot
I hope this has been been useful to someone as it has to me, i have no idea why the ftp method worked when outside the JunOS cli but inside JunOS it failed with an error.
Thanks a lot !