Quartz Tutorial
This website not detailed enough on how to use Quartz?
Download the Quartz manual here
- To install and setup Quartz, untar the setup file, go into that directory and type `install`. From there, when you run Quartz, you will be prompted to enter all user and device information.
- ucsb% tar xzf quartz_v_1_00.tgz
- ucsb% cd quartz && install
- ucsb% ./quartz
- To reset or re-enter user information, remove all the .qtz files in the quartz directory and re-run quartz*. You will be asked to fill in all the required information again.
- Quartz synchronizes files by setting up groups. Each group characterizes those files that the user wants to keep synchronized distinct from other possible groups. There are two provided ways of adding new groups, depending on the preferred choice. One way is to type `add group [name of group]`. The other way is to type `add group` where the system will prompt you to enter any number of groups.
- Quartz> add group workfiles
- To add a file to an existing group, type `add file`. You will then be prompted to enter the entire path of the file name. Note that you are able to user the feature of most shells to help you "search" and fill in the correct file name. After you put what group this file is a part of, Quartz will automatically encrypt and store that file onto the network.
Removing groups and files follow the same syntax as with adding. If a user wants to remove a particular file from a group, they would type `remove file`. From this point on, Quartz will ask you what file to remove and from what group. Again, the user is able to the filename, making sure that file exists on the hard drive. This will not delete the file on the local hard drive. It will, instead, remove the file from being stored on the network and peers themselves. If a user wants to remove an entire group and all the files it consists of on the network, the user would type `remove group `.
- Quartz> remove file
- Quartz> remove group workfiles
Using the sync command, Quartz stores files onto the network in several cases. The file of a given group must be of the most recent version stored already and that file must be modified since its last synchronization. Also, although the user may not have the most recent version, they may force store that file by following the given prompts by the system. The last way Quartz will store files onto the network is if it is a new file not previously added to the group. The user will detect that the file is not currently stored within Quartz and will automatically store the encrypted file for you.
Quartz updates your files from the network in several cases. If a sync command is performed on a particular file (or group) and that file is not the most recent version stored within Quartz, you will be asked to update that file. Also, if your group currently lacks one or more files that are stored as part of that particular group within the network, a sync command on that group will automatically create those file(s). In addition, if any number of subdirectories pertaining to that file does not exist, Quartz will automatically create those for you.
In order to view all commands allowed, the user can type `help` and a list of commands will be shown. If the user does not know how to use a particular command from that list, the user can type `[command] help` to show proper usage of the given command. The Quartz> prompt acts like a normal command prompt in that it records a history of previously used commands as well as the feature that can find and “complete” file names existing on the local device.
To view all of your user information that Quartz takes into account, the user must either type `show user` or `user`, depending on their preference. To view just the names of the groups and their total memory usage, the user can type `show groups` or `ls` in order to imitate normal command prompt behavior once again. If the user types `show all groups` or `ls all`, each group, all of their files, and each file’s associated sizes and their status are listed. The status refers to whether or not the file has been updated from Quartz and if it has been modified since its last synchronization (through the modification time stamp).
F.A.Q. (Frequently Asked Questions)
- What if I accidentally deleted one of my .qtz files?
- Make sure to delete all the qtz files and re-run Quartz. You will automatically be prompted to enter all user information. You will also have to re-enter all group information. Because of the simple 'sync' command, you do not need to individually add all files that were part of the group. A `syng group` command would add all the files for the group that exist on the network.
Troubleshooting
- If you know the available commands for Quartz, simply type "help" on the console at any time.
- If you want to know how specific commands are used, type the command without any fields filled in.
- When encrypting a file upon storage onto the network, if it says “Unable to load private key”, make sure that, first, the key exists within the same directory and, second, that your password is the same used when creating the key to begin with (possibly on another device).
- When decrypting an updated file, if an error appears describing padding issues, this means that you have not yet copied over the shared private key that was used to encrypt the file to begin with. Make sure that you have copied over the same key over to all of your devices under the same username and password.
- If any of the .qtz system files get corrupted, remove *.qtz and rerun Quartz. The user will be prompted to setup its user information once again. Using the same username and password, the user is still able to retrieve all of their files. Because Quartz is still in one of its first release phases, it may not be as stable as we would like – in other words, perfection. If Quartz crashes or is inoperable at any moment, please quit the program either by typing `quit` or by hitting Ctrl+C and e-mail the file my.log over to us at mattsun@cs.ucsb.edu with the subject “[quartz] log”.
- If someone steals a device, and you are worried of them obtaining and corrupting the files you have currently stored on the Quartz network, remember that the user is unable to join the network unless they have the correct password. Even bypassing the password prompt screen through whatever hacking methods may be used, the attacker still would not be able to decrypt those files because the private key can only be opened with the correct password. If someone attains your password, you can change your password only by sending a request to mattsun@cs.ucsb.edu with the subject “[quartz] password” using the same e-mail address you used to register your username to begin with. The e-mail address must match that stored originally by Quartz. Our server will simply remove your entire user entry from the registry so that you may once again re-register your username and a new password. It is important to keep your username the same, because synchronization of those files currently residing within Quartz is based on the user’s name. Again, if you want to change/update that registered e-mail address, please send yet another request to mattsun@cs.ucsb.edu with the subject “[quartz] email” with your new e-mail address being the only text in the message.
|