Public bug reported: We sometimes have people come and go, leaving behind old crontab files that, when they return, and are given the same username, no longer have the correct uid. This can cause cron to crash when it has the old crontab file on its orphans list. Below's a lightly-edited backtrace, with username replaced by "joeuser".
Here's the user's (former) crontab: -rw------- 1 48031 crontab 1216 Jul 26 15:36 /var/spool/cron/crontabs/joeuser Whereas his new uid is # id -u joeuser 48529 This is on bionic with cron 3.0pl1-128.1ubuntu1 --buck Core was generated by `/usr/sbin/cron -f'. Program terminated with signal SIGSEGV, Segmentation fault. #0 find_user (name=<optimized out>, db=0x0, db@entry=0x55fc9fe93ea0) at database.c:316 316 database.c: No such file or directory. (gdb) bt #0 find_user (name=<optimized out>, db=0x0, db@entry=0x55fc9fe93ea0) at database.c:316 #1 force_rescan_user (old_db=old_db@entry=0x0, new_db=new_db@entry=0x7fffe687cb50, fname=fname@entry=0x55fc9fe93ea0 "joeuser", old_mtime=old_mtime@entry=0) at database.c:588 #2 0x000055fc9f2b03ab in process_crontab (uname=0x55fc9fe93df0 "joeuser", fname=<optimized out>, tabname=0x55fc9fe93ec0 "crontabs/joeuser", statbuf=statbuf@entry=0x7fffe687ca80, new_db=new_db@entry=0x7fffe687cb50, old_db=old_db@entry=0x0) at database.c:460 #3 0x000055fc9f2b0ba6 in check_orphans (db=0x7fffe687cb50) at database.c:639 #4 0x000055fc9f2af6ce in main (argc=<optimized out>, argv=<optimized out>) at cron.c:178 ** Affects: cron (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to cron in Ubuntu. https://bugs.launchpad.net/bugs/1846025 Title: cron can crash (SIGSEGV) when trying to re-parent orphans Status in cron package in Ubuntu: New Bug description: We sometimes have people come and go, leaving behind old crontab files that, when they return, and are given the same username, no longer have the correct uid. This can cause cron to crash when it has the old crontab file on its orphans list. Below's a lightly-edited backtrace, with username replaced by "joeuser". Here's the user's (former) crontab: -rw------- 1 48031 crontab 1216 Jul 26 15:36 /var/spool/cron/crontabs/joeuser Whereas his new uid is # id -u joeuser 48529 This is on bionic with cron 3.0pl1-128.1ubuntu1 --buck Core was generated by `/usr/sbin/cron -f'. Program terminated with signal SIGSEGV, Segmentation fault. #0 find_user (name=<optimized out>, db=0x0, db@entry=0x55fc9fe93ea0) at database.c:316 316 database.c: No such file or directory. (gdb) bt #0 find_user (name=<optimized out>, db=0x0, db@entry=0x55fc9fe93ea0) at database.c:316 #1 force_rescan_user (old_db=old_db@entry=0x0, new_db=new_db@entry=0x7fffe687cb50, fname=fname@entry=0x55fc9fe93ea0 "joeuser", old_mtime=old_mtime@entry=0) at database.c:588 #2 0x000055fc9f2b03ab in process_crontab (uname=0x55fc9fe93df0 "joeuser", fname=<optimized out>, tabname=0x55fc9fe93ec0 "crontabs/joeuser", statbuf=statbuf@entry=0x7fffe687ca80, new_db=new_db@entry=0x7fffe687cb50, old_db=old_db@entry=0x0) at database.c:460 #3 0x000055fc9f2b0ba6 in check_orphans (db=0x7fffe687cb50) at database.c:639 #4 0x000055fc9f2af6ce in main (argc=<optimized out>, argv=<optimized out>) at cron.c:178 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/cron/+bug/1846025/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp