LinuxBabu ………..

Plesk

Zone file and corresponding record in named.conf are missed for particular domain

by dino on Jan.29, 2010, under Plesk

Symptoms
Bind DNS server is used.
There is no entry in named.conf for some domain, there also no zone file for it in %plesk_bin%dns\var folder. If records are created manually they will be removed the next time Plesk updates named.conf.
Cause
There is wrong status in dns_zone table for this domain (it is configured to 2). If DNS for some domain is managed in Plesk Control Panel, the status for this domain in dns_zone table is temporary setting to value 2 (to lock it for any changes) and sets it to 0 value when the transaction is over. If for some reason the transaction is interrupted during DNS
managing (Plesk restarts for example) the status field value is not changed to 0 and stays as 2. Domains with that status value are not recorded in named.conf file during any DNS management.
Resolution
Notes: You are recommended to backup Plesk database before applying described solution.
To run SQL queries you can use dbclient.exe tool.

Check dns_zone records for problem domain (domain.com for example):

Example for MysQL (Jet)

select * from dns_zone where name like 'domain.com';

If there is only one selected record, please change status field from 2 to 0.

Notice, that in case that there are several records, Plesk uses the first of them in numeral order. So it is necessary to check that this id does not belong to another domain and delete it in case it is orphaned:

delete from dns_zone where id=[wrong_record_id]

Otherwise set correct values to all fields.

Please apply following query to DNS zone record which belongs to problem domain:

update dns_zone set status=0 where id=[where id is numerical value
obtained from query 1]

When it’s done update DNS records using dnsmng.exe utility:

cd %plesk_bin%
dnsmng.exe update *

Leave a Comment : more...

Domain cannot be open in Parallels Plesk Panel: SysUser: unable to select: no such row in the table

by dino on Jan.26, 2010, under Plesk

The following error is shown when try to open domain in Parallels Plesk Panel 8.x through Domains -> domain.tld:

Unable to create SysUser object: SysUser: unable to select: no such row in the table

0: /usr/local/psa/admin/plib/class.DomainControlForm.php:168
DomainControlForm->assign(object of type BsDomain)
1: /usr/local/psa/admin/htdocs/domains/dom_ctrl.php3:149

In Parallels Plesk Panel 9.x through Domains -> domain.tld:

Unable to create PHostingManager object:An error occured during SysUser class creation: SysUser: unable to select: no such row in the table

0: common_func.php3:108
psaerror(string ‘Unable to create PHostingManager object:An error occured during SysUser class creation: SysUser: unable to select: no such row in the table’)
1: client.domain.hosting.anonymous-ftp.php:19
plesk__client__domain__hosting__anonymous_ftp->validateHosting(object of type BsDomain)
2: client.domain.hosting.anonymous-ftp.php:47
plesk__client__domain__hosting__anonymous_ftp->validateItem(object of type UserAdmin)
3: UIPointer.php:1123
UIPointer->validate()

Cause
Physical hosting is configured on the domain, however appropriate system user is missing:

mysql> select * from (select A.id, A.name as domain, A.htype as 'hosting type', sys_users.login as 'system user' from (select id, concat('/var/www/vhosts/', name) as home, htype, name from domains) A left join sys_users on (A.home=sys_users.home)) B where `hosting type` = 'vrt_hst' and `system user` is NULL;
+-----+------------+--------------+-------------+
| id | domain | hosting type | system user |
+-----+------------+--------------+-------------+
| 15 | domain.tld | vrt_hst | NULL |
+-----+------------+--------------+-------------+
1 row in set (0.00 sec)

mysql>

Where domain.tld is your domain that experiences the problem. /var/www/vhosts is PRODUCT_ROOT_D, it may be /var/www/vhosts, /usr/local/www/vhosts or /srv/www/vhosts on your server.
Resolution
The following instructions are recommended for problem resolving.

1. Backup old database of Parallels Plesk Panel before any reconfiguration.

~# mysqldump -uadmin -p`cat /etc/psa/.psa.shadow` psa > psa.dump.`date +%F.%s`.sql

