update
This commit is contained in:
@@ -460,6 +460,28 @@ create_databases() {
|
|||||||
if [ -f "/var/www/moduleair_pro_4g/sqlite/create_db.py" ]; then
|
if [ -f "/var/www/moduleair_pro_4g/sqlite/create_db.py" ]; then
|
||||||
if sudo /usr/bin/python3 "/var/www/moduleair_pro_4g/sqlite/create_db.py"; then
|
if sudo /usr/bin/python3 "/var/www/moduleair_pro_4g/sqlite/create_db.py"; then
|
||||||
print_success "Databases created successfully"
|
print_success "Databases created successfully"
|
||||||
|
|
||||||
|
# Set proper permissions on database files
|
||||||
|
print_status "Setting database permissions..."
|
||||||
|
|
||||||
|
# Find all .db files in the sqlite directory and parent directory
|
||||||
|
if [ -d "/var/www/moduleair_pro_4g/sqlite" ]; then
|
||||||
|
# Set ownership and permissions for all database files
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db" -type f -exec chown www-data:www-data {} \;
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db" -type f -exec chmod 664 {} \;
|
||||||
|
|
||||||
|
# Set permissions on the sqlite directory itself
|
||||||
|
sudo chown -R www-data:www-data /var/www/moduleair_pro_4g/sqlite
|
||||||
|
sudo chmod 775 /var/www/moduleair_pro_4g/sqlite
|
||||||
|
|
||||||
|
# Also set permissions on any db-journal or db-wal files (SQLite temporary files)
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db-journal" -type f -exec chown www-data:www-data {} \;
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db-journal" -type f -exec chmod 664 {} \;
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db-wal" -type f -exec chown www-data:www-data {} \;
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db-wal" -type f -exec chmod 664 {} \;
|
||||||
|
|
||||||
|
print_success "Database permissions set"
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
print_error "Failed to create databases"
|
print_error "Failed to create databases"
|
||||||
return 1
|
return 1
|
||||||
@@ -469,6 +491,50 @@ create_databases() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Fix database permissions
|
||||||
|
fix_database_permissions() {
|
||||||
|
print_step "Fixing database permissions..."
|
||||||
|
|
||||||
|
# Set proper ownership and permissions for all database files
|
||||||
|
if [ -d "/var/www/moduleair_pro_4g" ]; then
|
||||||
|
# Find and fix all .db files
|
||||||
|
local db_count=$(sudo find /var/www/moduleair_pro_4g -name "*.db" -type f | wc -l)
|
||||||
|
|
||||||
|
if [ "$db_count" -gt 0 ]; then
|
||||||
|
print_status "Found $db_count database file(s)"
|
||||||
|
|
||||||
|
# Set ownership to www-data
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db" -type f -exec chown www-data:www-data {} \;
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db-*" -type f -exec chown www-data:www-data {} \;
|
||||||
|
|
||||||
|
# Set read/write permissions for owner and group
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db" -type f -exec chmod 664 {} \;
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db-*" -type f -exec chmod 664 {} \;
|
||||||
|
|
||||||
|
# Ensure directories containing databases are writable
|
||||||
|
sudo find /var/www/moduleair_pro_4g -name "*.db" -type f -exec dirname {} \; | sort -u | while read dir; do
|
||||||
|
sudo chown www-data:www-data "$dir"
|
||||||
|
sudo chmod 775 "$dir"
|
||||||
|
print_status "Fixed permissions for: $dir"
|
||||||
|
done
|
||||||
|
|
||||||
|
print_success "Database permissions fixed"
|
||||||
|
else
|
||||||
|
print_warning "No database files found"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Also ensure logs directory is writable
|
||||||
|
if [ -d "/var/www/moduleair_pro_4g/logs" ]; then
|
||||||
|
sudo chown -R www-data:www-data /var/www/moduleair_pro_4g/logs
|
||||||
|
sudo chmod -R 775 /var/www/moduleair_pro_4g/logs
|
||||||
|
print_success "Log directory permissions fixed"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
print_error "ModuleAir directory not found"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
# Set configuration
|
# Set configuration
|
||||||
set_configuration() {
|
set_configuration() {
|
||||||
print_step "Setting configuration..."
|
print_step "Setting configuration..."
|
||||||
@@ -638,6 +704,7 @@ main() {
|
|||||||
# Database and configuration setup
|
# Database and configuration setup
|
||||||
create_databases
|
create_databases
|
||||||
set_configuration
|
set_configuration
|
||||||
|
fix_database_permissions # Fix permissions after database creation
|
||||||
setup_cron_jobs
|
setup_cron_jobs
|
||||||
|
|
||||||
setup_services
|
setup_services
|
||||||
|
|||||||
Reference in New Issue
Block a user