If the "Discard all but the last successful/stable artifact to save disk space" box under "Archive the artifacts" is checked, Jenkins will delete the artifacts from an old build even if the "Keep this build forever" button was clicked on the old build.
I doubt this matters but we run our Jenkins master via "java -jar /usr/share/jenkins/jenkins.war"