Sunday, August 31, 2008

Mounting hibernated NTFS file system on to Linux

I had a problem with mounting my Windows NTFS file system which was Hibernated on to my Ubuntu 8.10 installation. When I'm trying to mount the file system as usual it gave me this error,

Windows is hibernated, refused to mount.
Failed to mount '/dev/sda1': Operation not permitted
The NTFS partition is hibernated. Please resume and shutdown Windows
properly, or mount the volume read-only with the 'ro' mount option, or
mount the volume read-write with the 'remove_hiberfile' mount option.
For example type on the command line:

mount -t ntfs-3g /dev/sda1 /media/ -o remove_hiberfile

After going through the previous message I tried to run the given command and try to mount the file system but it again gave me another error message like this,
$LogFile indicates unclean shutdown (0, 0)
Failed to mount '/dev/sda1': Operation not supported
Mount is denied because NTFS is marked to be in use. Choose one action:

Choice 1: If you have Windows then disconnect the external devices by
clicking on the 'Safely Remove Hardware' icon in the Windows
taskbar then shutdown Windows cleanly.

Choice 2: If you don't have Windows then you can use the 'force' option for
your own responsibility. For example type on the command line:

mount -t ntfs-3g /dev/sda1 /media/ -o force

Or add the option to the relevant row in the /etc/fstab file:

/dev/sda1 /media/ ntfs-3g force 0 0

As this error message describe I tried to run those commands but those command prompt the previous error I was given before this particular error. But hopefully when I tried to mount the file system as read only using the following command it worked fine for me,

sudo mount -t ntfs-3g /dev/sda1 /media/ -o ro

So if you have the same problem you can mount your file system as read only using the command like that but to be honest I don't know how to mount the file system with write access.

Tuesday, August 12, 2008

What Qpid Management Console can do ?

I thought of writing a complete documentation about the Apache Qpid management Command Line tool which would be helpful for the users to get the maximum out of the management console.

  • How to connect with the Broker
Before you come in to this state you have to build the source or you can get the binary and extract then set the QPID_CLI environment variable to the main directory of the source or binary,then only you are in a position to start working with management console. First check whether the broker is up and running. In order to simply connect with the broker you can run the qpid-cli script which required arguments.

${QPID_CLI}/bin/qpid-cli -h [HostName of IP of the broker ] -p [Port of the broker]

Default values for arguments -h [localhost] -p [8999]

  • One Shot mode
With one shot mode you can run interactive mode commands for one time and disconnect with the broker.This feature is useful when you want to run particular command in the management console using a script which is running in the normal console.What you have to do is you have to give the command you want to run with the qpid-cli script running command.

Ex 1: $QPID_CLI/bin/qpid-cli queue list -- This will list the queue objects and disconnect.

Ex 2: $QPID_CLI/bin/qpid-cli queue view -n ping - This will display information about all the message in the queue with the name of ping

Likewise you can run any command in one shot mode and get the out put for one time.

  • Report Generation Mode
If you want to generate reports you can do it by defining your required information using a property file. There's a sample property file in the parent directory and you can have a look and get an idea about that.You can generate reports by giving a time interval in the property file. In order to start the daemon mode you have to run the qpid-cli script with the option : -r by giving the path for your property file.

Ex: $QPID_CLI/bin/qpid-cli -r ../report.property

You should specify a property file in order to run the daemon mode and get information repeatedly.
  • Interactive mode with number of command
This is the mode you get when you run the qpid-cli script without the one shot mode and without the daemon mode with [-r] option.Once you connect with the broker it display you a prompt [qpid-admin-$], then you can run several commands to can perform following tasks.

For all the commands object type is command and most important command so you can use this option value without giving the option letter by giving that option value at the beginning of the command.

Ex: [list -o queue ] can use this command like this dropping -o option [queue list]
Ex: [list -o queue -n ping] = [queue list -n ping]

  • Data displaying commands
This is the set of commands which display the information about broker.

list : list information about the given object type with limited number of attributes and you can use number of command options to get different useful behaviors with the list command.You can get the complete description about the command by running the command like this.[list -h].



info : list all the attributes of a given object type. This command works very similar way to list command. You can use -h option for help and get complete description of the info command.

view : view information about the content of the message in the queue object. In order to run this command you have to specify the object type at the beginning.You can give how many message informations you want to view from the top of the queue by using -t option.

Ex : queue view -n message_queue -t 5
[list the message info for top 5 messages in queue message_queue]

viewcontent : view the content of the a given message in the queue. You have to give the messageId as a parameter with -id option letters.

Ex: queue viewcontent -n message_queue -id 12
[list the content encoding and Mimetype of the message with the messageId for the give message which is in the queue message_queue]
  • Data modification commands
This is a set of commands which allow users to deal with messages in queues.Users can delete messages from a give queue and user's can move one message from one queue to another queue.

delete :Using this command user can delete a give message from a given queue you can specify how many messages you want to delete from the queue from the top of the queue by using -t option.If user does not give how many messages to delete from the top of the queue program is going to delete all the messages from the queue after giving a prompt to confirm the deletion.

Ex: queue delete -n message_queue -t 3
[Delete top three messages in the queue message_queue ]

move : This command allow user to move number of messages from one queue to another queue. First you have to specify from which queue you want to move messages by using -n1 and -v1 option letters(-n1 queue name/ -v1 virtual host).Then you have to use -n2 option to give the target queue name and then you have to give From messageId and To messageId using -fmid and -tmid option letters to specify the messages range you want to do the move operation.

Ex: queue move -n1 message_queue -n2 ping -fmid 13 -tmid 15
[This will move messages with the messageId range of 13-15 from queue message_queue to queue ping.


If you have any problems please leave a comment in this post or simple write to the following email : lahiru@apache.org