最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

docker容器中cron任務(wù)未執(zhí)行的原因分析及解決

 更新時間:2025年08月13日 10:01:39   作者:IT雜人  
在Ubuntu?22.04鏡像中cron任務(wù)執(zhí)行失敗,可能與pam權(quán)限或文件權(quán)限設(shè)置有關(guān),解決方法包括動態(tài)加載任務(wù)至crontab及將文件權(quán)限設(shè)為600(容器默認(rèn)umask=0022),后者因權(quán)限沖突導(dǎo)致執(zhí)行失敗,推薦此方案

前提

  1. cron正確安裝: apt-get cron
  2. cron-job格式正確:*/1 * * * * /bin/sh xxx
  3. cron-job的文件位置正確:/var/spool/cron/crontabs/root

現(xiàn)象

在宿主機安裝能成功,反復(fù)檢查沒問題,只要安裝到ubuntu:22.04鏡像中就執(zhí)行不了

(無解)解決一:pam權(quán)限問題

網(wǎng)上有部分是這原因,但我不是~

RUN echo '*/1 * * * * /bin/sh xxx.sh'>>/var/spool/cron/crontabs/root
RUN sed -i '/session    required   pam_loginuid.so/c\#session    required   pam_loginuid.so' /etc/pam.d/cron

(可行)解決二:動態(tài)加載到cron執(zhí)行任務(wù)中

此方法測試可行,強制加入文件到crontab執(zhí)行任務(wù)中,且文件的位置可任意指定

RUN echo '*/1 * * * * /bin/sh xxx.sh'>>/var/spool/cron/crontabs/root
RUN crontab /var/spool/cron/crontabs/root

(推薦,最終原因)解決三:job文件權(quán)限修改為600

/var/spool/cron/crontabs下的文件必須是600(-rw-------)的文件權(quán)限,而不應(yīng)該使用容器的644權(quán)限(容器里一般umask=0022),權(quán)限低的能執(zhí)行成功,權(quán)限高的反而執(zhí)行失敗。

此種方法使用了cron默認(rèn)操作方式,推薦使用。

RUN echo '*/1 * * * * /bin/sh xxx.sh'>>/var/spool/cron/crontabs/root \
        && chmod 600 /var/spool/cron/crontabs/root

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

高唐县| 中牟县| 塔河县| 安福县| 化州市| 资源县| 安康市| 高陵县| 布拖县| 阳西县| 麻城市| 无为县| 淄博市| 开化县| 彰化市| 商洛市| 普宁市| 永修县| 景宁| 奉节县| 远安县| 内乡县| 唐河县| 正镶白旗| 津南区| 中山市| 萨迦县| 罗源县| 遂溪县| 怀柔区| 静安区| 禹城市| 大姚县| 刚察县| 施甸县| 北川| 达孜县| 扎赉特旗| 莱州市| 安徽省| 古田县|