2. Further instructions depends on either domain system user exist.
2.1 System user exists:

~# grep domain.tld /etc/passwd
domain_ftp_user:x:10001:2524::/var/www/vhosts/domain.tld:/bin/false
~#

Where /var/www/vhosts is PRODUCT_ROOT_D. domain_ftp_user is old domain’s system user.

3.1 To resolve the problem it is recommended to insert the missing record into database of Parallels Plesk Panel manually.

3.1.1 Get ID of domain’s system user:

mysql> select sys_user_id from hosting where dom_id=15;
+-------------+
| sys_user_id |
+-------------+
| 4 |
+-------------+
1 row in set (0.00 sec)

mysql>

Where 15 is domain’s ID, for details see query in part CAUSE.

3.1.2 Insert account record:

mysql> insert into accounts(type,password) values ('plain','');
Query OK, 1 row affected (0.09 sec)

mysql>

Where is new password for new system user for the domain. This is password for domain’s FTP user also.

3.1.3 Find ID of created record:

mysql> select * from accounts order by id desc limit 1;
+-----+-------+------------------+
| id | type | password |
+-----+-------+------------------+
| 186 | plain | |
+-----+-------+------------------+
1 row in set (0.00 sec)

mysql>

3.1.4 Insert record into table sys_users:
mysql> insert into sys_users values (4,'sb4',186,'/var/www/vhosts/domain.tld','/bin/false',0);
Query OK, 1 row affected (0.08 sec)

mysql>

Where is login of new system user for domain domain.tld, it is also domain’s FTP user. And 4 is domain’s sys_user_id, 186 is ID of new password.

2.2 System user does not exist.

~# grep domain.tld /etc/passwd
~#

3.2 It is recommended to re-enable physical hosting for the domain anew. However note that whole virtual hosting directory is overwritten and domain content is lost.

3.2.1 Disable hosting for domain:

mysql> update domains set htype='none' where name='domain.tld';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0

mysql> delete from hosting where dom_id=15;
Query OK, 1 row affected (0.00 sec)

mysql>

Where 15 is domain’s ID, for details see query in part CAUSE.

3.3.3 Login to Parallels Plesk Panel and configure physical hosting for the domain anew through Domains -> domain.tld -> Setup. Choose Physical hosting, insert new user login and password. Click OK to finish configuration.
Additional information
Use the following command to connect to database of Parallels Plesk Panel:

~# mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa

Leave a Comment : more...

How do I repair/rebuild all mail configuration files and restore settings for all mailboxes?

by dino on Jul.31, 2009, under Plesk

Resolution
This can be done with Plesk mchk utility:

# /usr/local/psa/admin/sbin/mchk --help
Synopsis:
mchk [OPTION]
--without-spam - restore all settings except for SpamAssassin configuration
--with-spam - restore all settings
--spam-only - restore only SpamAssassin settings

