Could not read pid file និង shm_open(...): Permission denied អាចលេចឡើងក្នុងអំឡុងពេលចាប់ផ្តើម Squid បរាជ័យដូចគ្នា។ ពួកវាបង្ហាញធនធានផ្សេងគ្នា។ ការកែម្ចាស់ថតស្តុកបណ្តោះអាសន្នមិនកែទាំងពីរដោយខ្លួនឯងទេ។

នៅលើ Linux វត្ថុអង្គចងចាំរួម POSIX ជាធម្មតាត្រូវបានតំណាងនៅក្រោម /dev/shm។ ម្ចាស់ និងរបៀបចូលប្រើរបស់វាមានសារៈសំខាន់។ ដូច្នេះវត្ថុដែលបន្សល់ដោយអត្តសញ្ញាណដំណើរការផ្សេងអាចធ្វើឱ្យដំណើរការក្រោយបរាជ័យ ទោះបី squid.conf អានបាន និងច្រកស្តាប់ទំនេរក៏ដោយ។

សាងឡើងវិញថាតើដំណើរការនេះចាប់ផ្តើមដូចម្តេច

ប្រៀបធៀបការចាប់ផ្តើមសេវាធម្មតាជាមួយការចាប់ផ្តើមដោយដៃណាមួយដែលបានប្រើពេលដោះស្រាយបញ្ហា។ ដំណើរការដែលចាប់ផ្តើមដោយដៃ និងសេវាដែលខ្ចប់អាចប្រើអ្នកប្រើ ផ្លូវ ឬឯកសារកំណត់រចនាសម្ព័ន្ធផ្សេងគ្នា។ កំណត់ថាតើដំណើរការ Squid ផ្សេងទៀតនៅដំណើរការឬអត់ មុនពេលចាត់ទុកវត្ថុថាចាស់។

បន្ទាប់មកអានប្រតិបត្តិការជាក់លាក់ដែលបរាជ័យ។ កំហុស PID ទាក់ទងនឹងទីតាំង PID ដែលបានកំណត់ និងថតមេរបស់វា។ កំហុសកំណត់ហេតុទាក់ទងនឹងឯកសារ ឬថតកំណត់ហេតុ។ កំហុសចាប់ផ្តើមស្តុកបណ្តោះអាសន្នទាក់ទងនឹងការផ្ទុក។ កំហុស shm_open ទាក់ទងនឹងវត្ថុអង្គចងចាំរួមដែលមានឈ្មោះ ហើយអាចពាក់ព័ន្ធនឹងគោលនយោបាយសុវត្ថិភាពដែលអនុវត្តលើដំណើរការផងដែរ។

សម្រាប់ធនធាននីមួយៗ ប្រៀបធៀបការចូលប្រើពេលដំណើរការដែលត្រូវការ ជាមួយម្ចាស់ និងរបៀបបច្ចុប្បន្នរបស់វា។ ប្រសិនបើសិទ្ធិធម្មតាហាក់គ្រប់គ្រាន់ សូមពិនិត្យភស្តុតាងការបដិសេធពាក់ព័ន្ធក្នុង SELinux ឬ AppArmor។ “Permission denied” តែម្នាក់ឯងមិនបញ្ជាក់ថាស្រទាប់ណាបានបដិសេធការចូលប្រើទេ។

កែម្ចាស់ដោយមិនបង្កបញ្ហាទីពីរ

រក្សាគណនីដំណើរការឱ្យស៊ីគ្នានឹងការកំណត់សេវារបស់ការដំឡើង។ ការប្តូរអ្វីៗទាំងអស់ទៅ nobody អាចធ្វើឱ្យការចូលប្រើរបស់ជំនួយការខូច ហើយបង្កើតភាពមិនស៊ីគ្នាថ្មីជាមួយឯកសារដែលសេវាគ្រប់គ្រង។

ការលុបវត្ថុដែលមើលទៅដូច Squid ទាំងអស់ក្នុង /dev/shm ក៏មិនមែនជាជំហានដំបូងដ៏ល្អដែរ។ វត្ថុមានឈ្មោះអាចជាកម្មសិទ្ធិរបស់ដំណើរការសកម្ម។ ការសម្អាត នៅពេលចាំបាច់ គួរតែសំដៅលើធនធានដែលបោះបង់ចោលដែលបានបញ្ជាក់ ដោយសេវាដែលរងផលប៉ះពាល់ត្រូវបានឈប់ បន្ទាប់មកចាប់ផ្តើមតាមយន្តការសេវាធម្មតា។

លទ្ធផលដែលមានប្រយោជន៍គឺគំរូចាប់ផ្តើម និងម្ចាស់ដែលស៊ីគ្នា។ ការរត់ពាក្យបញ្ជាមួយជា root រហូតកំហុសបាត់ អាចទុកការចាប់ផ្តើមឡើងវិញធម្មតាបន្ទាប់ជាមួយបញ្ហាដូចគ្នា។

អត្ថបទពាក់ព័ន្ធ