小编Ara*_*ani的帖子

在RPM中创建符号链接

我在Linux上具有特定版本的软件,并且正在以rpm格式打包.jar文件(旨在升级现有软件),然后尝试重新创建符号链接以指向jar的最新版本。我尝试使用%post%postun创建和删除符号链接(如果它已经存在),但是这不起作用。我在互联网上看到了一些帖子,但是它们没有用。

解决方法是,我尝试在puppet中创建符号链接。为此,我使用了以下内容:

if $version == ‘1.1'  {
    file { '/usr/share/prog/software.jar':
    ensure  => 'symlink',
    target  => '/usr/share/prog/java/software-1.1-bin.jar',
}
Run Code Online (Sandbox Code Playgroud)

但是即使在这里,也将创建新版本的jar,但不会创建符号链接。

请让我知道之前是否有人解决过此问题。

以下是我使用的规格文件:

%define base_install_dir %{_datadir}/prog

Name:cdplayer
Version:1.1
Epoch:1
Release:2el6
Source:cdplayer-1.1-bin.jar
BuildArch:noarch
%description    
%prep
%install
%{__mkdir} -p %{buildroot}%{base_install_dir}
%{__install} -D -m 755 %{SOURCE0} %{buildroot}%{base_install_dir}

%post
ln -s -f /usr/share/prog/cdplayer-1.1-bin.jar /usr/share/prog/cdplayer.jar
%postun
%{__rm} -f /usr/share/prog/cdplayer.jar
%files
%defattr(-,root,root,-)
%dir %{base_install_dir}
%{base_install_dir}/*

%changelog
Run Code Online (Sandbox Code Playgroud)

linux rpm puppet

2
推荐指数
1
解决办法
7440
查看次数

标签 统计

linux ×1

puppet ×1

rpm ×1