## 2 Using AFS The Usage Section of the [[AFSFrequentlyAskedQuestions]]. - [[PreambleFAQ]] - [[GeneralFAQ]]
- [[AdminFAQ]] - [[ResourcesFAQ]] - [[AboutTheFAQ]] - [[FurtherReading]] ### 2.01 What are the differences between AFS and a unix filesystem? Essentially, from a user's point of view, there is little difference between AFS and local unix filestore. Nearly all the commands normally used to access local files can be used to access files in /afs. In the following set of sections, I have attempted to "target" each section to an appropriate type of user by including to the right of each section heading one of: User, Programmer, [[SysAdmin]]. Here is a summary of the differences: **Authentication:** [ User ] Before a user can access protected AFS files (s)he needs to become authenticated to AFS using the klog command (Kerberos login) to get a Kerberos "ticket granting ticket" (called a token from here on). Without a token, an unauthenticated user is given the AFS identity "system:anyuser" and as such is only able to access files in directories that have ACLs granting system:anyuser access. Many systems have the klog function built into the system login program. So a user would not even have to know they gain a token on logging in. If you use a system where you have to issue the klog command after login then you should run the pagsh command first (see below). AFS provides access control lists to give more precise control to users wishing to protect their files (see AFS ACL below). **File permissions:** [ User ] Unix mode bits for group and other are ignored. The mode bits for the file owner don't work the way they used to. Users should protect their AFS files with (directory) ACLs only. Just use mode bits to make a file executable. **Data protection with AFS ACLs:** [ User ] Some versions of unix (eg IBM's AIX version 3) allow ACLs on local files. In AFS, ACLs protect directories and used with AFS protection groups (see below) provide a finer granularity of protection than can be achieved with basic unix file permissions. (AFS ACLs are described in more detail below.) **Protection groups:** [ User ] Users can create and maintain their own protection groups in AFS - as opposed to unix where only sys admins can manage protection groups. **Hard links:** [ User ] In AFS, hard links (eg: ln old new) are only valid within a directory. This is because AFS ACLs protect directories (not individual files) and allowing hard links that span directories would subvert ACL protection. Symbolic links work in AFS because they reference a pathname and not an i-node directly. (Hard links reference an i-node directly.) **Changing file protection by moving a file:** [ User ] Moving a file to a different directory will change the protection of a file if the ACL on the new directory if different to the ACL on the original directory. **chown and chgrp:** [ User ] Only members of the AFS group "system:administrators" can use these commands on files in /afs. **Save on close:** [ Programmer ] AFS Cache Manager does not send file modifications to a file server until the close() or fsync() system call. write() system calls only update the local cache copy on the client. Note the difference in semantic of writing a file:
local unix file: writes update the file "immediately"
AFS file: local cached copy updated "immediately" but the server copy is only updated when the file is closed or fsync'ed.
It is important to understand that most applications (eg: vi, emacs, frame, interleaf, wingz, dogz, etc) issue the close() system call when the user chooses/issues the "save" command in the application. Users are not required to exit the application to "save" their changes back to the server. **byte-range file locking:** [ Programmer ] AFS does not support byte-range locking within a file, although lockf() and fcntl() calls will return 0 (success). The first time a byte-range lock is attempted, AFS will display: "afs: byte-range lock/unlock ignored; make sure no one else else is running this program." **whole file locking:** [ Programmer ] AFS does support advisory locking an entire file with flock(). Processes on the same client workstation that attempt to lock a file obey the proper locking semantics. Processes on different AFS clients requesting a lock on the same file would get EWOULDBLOCK returned. **character and block special files:** [ [[SysAdmin]] ] AFS does not support character and block special files. The mknod command does not create either character or block special files in /afs. **AFS version of fsck:** [ [[SysAdmin]] ] On an AFS server, the partitions containing served files are NOT unix filesystems and standard fsck **must** not be used - use the AFS version instead. ### 2.02 What is an AFS protection group? A named list of users. Group names are used in AFS ACLs to identify lists of users with particular access permissions. In AFS, users can create and maintain their own protection groups. This is different to unix where only the system administrator can manage /etc/group. AFS groups are stored in the protection database on fileserver(s) and managed by using the "pts" command. An AFS group typically has the format: - owner-id:group-name By default, only the owner of a group can change its members. It is possible to have both users and IP addresses as members of an AFS group. By using an IP address like this you can specify all the users from the host with that IP address. ### 2.03 What are the AFS defined protection groups? - system:anyuser - Everyone who has access to an AFS client in any cell that is on the same network as your cell. - system:authuser - Everyone who has access to an AFS client in any cell that is on the same network as your cell **and** has valid tokens for your cell (ie has been authenticated in your cell). - system:administrators - Users who have privileges to execute some but not all system administrator commands. ### 2.04 What is an AFS access control list (ACL)? There is an ACL for every directory in AFS. The ACL specifies protection at the directory level (not file level) by listing permissions of users and/or groups to a directory. There is a maximum of 20 entries on an ACL. For example: An AFS ACL is displayed by using the "fs" command as shown below: tweety@toontown $ fs listacl . Access list for . is Normal rights: fac:coords rlidwka system:anyuser rl This ACL shows that members of the AFS protection group "fac:coords" have full access rights to the current directory and "system:anyuser" has only read and lookup rights. The members of "fac:coords" can be determined by accessing the protection group database using the "pts" command as shown below: tweety@toontown $ pts membership fac:coords Members of fac:coords (id: -1577) are: sylvester roadrunner yosemite.sam ### 2.05 What are the AFS access rights? In AFS, there are seven access rights that may be set or not set:
lookup l Permission to examine the ACL and traverse the directory (needed with most other access rights). Permission to look up filenames in a directory.
read r View the contents of files in the directory
insert i Add new files or sub-directories
write w Modify file contents, use "chmod"
delete d Remove file(s) in directory
lock k Permission for programs to "flock" files in the directory
administer a Ability to change the ACL
There are short-hand forms:
read rl read and lookup
write rlidwk all rights except administer
all rlidwka all rights
none   removes all rights
### 2.06 What is pagsh? A command to get a new shell with a process authentication group (PAG). This is normally used if your system does not use the AFS version of login. It is used to get a PAG prior to running klog. The PAG uniquely identifies the user to the Cache Manager. Without a PAG the Cache Manager uses the unix UID to identify a user. ### 2.07 Why use a PAG? There are two reasons: 1. Child processes inherit the PAG and the Kerberos token so they are AFS authenticated. 1. For security: if you don't have a PAG then the Cache Manager identifies you by unix UID. Another user with root access to the client could su to you and therefore use your token. ### 2.08 How can I tell if I have a PAG? You can tell if you have a PAG by typing "groups". A PAG is indicated by the appearance of two integers in the list of groups. For example: sylvester@toontown $ groups 33536 32533 staff catz ### 2.09 Can I still run cron jobs with AFS? Yes, but remember that in order to fully access files in AFS you have to be AFS authenticated. If your cron job doesn't klog then it only gets system:anyuser access. The klog command has a "-pipe" option which will read a password from stdin. IF (yes, that's a big if :-) you are prepared to store your password in a local (non-AFS) file then you might use the following: (a) create a "wrapper" script to get a PAG, get your AFS token and execute a command: #!/usr/afsws/bin/pagsh # # NAME afs_wrap_cron # AUTHOR Paul Blackburn # PURPOSE Run an AFS authenticated cron job. # Get a PAG, get the user's token, # then exec user's command CMD=`basename ${0}` usage() { echo "Usage: ${CMD} [ -principal AFSID ] passwordfile command" >&2 } if [ ${1} = "-principal" ]; then PRINCIPAL="${1} ${2}" shift 2 fi if [ -z "${1}" ]; then echo "${CMD} error: need name of password file" >&2 usage exit 1 else passwordfile=${1} shift fi /usr/afsws/bin/klog ${PRINCIPAL} -pipe < ${passwordfile} if [ -z "${1}" ]; then echo "${CMD} error: need name of command to run" >&2 usage exit 1 else command_line="$*" command=`echo ${command_line} | awk '{print $1}'` # Check if we can run the command. # If we got this far, it is likely that the command name is correct # but there may be a problem in accessing the command file. # If there is an error, log it via syslog (logger) rather than ">&2" if [ ! -x "${command}" ]; then M="error: unable to execute command ${command}" logger -i -t "${CMD}" "${M}" exit 1 fi fi exec ${command_line} (b) Store your password in a local (non-AFS) file that only you have access to (perhaps: /home/$USER/.p). Make sure that this file is mode 600 and also be sure that you trust whoever has root access on this system and whoever has access to backup tapes! Also, don't forget to change this file if you change your AFS password. (c) In your crontab file, run afs\_wrap\_cron followed by unlog: 0 6 * * * /usr/local/bin/afs_wrap_cron /home/$USER/.p \ $HOME/bin/6AMdaily; /usr/afsws/bin/unlog Note that you can still run a cron job without getting a token if the task does not need to be AFS authenticated. In this case, you may get stderr from the cron job if your .profile is not accessible because of the ACL protecting your $HOME. Simply redirect to /dev/null: 0 7 * * * $sys_anyuser_readable_dir/7AMdaily 2>/dev/null ### 2.10 How much disk space does a 1 byte file occupy in AFS? One kilobyte. Other filesystems allocate different file block sizes. For example, IBM's AIX version 3 journaled file system (JFS) uses 4K blocks (exception: 2K for the 160MB disk drive). Such blocksize differences lead to variations on the amount of disk space required to store files. Copying a directory from AFS to AIX JFS would require more space in JFS because of the block fragmentation. Example: (a) Create a one byte file in AFS and use "ls -s" to show how many kilobytes it occupies: ariel@atlantica $ echo z >/afs/dsea/tmp/one_byte_file ariel@atlantica $ ls -s /afs/dsea/tmp/one_byte_file 1 /afs/dsea/tmp/one_byte_file (b) Create same file in local filesystem (AIX JFS): ariel@atlantica $ echo z >/tmp/one_byte_file ariel@atlantica $ ls -s /tmp/one_byte_file 4 /tmp/one_byte_file ### 2.11 Is it possible to specify a user who is external to the current AFS cell on an ACL? No. You cannot reference a particular user from another AFS cell. You can specify an IP address on the ACL; this means any and all users from the host with that IP address. Another solution to this problem is to give the external user an "authentication-only" account in your AFS cell. This means that (s)he can klog (but has no home directory) in your cell. # Example: AFS administrator creates an authentication-only user $ uss add daffy "Daffy Duck" -t /dev/null $ kas setpassword daffy -admin admin Cross-realm authentication (where co-operating cells are able to specify remore users as "user@remote.cell" on an ACL) is an **unsupported** feature of AFS 3.3a. That means that Transarc doesn't promise to make it work for you, nor keep it running in future releases. ### 2.12 Are there any problems printing files in /afs? The issue of printing in AFS is almost always the same: what do you send to the printing daemon? Do you send it the bytes you want to print or do you just send the file name containing those bytes? If you send it a file name, you have to be sure that the printing daemon can read it. Most daemons run with no AFS tokens, so can't access directories unless they are open for system:anyuser read access. Often, printing commands (lpr, lp, enq) have an option that allows for both modes of operation, though the default behavior varies from system to system. If you're interested in making your daemons authenticate to AFS, check out the example scripts in AFS-Contrib: - - Another common problem is setuid printing commands. For instance, the "enq" command runs as root, daemon, or some such user. If you aren't using the AFS login and simply issue "klog" to get tokens, those tokens are associated with your uid. When setuid programs run, they lose access to your token and often can't read the file name given as an argument. The solution in this case is to use "pagsh" before "klog" so that your tokens are transferred to subprocesses automatically by group membership. This works even if the uid changes, as for setuid programs. ### 2.13 Can I create a fifo (aka named pipe) in /afs? No. AFS does not support "mknod fifofile p". ### 2.14 If an AFS server crashes, do I have to reboot my AFS client? No. Typically, if an AFS server becomes unavailable, the AFS Cache Manager on your AFS client will see you through the outage until the server returns. This robustness is dependent on the way your AFS cell has been configured including the following factors: - On the client side: - How big is the cache? - Are the files you need already in the cache? - On the server side: - How many servers? It's best to have a minimum of three. - Is the data you are accessing replicated? In AFS, replicas are [[ReadOnly]] copies. With replicated volumes, the AFS Cache Manager knows about all of the servers on which the replicas are located. Therefore, when the Cache Manager accesses a replicated volume, if the RPC times out, the Cache Manager automatically retrys the RPC, using a different file server. If necessary, the Cache Manager will attempt to contact all file servers on which a replica of the volume resides. If you are accessing [[ReadWrite]] volumes on a crashed server then you will not be able to save changes back to the server until it returns. You don't need to reboot, and the Cache Manager activity is "invisible" to the user. ### 2.15 Can I use AFS on my diskless workstation? Yes. The AFS Cache Manager can be configured to work with either a disk based cache or a memory (RAM) based cache. With the latter, you can expect file access from the cache with a whizz! ### 2.16 Can I test for AFS tokens from within my program? Yes. Some sample code showing how to do this can be found in: ### 2.17 What's the difference between /afs/cellname and /afs/.cellname? AFS has [[ReadOnly]] (RO) and [[ReadWrite]] (RW) volumes. The convention in AFS is to mount the RW volume "root.cell" as /afs/.cellname and the RO volume "root.cell.readonly" as /afs/cellname. This is so that when you travel down the /afs/.cellname link, AFS will always use the RW site of any volumes that have RO clones. This allows your administrator to update the RW copy of a volume and "vos release $volname" so that it will appear in /afs/cellname. ### 2.18 Can I klog as two users on a machine in the same cell? Yes, if you use two different PAGs. It's: "One token per PAG per client system." From one shell you can only authenticate as a single user of a cell. If you open another shell (with another PAG) you can klog as a different user of the same cell from the same client. You can authenticate into many cells from one client shell. ### 2.19 What are the ~/.\_\_afsXXXX files? They are temporary reference files used by the AFS Cache Manager. In UNIX filesystems, when you a remove a file that is kept open by a process, the file stays around physically while it is no longer referenced in any directory (which you will see as a mismatch between disk space usage according to df and du). Some applications rely on that feature, e.g. they create a temporary file and remove it immediatley while keeping the file descriptor open. The file then disappears from the filesystem automagically when the process terminates or the file descriptor gets closed otherwise. Such applications could get into trouble with older versions of AFS, where the file could really disappear while it was held open. Newer versions of AFS rename such files to .\_\_afsXXXX, thus making sure that the data stays around as expected by the application. As soon as the file gets closed, the associated .\_\_afsXXXX should disappear. ### 2.20 How do you set up IP-based ACLs? See and [[IPAccessControl]]. [http://www.shop263.com/i-1/601.htm 脱硫剂] [http://www.shop263.com/i-1/602.htm 脱氢硫] [http://www.shop263.com/i-1/603.htm 脱脂清洗剂] [http://www.shop263.com/i-1/604.htm 脱脂脱胶骨粉] [http://www.shop263.com/i-1/605.htm 万霉灵] [http://www.shop263.com/i-1/605.htm 万能胶] [http://www.shop263.com/i-1/607.htm 微电脑防盗报警器] [http://www.shop263.com/i-1/608.htm 微结晶石蜡] [http://www.shop263.com/i-1/609.htm 微晶蜡] [http://www.shop263.com/i-1/610.htm 微晶纤维素] [http://www.shop263.com/i-1/611.htm 微乳剂] [http://www.shop263.com/i-1/612.htm 维生素] [http://www.shop263.com/i-1/613.htm 维生素C磷酸酯] [http://www.shop263.com/i-1/614.htm 维生素烟酰胺] [http://www.shop263.com/i-1/615.htm 维酮] [http://www.shop263.com/i-1/616.htm 卫生消毒液] [http://www.shop263.com/i-1/617.htm 无毒稳定剂] [http://www.shop263.com/i-1/618.htm 无缝无焊储罐] [http://www.shop263.com/i-1/619.htm 无机氟化盐] [http://www.shop263.com/i-1/620.htm 无机磷酸盐] [http://www.shop263.com/i-1/621.htm 无机凝胶] [http://www.shop263.com/i-1/622.htm 无机溶剂] [http://www.shop263.com/i-1/623.htm 无卤阻燃剂] [http://www.shop263.com/i-1/624.htm 无水醋酸钠] [http://www.shop263.com/i-1/625.htm 无水氟化钾] [http://www.shop263.com/i-1/626.htm 无水氟化氢] [http://www.shop263.com/i-1/627.htm 无水磷酸二氢钠] [http://www.shop263.com/i-1/628.htm 无水磷酸氢二钠] [http://www.shop263.com/i-1/629.htm 无水六氟磷酸锂] [http://www.shop263.com/i-1/630.htm 无水氯化钙] [http://www.shop263.com/i-1/631.htm 无水柠檬酸钠] [http://www.shop263.com/i-1/632.htm 无水三氯化铝] [http://www.shop263.com/i-1/633.htm 无水液氨] [http://www.shop263.com/i-1/634.htm 无水乙醇] [http://www.shop263.com/i-1/635.htm 无水异丙醇] [http://www.shop263.com/i-1/636.htm 无味煤油] [http://www.shop263.com/i-1/637.htm 五氟一氯乙烷] [http://www.shop263.com/i-1/638.htm 五甲基二乙烯三胺] [http://www.shop263.com/i-1/639.htm 五甲基哌啶醇] [http://www.shop263.com/i-1/640.htm 五硫化二磷] [http://www.shop263.com/i-1/641.htm 戊二腈] [http://www.shop263.com/i-1/642.htm 戊二醛] [http://www.shop263.com/i-1/643.htm 戊腈] [http://www.shop263.com/i-1/644.htm 戊唑醇] [http://www.shop263.com/i-1/645.htm 烯丙基缩水甘油醚] [http://www.shop263.com/i-1/646.htm 烯烃类磺酸盐] [http://www.shop263.com/i-1/647.htm 稀释剂] [http://www.shop263.com/i-1/648.htm 稀土萃取剂] [http://www.shop263.com/i-1/649.htm 稀土顺丁橡胶] [http://www.shop263.com/i-1/650.htm 稀土稳定剂] [http://www.shop263.com/i-1/651.htm 稀硝酸] [http://www.shop263.com/i-1/652.htm 锡酸钠] [http://www.shop263.com/i-1/653.htm 洗板水] [http://www.shop263.com/i-1/654.htm 洗模水] [http://www.shop263.com/i-1/655.htm 洗油] [http://www.shop263.com/i-1/656.htm 系列聚酰胺树脂] [http://www.shop263.com/i-1/657.htm 酰氯] [http://www.shop263.com/i-1/658.htm 显色蓝色盐] [http://www.shop263.com/i-1/659.htm 香叶基丙酮] [http://www.shop263.com/i-1/660.htm 橡胶防老剂] [http://www.shop263.com/i-1/661.htm 橡胶类涂料] [http://www.shop263.com/i-1/662.htm 橡胶硫化促进剂] [http://www.shop263.com/i-1/663.htm 橡胶助剂] [http://www.shop263.com/i-1/664.htm 橡胶专用脂肪酸] [http://www.shop263.com/i-1/665.htm 消泡剂] [http://www.shop263.com/i-1/666.htm 消烟阻燃剂] [http://www.shop263.com/i-1/667.htm 硝苯地平] [http://www.shop263.com/i-1/668.htm 硝化] [http://www.shop263.com/i-1/669.htm 硝化棉] [http://www.shop263.com/i-1/670.htm 硝基] [http://www.shop263.com/i-1/671.htm 硝基苯] [http://www.shop263.com/i-1/672.htm 硝基苯胺] [http://www.shop263.com/i-1/673.htm 硝基苯酚] [http://www.shop263.com/i-1/674.htm 硝基苯甲酸] [http://www.shop263.com/i-1/675.htm 硝基苯胂酸] [http://www.shop263.com/i-1/676.htm 硝基胍] [http://www.shop263.com/i-1/677.htm 硝基甲苯邻磺酸] [http://www.shop263.com/i-1/678.htm 硝基甲烷] [http://www.shop263.com/i-1/679.htm 硝基氯苯] [http://www.shop263.com/i-1/680.htm 硝基氯化苯] [http://www.shop263.com/i-1/681.htm 硝基咪唑] [http://www.shop263.com/i-1/682.htm 硝基漆] [http://www.shop263.com/i-1/683.htm 硝酸] [http://www.shop263.com/i-1/684.htm 硝酸銨] [http://www.shop263.com/i-1/685.htm 硝酸钡] [http://www.shop263.com/i-1/686.htm 硝酸钙] [http://www.shop263.com/i-1/687.htm 硝酸胍] [http://www.shop263.com/i-1/688.htm 硝酸钾] [http://www.shop263.com/i-1/689.htm 硝酸铝] [http://www.shop263.com/i-1/690.htm 硝酸镁] [http://www.shop263.com/i-1/691.htm 硝酸咪康唑] [http://www.shop263.com/i-1/692.htm 硝酸钠] [http://www.shop263.com/i-1/693.htm 硝酸稀土] [http://www.shop263.com/i-1/694.htm 硝酸异丙酯] [http://www.shop263.com/i-1/695.htm 硝酸益康唑] [http://www.shop263.com/i-1/696.htm 小球硅胶] [http://www.shop263.com/i-1/697.htm 鞋模胶] [http://www.shop263.com/i-1/698.htm 心安得] [http://www.shop263.com/i-1/699.htm 辛二胺] [http://www.shop263.com/i-1/700.htm 辛酸亚锡] [http://www.shop263.com/i-1/701.htm 辛酰氯] [http://www.shop263.com/i-1/702.htm 锌粒] [http://www.shop263.com/i-1/703.htm 锌渣锌灰] [http://www.shop263.com/i-1/704.htm 新戊二醇] [http://www.shop263.com/i-1/705.htm 新型活性剂驱油剂] [http://www.shop263.com/i-1/706.htm 猩红酸] [http://www.shop263.com/i-1/707.htm 熊果苷] [http://www.shop263.com/i-1/708.htm 熊果苷单酯] [http://www.shop263.com/i-1/709.htm 溴苯] [http://www.shop263.com/i-1/710.htm 溴丙烷] [http://www.shop263.com/i-1/711.htm 溴代环戊烷] [http://www.shop263.com/i-1/712.htm 溴代金刚烷] [http://www.shop263.com/i-1/713.htm 溴代叔丁烷] [http://www.shop263.com/i-1/714.htm 溴代羧酸酯] [http://www.shop263.com/i-1/715.htm 溴代烃] [http://www.shop263.com/i-1/716.htm 溴代烷烃] [http://www.shop263.com/i-1/717.htm 溴代异丙烷] [http://www.shop263.com/i-1/718.htm 溴代异丁烷] [http://www.shop263.com/i-1/719.htm 溴代毓] [http://www.shop263.com/i-1/720.htm 溴代正丙烷] [http://www.shop263.com/i-1/721.htm 溴丁烷] [http://www.shop263.com/i-1/722.htm 溴化氨] [http://www.shop263.com/i-1/723.htm 溴化铵] [http://www.shop263.com/i-1/724.htm 溴化丁基胶] [http://www.shop263.com/i-1/725.htm 溴化钙] [http://www.shop263.com/i-1/726.htm 溴化钾] [http://www.shop263.com/i-1/727.htm 溴化锂] [http://www.shop263.com/i-1/728.htm 溴化镁] [http://www.shop263.com/i-1/729.htm 溴化锰] [http://www.shop263.com/i-1/730.htm 溴化钠] [http://www.shop263.com/i-1/731.htm 溴化锌] [http://www.shop263.com/i-1/732.htm 溴甲基萘] [http://www.shop263.com/i-1/733.htm 溴类阻燃剂] [http://www.shop263.com/i-1/734.htm 溴素] [http://www.shop263.com/i-1/735.htm 溴酸钠] [http://www.shop263.com/i-1/736.htm 溴西烷] [http://www.shop263.com/i-1/737.htm 溴硝醇] [http://www.shop263.com/i-1/738.htm 溴盐及溴酸盐] [http://www.shop263.com/i-1/739.htm 溴乙烷] [http://www.shop263.com/i-1/740.htm 溴乙酰溴] [http://www.shop263.com/i-1/741.htm 絮凝剂] [http://www.shop263.com/i-1/742.htm 蓄电池酸] [http://www.shop263.com/i-1/743.htm 悬浮剂] [http://www.shop263.com/i-1/744.htm 循环系统油] [http://www.shop263.com/i-1/745.htm 压敏胶] [http://www.shop263.com/i-1/746.htm 亚氨基二苄] [http://www.shop263.com/i-1/747.htm 亚氨基二乙酸] [http://www.shop263.com/i-1/748.htm 亚氨基二乙酸二钠盐] [http://www.shop263.com/i-1/749.htm 亚氨基二乙酸二乙酯] [http://www.shop263.com/i-1/750.htm 亚氨基芪甲酰] [http://www.shop263.com/i-1/751.htm 亚白刚玉] [http://www.shop263.com/i-1/752.htm 亚甲基双丙烯酰胺] [http://www.shop263.com/i-1/753.htm 亚磷酸] [http://www.shop263.com/i-1/754.htm 亚磷酸二甲酯] [http://www.shop263.com/i-1/755.htm 亚磷酸二乙酯] [http://www.shop263.com/i-1/756.htm 亚磷酸二正丁酯] [http://www.shop263.com/i-1/757.htm 亚磷酸三苯酯] [http://www.shop263.com/i-1/758.htm 亚磷酸一苯二异辛酯] [http://www.shop263.com/i-1/759.htm 亚磷酸酯] [http://www.shop263.com/i-1/760.htm 亚硫酸钠] [http://www.shop263.com/i-1/761.htm 亚硫酸氢铵] [http://www.shop263.com/i-1/762.htm 亚硫酸氢钠] [http://www.shop263.com/i-1/763.htm 亚氯酸钠] [http://www.shop263.com/i-1/764.htm 亚麻酸] [http://www.shop263.com/i-1/765.htm 亚么尼亚胶浆] [http://www.shop263.com/i-1/766.htm 亚铁氰化钾] [http://www.shop263.com/i-1/767.htm 亚硝基铁氢化钾] [http://www.shop263.com/i-1/768.htm 亚硝基铁氢化钠] [http://www.shop263.com/i-1/769.htm 亚硝基愈创木酚] [http://www.shop263.com/i-1/770.htm 亚硝酸钙] [http://www.shop263.com/i-1/771.htm 亚硝酸钠] [http://www.shop263.com/i-1/772.htm 烟酰胺] [http://www.shop263.com/i-1/773.htm 岩石水胶炸药] [http://www.shop263.com/i-1/774.htm 岩藻聚糖硫酸脂] [http://www.shop263.com/i-1/775.htm 盐酸] [http://www.shop263.com/i-1/776.htm 盐酸安非他酮] [http://www.shop263.com/i-1/777.htm 盐酸苄丝肼] [http://www.shop263.com/i-1/778.htm 盐酸胍] [http://www.shop263.com/i-1/779.htm 盐酸环胞苷] [http://www.shop263.com/i-1/780.htm 盐酸洛美沙星] [http://www.shop263.com/i-1/781.htm 盐酸羟胺] [http://www.shop263.com/i-1/782.htm 盐酸羟亚胺] [http://www.shop263.com/i-1/783.htm 盐酸舍曲林] [http://www.shop263.com/i-1/784.htm 盐酸万拉法新] [http://www.shop263.com/i-1/785.htm 盐酸西替利嗪] [http://www.shop263.com/i-1/786.htm 颜料] [http://www.shop263.com/i-1/787.htm 颜料糊] [http://www.shop263.com/i-1/788.htm 颜料中间体] [http://www.shop263.com/i-1/789.htm 阳离子染料] [http://www.shop263.com/i-1/790.htm 杨酸钠] [http://www.shop263.com/i-1/791.htm 氧化淀粉] [http://www.shop263.com/i-1/792.htm 氧化锆] [http://www.shop263.com/i-1/793.htm 氧化铬绿] [http://www.shop263.com/i-1/794.htm 氧化合成氢氰酸] [http://www.shop263.com/i-1/795.htm 氧化镧] [http://www.shop263.com/i-1/796.htm 氧化铝粉] [http://www.shop263.com/i-1/797.htm 氧化镁] [http://www.shop263.com/i-1/798.htm 氧化镍] [http://www.shop263.com/i-1/799.htm 氧化铁] [http://www.shop263.com/i-1/800.htm 氧化銅] [http://www.shop263.com/i-1/801.htm 氧化鋅] [http://www.shop263.com/i-1/802.htm 氧氯化锆] [http://www.shop263.com/i-1/803.htm 氧杂环戊烷] [http://www.shop263.com/i-1/804.htm 药用级醋酸钠] [http://www.shop263.com/i-1/805.htm 药用水杨酸] [http://www.shop263.com/i-1/806.htm 椰油脂肪酸] [http://www.shop263.com/i-1/807.htm 椰子油基酰] [http://www.shop263.com/i-1/808.htm 椰子油甲酯] [http://www.shop263.com/i-1/809.htm 冶金焦] [http://www.shop263.com/i-1/800.htm 冶金铸焦] [http://www.shop263.com/i-1/811.htm 冶炼氧化锌] [http://www.shop263.com/i-1/812.htm 叶酸] [http://www.shop263.com/i-1/813.htm 液氨] [http://www.shop263.com/i-1/814.htm 液晶化学品] [http://www.shop263.com/i-1/815.htm 液氯] [http://www.shop263.com/i-1/816.htm 液萘] [http://www.shop263.com/i-1/817.htm 液体丙烯酰胺] [http://www.shop263.com/i-1/818.htm 液体二氧化硫] [http://www.shop263.com/i-1/819.htm 液体氦] [http://www.shop263.com/i-1/820.htm 液体混合氯化稀土] [http://www.shop263.com/i-1/821.htm 液体硫酸羟胺] [http://www.shop263.com/i-1/822.htm 液体氰化钠] [http://www.shop263.com/i-1/823.htm 液体三氧化硫] [http://www.shop263.com/i-1/824.htm 液体无水氨] [http://www.shop263.com/i-1/825.htm 液体盐酸胍] [http://www.shop263.com/i-1/826.htm 液体油墨凝胶剂] [http://www.shop263.com/i-1/827.htm 液状石蜡] [http://www.shop263.com/i-1/828.htm 一氟三氯甲烷] [http://www.shop263.com/i-1/829.htm 一甲基肼] [http://www.shop263.com/i-1/830.htm 一氯化硫] [http://www.shop263.com/i-1/831.htm 一氯频呐酮] [http://www.shop263.com/i-1/832.htm 一氯乙酸] [http://www.shop263.com/i-1/833.htm 一氧化碳] [http://www.shop263.com/i-1/834.htm 一正丙胺] [http://www.shop263.com/i-1/835.htm 衣车润滑油] [http://www.shop263.com/i-1/836.htm 衣康酸] [http://www.shop263.com/i-1/837.htm 医药原料] [http://www.shop263.com/i-1/838.htm 医药原料药] [http://www.shop263.com/i-1/839.htm 医药中间体] [http://www.shop263.com/i-1/840.htm 医用胶囊] [http://www.shop263.com/i-1/841.htm 移印矽胶] [http://www.shop263.com/i-1/842.htm 乙胺] [http://www.shop263.com/i-1/843.htm 乙醇钠乙醇溶液] [http://www.shop263.com/i-1/844.htm 乙二氨四醋酸] [http://www.shop263.com/i-1/845.htm 乙二胺] [http://www.shop263.com/i-1/846.htm 乙二胺四乙酸] [http://www.shop263.com/i-1/847.htm 乙二胺四乙酸二钠] [http://www.shop263.com/i-1/848.htm 乙二醇] [http://www.shop263.com/i-1/849.htm 乙二醇醋酸酯] [http://www.shop263.com/i-1/850.htm 乙二醇单正丙醚] [http://www.shop263.com/i-1/851.htm 乙二醇丁醚] [http://www.shop263.com/i-1/852.htm 乙二醇二甲醚] [http://www.shop263.com/i-1/853.htm 乙二醇二甲酸酯] [http://www.shop263.com/i-1/854.htm 乙二醛] [http://www.shop263.com/i-1/855.htm 乙二酸锶] [http://www.shop263.com/i-1/856.htm 乙基] [http://www.shop263.com/i-1/857.htm 乙基胺] [http://www.shop263.com/i-1/858.htm 乙基苯] [http://www.shop263.com/i-1/859.htm 乙基苯胺] [http://www.shop263.com/i-1/860.htm 乙基丁基甲酮] [http://www.shop263.com/i-1/861.htm 乙基防染盐] [http://www.shop263.com/i-1/862.htm 乙基黄药] [http://www.shop263.com/i-1/863.htm 乙基黄原酸钾] [http://www.shop263.com/i-1/864.htm 乙基磺酰氯] [http://www.shop263.com/i-1/865.htm 乙基已基磷酸] [http://www.shop263.com/i-1/866.htm 乙基已基酯] [http://www.shop263.com/i-1/867.htm 乙基已酸铝] [http://www.shop263.com/i-1/868.htm 乙腈] [http://www.shop263.com/i-1/869.htm 乙硫氮] [http://www.shop263.com/i-1/870.htm 乙醛酸] [http://www.shop263.com/i-1/871.htm 乙醛酸产] [http://www.shop263.com/i-1/872.htm 乙酸柏木酯] [http://www.shop263.com/i-1/873.htm 乙酸芳樟酯] [http://www.shop263.com/i-1/874.htm 乙烷磺酸] [http://www.shop263.com/i-1/875.htm 乙烯基吡咯烷酮] [http://www.shop263.com/i-1/876.htm 乙烯基官能团硅烷] [http://www.shop263.com/i-1/877.htm 乙烯基甲醚] [http://www.shop263.com/i-1/878.htm 乙烯基三甲氧基硅烷] [http://www.shop263.com/i-1/879.htm 乙烯基三乙氧基硅烷] [http://www.shop263.com/i-1/880.htm 乙烯基乙醚] [http://www.shop263.com/i-1/881.htm 乙烯基异丁醚] [http://www.shop263.com/i-1/882.htm 乙烯基正丁醚] [http://www.shop263.com/i-1/883.htm 乙烯基酯树脂] [http://www.shop263.com/i-1/884.htm 乙烯利] [http://www.shop263.com/i-1/885.htm 乙酰丙酸] [http://www.shop263.com/i-1/886.htm 乙酰丙酮] [http://www.shop263.com/i-1/887.htm 乙酰基呋喃] [http://www.shop263.com/i-1/888.htm 乙酰介酸] [http://www.shop263.com/i-1/889.htm 乙酰氯] [http://www.shop263.com/i-1/890.htm 乙酰水杨酸钙] [http://www.shop263.com/i-1/891.htm 乙酰溴] [http://www.shop263.com/i-1/892.htm 乙酰乙酸甲脂] [http://www.shop263.com/i-1/893.htm 乙氧基丙烯] [http://www.shop263.com/i-1/894.htm 乙氧基喹啉] [http://www.shop263.com/i-1/895.htm 乙氧基喹啉粉剂] [http://www.shop263.com/i-1/896.htm 乙氧基喹啉原油] [http://www.shop263.com/i-1/897.htm 乙氧甲叉] [http://www.shop263.com/i-1/898.htm 已二胺] [http://www.shop263.com/i-1/899.htm 已二酸] [http://www.shop263.com/i-1/900.htm 已内酯单体] [http://www.haishun.net 门禁] [http://www.haishun.net 监控] [http://www.genset-sh.com 发电机] [http://www.haishun.net/p\_mjds.htm 门禁] [http://www.haishun.net/p\_mjds\_dmmj.htm 门禁] [http://www.haishun.net/p\_mjds\_lwmj.htm 门禁] [http://www.haishun.net/p\_mjds\_yjs.htm 门禁] [http://www.haishun.net/cctv.htm 监控] [http://www.haishun.net/p\_cctv\_jk.htm 监控] [http://www.haishun.net/p\_cctv\_jk\_sxj.htm 监控] [http://www.haishun.net/p\_cctv\_jk\_xsq.htm 监控] [http://www.haishun.net/p\_cctv\_jk\_yplxj.htm 监控] [http://www.haishun.net/p\_cctv\_jk\_yt.htm 监控] [http://www.haishun.net/p\_cctv\_jk\_zj.htm 监控] [http://www.7766888.com 虚拟主机] [http://www.7766888.com/introcom.htm asp虚拟主机] [http://www.7766888.com/introcn.htm php虚拟主机] [http://www.7766888.com/u\_puji.htm unix虚拟主机] [http://www.7766888.com/mysql.htm windows虚拟主机] [http://www.7766888.com/u\_jingji.htm 纯空间虚拟主机] [http://www.7766888.com/u\_biaozhun.htm 虚拟主机] [http://www.7766888.com/u\_zhiqiang.htm 虚拟主机] [http://www.7766888.com/w\_jingji.htm 虚拟主机] [http://www.7766888.com/w\_biaozhun.htm 虚拟主机] [http://www.asp169.com/marketingsoft1.htm 空压机] [http://www.asp169.com/marketingsoft2.htm 压缩机] [http://www.asp169.com/zhaoguan.htm 消毒剂] [http://www.asp169.com/crm.htm 化妆品] [http://www.asp169.com/marketingsoft3.htm 战略咨询] [http://www.asp169.com/marketingsoft4.htm 武夷山] [http://www.asp169.com/marketingsoft5.htm 数据恢复] [http://haishun11.51.net 虚拟主机] [http://decorate.51.net 装修] [http://decorate.51.net 团购] [http://www.xsjby.cn 化工泵] [http://www.asp169.com/zhaoguan2.htm 二氧化氯] [http://www.fm360.net 网址大全] [http://www.fm360.net/page/001.html 网址大全] [http://www.fm360.net/page/game.htm 网址大全] [http://www.fm360.net/page/software.htm 网址大全] [http://www.fm360.net/page/jinshi.htm 网址大全] [http://www.fm360.net/page/music.htm 网址大全] [http://www.fm360.net/page/053.html 网址大全] [http://www.fm360.net/page/flash.htm 网址大全] [http://www.fm360.net/page/newsweek.htm 网址大全] [http://www.fm360.net/page/club.htm 网址大全] [http://www.fm360.net/page/stock.htm 网址大全] [http://www.fm360.net/page/love.htm 网址大全] [http://www.fm360.net/page/netcard.htm 网址大全] [http://www.fm360.net/page/025.html 网址大全] [http://www.fm360.net/page/hardware.htm 网址大全] [http://www.fm360.net/page/sport.htm 网址大全] [http://www.fm360.net/page/shouji.htm 网址大全] [http://www.fm360.net/page/ym.htm 网址大全] [http://www.fm360.net/page/ylbj.htm 网址大全] [http://www.fm360.net/page/car.htm 网址大全] [http://www.jifamark.com 线号机] [http://www.jifamark.com/xhj.htm 线号机] [http://www.jifamark.com 打号机] [http://www.funasia.cn 装修] [http://www.funasia.cn 团购] [http://www.funasia.cn/pinpai.asp 装修] [http://www.funasia.cn/client/gb\_list.asp 装修] [http://www.funasia.cn/design/index.asp 装修] [http://www.funasia.cn/funasiaHome/index.asp 装修] [http://www.funasia.cn/jiancai.asp 装修] [http://www.funasia.cn/shishang.asp 装修] [http://www.funasia.cn/mall/AboutOur.htm 团购] [http://www.genset-sh.com/cai.asp 发电机] [http://www.genset-sh.com/tancu.asp 发电机] [http://www.genset-sh.com/xi3.asp 发电机] [http://www.genset-sh.com/lan.asp 发电机] [http://www.genset-sh.com/leng.asp 发电机] [http://www.genset-sh.com/jiyou.asp 发电机] [http://www.genset-sh.com/ranyou.asp 发电机] [http://www.genset-sh.com/kuongqi.asp 发电机] [http://www.genset-sh.com/ssss.asp 发电机] [http://www.zj-df.com 减速机] [http://www.xhhj.com.cn 离心机] [http://www.hdfix.com.cn 数据恢复]