This utility rebuilds in line with Plesk database Qmail control files in the /var/qmail/control, /var/qmail/users directories and mail users’ settings. Also, it sets proper ownership/permissions for all mailboxes (/var/qmail/mailnames/*).

Example:
# /usr/local/psa/admin/sbin/mchk --with-spam

Leave a Comment :, more...

I get the error: “Could not connect to SQL database. Too many connections”.

by dino on Jul.31, 2009, under Plesk

Symptoms
Sometimes I get the “Too many connections” error in Plesk CP or when open a site in my browser:

Unable to connect to database: Too many connections

Cause
This error means that the limit of simultaneous MySQL connection to mysql server is reached and new connections to the server cannot be established at this time.

Resolution
There are two ways to solve this issue. The first one is increase the connection limit and the second, find what is the reason of “too many connection” error and try to lower MySQL server usage.

MySQL server state can be checked using ‘mysqladmin’ utility. For example to find out the number of current connections to the server use:

# mysqladmin -uadmin -p`cat /etc/psa/.psa.shadow` extended-status | grep Max_used_connections
| Max_used_connections | 11 |

Current connections limit settings can be found with:

# mysqladmin -uadmin -p`cat /etc/psa/.psa.shadow ` variables | grep 'max.*connections'
| max_connections | 100 |
| max_user_connections | 0

In the example above, maximum number of connections to the server (max_connections) is set to 100. And maximum number of connections per user (max_user_connections) to zero, that means unlimited. There are default MySQL values. They can be redefined in /etc/my.cnf, for example:

[mysqld]
set-variable=max_connections=150
set-variable=max_user_connections=20

Restart MySQL after my.cnf is modified.

Note, if you set connections limit to very high value (more than 300) it may affect the server performance. It is better to find out the reason of the high MySQL server usage. You may check what users/requests slow mysql and take all curent connections, for example with the command:

# mysqladmin -uadmin -p`cat /etc/psa/.psa.shadow` processlist

Leave a Comment more...

Parallels Plesk Panel reports that updates are available however all components are should updated on autoinstaller page

by dino on Jul.31, 2009, under Plesk

Symptoms
When I log to Parallels Plesk Panel it tells me that I have updates.
But when I check updates on page Home -> Updates -> Parallels Plesk Panel 9.2.x everything looks updated.

What causes the problem?
Cause
This issue is caused by the fact that there are still some components of Parallels Plesk Panel that need to be upgraded. But these components not listed on the Updater page in Parallels Plesk Panel.

Resolution
The problem will be fixed in future updates of Parallels Plesk Panel. As s solution for now it is recommended to upgrade the older component manually.

Run the following command to get list of Plesk components ready for updating:

~# /usr/local/psa/admin/sbin/autoinstaller --select-release-id PLESK_9_2_0 --show-components 2>&1 | grep upgrade
qmail [upgrade] - Qmail mailserver
~#

Put your own release ID instead of PLESK_9_2_0.

Use the following command to install the component:

~# /usr/local/psa/admin/sbin/autoinstaller --select-release-latest --install-component qmail

Leave a Comment more...

Message cannot be delivered and error “Unable to stat …executable’ or it is not link: No such file or directory” in maillog

by dino on Jul.31, 2009, under Plesk

Symptoms
For some account messages cannot be delivered and the following errors are shown in maillog:

/usr/local/psa/var/log/maillog
--->8---
Jun 10 03:53:42 vps310 postfix-local[21983]: Unable to stat entry '/usr/local/psa/handlers/info/10-spam-0gemCa/executable' or it is not link: No such file or directory
---8<---

Utility mchk does not fix the problem.

Cause
The error is caused by the fact that configuration of mail handler 10-spam-0gemCa is broken.
According to configuration in file system mail account mail@domain.name.tld has spamfilter enabled:

~# find /usr/local/psa/handlers/ -name '10-spam-0gemCa'
/usr/local/psa/handlers/before-local/recipient/mail@domain.name.tld/10-spam-0gemCa
~#

During message processing mail service is looking for executable binary, however it is missing:

~# ls -l /usr/local/psa/handlers/info/10-spam-0gemCa/executable
ls: /usr/local/psa/handlers/info/10-spam-3HB5Xe/executable: No such file or directory
~#

Resolution
It is advised to remove all mail handlers and run utility mchk to restore configuration according to Plesk database.
Stop services qmail, postfix, courier-imap and xinetd, backup old handlers and remove them:

~# /etc/init.d/postfix stop
~# /etc/init.d/qmail stop
~# /etc/init.d/courier-imap stop
~# /etc/init.d/xinetd stop

~# mkdir /root/temp
~# cp -a /usr/local/psa/handlers/before-local/recipient /root/temp/
~# cp -a /usr/local/psa/handlers/info /root/temp/
~# rm -rf /usr/local/psa/handlers/before-local/recipient/*
~# rm -rf /usr/local/psa/handlers/info/*

Then run utility mchk to recreate mail handlers. The output may look like the following:

~# /usr/local/psa/admin/sbin/mchk --with-spam
==> Checking for: mail_spam_restore... ok
==> Checking for: mailsrv_conf_init... ok
==> Checking for: mail_mailbox_restore... ok
==> Checking for: mailsrv_entities_dump... ok
==> Checking for: mail_admin_aliases... ok
==> Checking for: mail_auth_dump... ok
==> Checking for: mailman_lists_dump... ok
==> Checking for: mail_responder_restore... ok
==> Checking for: mail_drweb_restore... ok
==> Checking for: mail_kav_restore... not exsists
==> Checking for: mail_spf_restore... ok
==> Checking for: mail_dk_restore... ok
==> Checking for: mail_grey_restore... ok
~#

IMPORTANT: custom mail handlers will be lost after the reconfiguration. They need to be recreated.

Start services qmail, postfix, courier-imap and xinetd after the reconfiguration.
Additional information
The same problem may affect DrWeb Antivirus. You might get the following Antivirus filter report in bounce message:

--- Dr.Web report ---
Dr.Web detailed report:
The filter cannot connect to the DrWEB daemon

--- Dr.Web report ---

This meant that the message could not be delivered because execution of DrWeb mail handler failed.
Additional information
Parallels Plesk Panel 9.x provides ability to configure and put custom mail handlers: PPP 9.2 for Linux/Unix:: Modules API Reference
These handlers do not correspond to records in Plesk database, so mchk does not reconfigure mail handlers automatically.

Currently it is advised to recreate mail handlers according to the instructions above.

Leave a Comment more...

Plesk 9.X Upgrades : Table ‘mysql.procs_priv’ doesn’t exist

by dino on Jun.28, 2009, under Plesk

Plesk Upgrades to Plesk 9.X may result in MySQL errors while adding new Database user under Plesk.

Error under Plesk :
Table ‘mysql.procs_priv’ doesn’t exist

You can also check the same error under command line :

mysql> flush privileges;
ERROR 1146 (42S02): Table ‘mysql.procs_priv’ doesn’t exist
mysql>

This can be fixed using below command. This will try to repair/ recreate the tables having issues.

cat /usr/share/mysql/mysql_fix_privilege_tables.sql | mysql --no-defaults --force --user=admin -p --host=localhost --database=mysql

Note: Before executing this command, make sure that you have taken the full backup of MySQL.

Hope this helps :)

1 Comment :, more...

Plesk : Upgrading failed with error while trying to execute SQL query

by dino on May.28, 2009, under Plesk

Symptoms
Upgrade version 8.6 failed. The following error is shown in upgrade log:

/tmp/psa_8.6.0_cos4.build86080722.02_upgrade.090611.00.57.log
—>8—
ERROR while trying to execute SQL query, the query was: DELETE FROM mysql.user WHERE user = ”; FLUSH PRIVILEGES;

Aborting…

STOP psa-8.6.0-cos4.build86080722.02 upgrading AT Thu Jun 11 00:57:52 CDT 2009
—8<---

What does the error mean and how to resolve the problem?

Cause
Execution of query “FLUSH PRIVILEGES” is not possible because table ‘mysql.procs_priv’ is missing in database ‘mysql’.
To verify login to mysql and try the command:

mysql> flush privileges;
ERROR 1146 (42S02): Table ‘mysql.procs_priv’ doesn’t exist

mysql>

Resolution
In MySQL 5.0 you may create the table with the following query:

mysql> CREATE TABLE `procs_priv` (
`Host` char(60) collate utf8_bin NOT NULL default '',
`Db` char(64) collate utf8_bin NOT NULL default '',
`User` char(16) collate utf8_bin NOT NULL default '',
`Routine_name` char(64) collate utf8_bin NOT NULL default '',
`Routine_type` enum('FUNCTION','PROCEDURE') collate utf8_bin NOT NULL,
`Grantor` char(77) collate utf8_bin NOT NULL default '',
`Proc_priv` set('Execute','Alter Routine','Grant') character set utf8 NOT NULL default '',
`Timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
PRIMARY KEY (`Host`,`Db`,`User`,`Routine_name`,`Routine_type`),
KEY `Grantor` (`Grantor`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Procedure privileges'

After the table was created you may continue upgrading.

It is recommended to download Plesk distributive from Parallels website, unpack it and install packages with “rpm -Uvh”.

Note: Before executing this command, make sure that you have taken the full backup of MySQL.

OR

cat /usr/share/mysql/mysql_fix_privilege_tables.sql | mysql --no-defaults --force --user=admin -p --host=localhost --database=mysql

Leave a Comment :, more...

Plesk 8.x error : Unable to remove hosting: Unable to delete system user: SysUser->systemRemove() failed: usermng failed: Unknown error 0xC00CE558 (COM Error C00CE558) at execute command del” while deleting the domains

by dino on May.18, 2009, under Plesk

I faced a issue while deleted few domains from Plesk 8.6.

Error While deleting a domain from Plesk :

Unable to remove hosting: Unable to delete system user: SysUser->systemRemove() failed: usermng failed: Unknown error 0xC00CE558 (COM Error C00CE558) at execute command del” while deleting the domains

Every domains showed a COM error when tried to delete it. Here is a fix which I found :

Find a file name “DeferredRemovalStorage.xml” under directory %plesk_dir%\etc\ open it in notepad and you will see it empty, add the code as in the file and save :

<?xml version=”1.0″ encoding=”UTF-8″ standalone=”no” ?>

<Entries />

 

Now you will be able to delete the domains fine. If it still not work you can try

cd %plesk_bin%
mchk.exe --domain --domain-name=domain.com --fix=all

1 Comment more...

What’s new in Plesk 9?

by dino on Feb.28, 2009, under Plesk

Whats new in Plesk 9.0?

With it’s new multilevel control, Parallels Plesk 9 makes it easy to automate web hosting solutions for small business and resellers. There are five login levels to the control panel each level having its own permissions and features.

Administrator – This user has the highest level of permissions. Can be used to easily and quickly setupsystem services, and manage server users.
Reseller - This user has all the same functionality of the administrator except the ability to manage system services.
Client – Third tier login which has the permissions to create domains.
Domain Owner – Fourth tier login with permissions for single domain administration.
Mail User – Individual mail account users can manage passwords, spam filters and antivirus settings.

Resellers level. The resellers level is a new addition in Plesk 9, giving resellers the ability to manage and create their own clients and domains. Resellers can also distribute other services such as application hosting and databases on a per client basis.

Plesk Billing 6.0. Formerly Modernbill, Plesk 6.0 billing is a basic feature included in the installation with Plesk 9. Fully integrated with smooth nagivation between Plesk and Plesk Billing makes this software extremely efficient and easy to use.

APS Catalog. The new APS Catalog, provides the ability to download packages directly from Parallels website and make them available to your customers. Files are downloaded in APS format and added to the server application vault.Permissions for these applications can be provided to everyone or to select customers according to hosting plans.

Postfix Support. An alternative solution to qmail for unix based Plesk.

New Backup Tool. The new backup solution offers on-the-fly restoration conflicts which offer a variety of ways to resolve conflicts prior to a backup restoration.

Overselling/Overuse Capabilities.With the administrator and reseller users you may oversell your system resources to allow for flexibility and growth.

Plesk API 1.6. The updated API further improves the ability to integrate your software solutions with Plesk 9. Updates to the API include support for all new features included in Plesk 9.

Alternative Webmail. Plesk 9 offersfree Atmail Webmail Light 1.0, as a new webmail client, as well as commercial Atmail 5.5 support.

MSSQL 2008 Support. Parallels 9.0 for Windows offers Microsoft SQL Server 2008 support.

Merak 9.3.2 support. Parallels Plesk 9.0 for Windows offers Merak 9.3.2 Mail Server support.

For a full list of new features please see the following URL:

http://www.parallels.com/r/pdfs/Plesk/parallels_plesk_panel9_whatsnew.pdf

Leave a Comment :, more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...