@@ -243,22 +243,23 @@ func generateInitRamfs(conf *generatorConfig) error {
243
243
// appendCompatibilitySymlinks appends symlinks for compatibility with older firmware that loads extra files from non-standard locations
244
244
func appendCompatibilitySymlinks (img * Image ) error {
245
245
symlinks := []struct { src , target string }{
246
- {"/lib" , "/ usr/lib" },
247
- {"/usr/local/lib" , "/usr /lib" },
248
- {"/usr/sbin" , "/usr/ bin" },
249
- {"/bin" , "/ usr/bin" },
250
- {"/sbin" , "/ usr/bin" },
251
- {"/usr/local/bin" , "/usr /bin" },
252
- {"/usr/local/sbin" , "/usr /bin" },
253
- {"/var/run" , "/run" },
254
- {"/usr/lib64" , "/usr/ lib" },
255
- {"/lib64" , "/ usr/lib" },
246
+ {"/lib" , "usr/lib" },
247
+ {"/usr/local/lib" , ".. /lib" },
248
+ {"/usr/sbin" , "bin" },
249
+ {"/bin" , "usr/bin" },
250
+ {"/sbin" , "usr/bin" },
251
+ {"/usr/local/bin" , ".. /bin" },
252
+ {"/usr/local/sbin" , ".. /bin" },
253
+ {"/var/run" , ".. /run" },
254
+ {"/usr/lib64" , "lib" },
255
+ {"/lib64" , "usr/lib" },
256
256
}
257
257
258
258
for _ , l := range symlinks {
259
259
// Ensure that target always exist which may not be the
260
260
// case if we only install files from /lib or /bin.
261
- if err := img .AppendDirEntry (l .target ); err != nil {
261
+ targetDir := filepath .Dir (filepath .Join (filepath .Dir (l .src ), l .target ))
262
+ if err := img .AppendDirEntry (targetDir ); err != nil {
262
263
return err
263
264
}
264
265
0 commit comments