Ubuntu The Complete Reference phần 6 pot

75 482 0
Ubuntu The Complete Reference phần 6 pot

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

346 Part V: Applications a compatible set of GNU packages (Java-like) are provided that allow you to run Java applets. From the Ubuntu multiverse repository you can install the original JRE and SDK from Sun packaged for Ubuntu. Ubuntu supports a Java-like collection of support packages that enable the use of Java Runtime operations. There is no official name for this collection, though it is usually referred to as java-gci-compat, as well as Java-like. This collection provides a free and open source environment, consisting of three packages: GNU Java runtime (libgcj), the Eclipse Java compiler (ecj), and a set of wrappers and links (java-gcj-compat). It is available as part of the Ubuntu main repository. Use the gcj-web-plugin for supporting Java in Web browsers. You can also download and install the Sun version of the JRE, now included in the Ubuntu multiverse repository. Use the Synaptic Package Manager and search on sun-java5. These Debian versions are packaged for installation on Ubuntu (mulitverse development repository). Alternatively, you can download and install the JRE and SDK directly from Sun (www.java.com). The SDK and JRE are available in the form of self-extracting compressed archives, .bin. NOTE NOTE Numerous additional Java-based products and tools are currently adaptable for Linux. Many of the products such as the Java Web server run directly as provided by Sun. You can download several directly from the Sun Java Web site at http://java.sun.com. Sun now provides an open source development environment called Iced Tea, which is designed for developing completely open source Java applications. OpenJDK provides a Java development platform; detailed descriptions of features can be found in the SDK documentation, http://java.sun.com/docs. FTP Clients With File Transfer Protocol (FTP) clients, you can connect to a corresponding FTP site and download files from it. FTP clients are commonly used to download software from public FTP sites that operate as software repositories. Most Linux software applications can be downloaded to your Linux system from such sites, which feature anonymous logins that let any user access their files. A distribution site such as ftp.redhat.com is an example of one such FTP site, holding an extensive set of packaged Linux applications you can download using an FTP client and then easily install on your system. Basic FTP client capabilities are incorporated into the Konqueror (KDE) and Nautilus (GNOME) file managers. You can use a file manager window to access an FTP site and drag files to local directories to download them. Effective FTP clients are also now incorporated into most Web browsers, making browsers a primary downloading tool. Firefox in particular has strong FTP download capabilities. Although file managers and Web browsers provide effective access to public (anonymous login) sites, you may need a standalone FTP client such as curl, wget, gFTP, or ftp to access private sites. These clients let you enter usernames and passwords with which you can access a private FTP site. The standalone clients are also useful for large downloads from public FTP sites, especially those with little or no Web display support. Popular Linux FTP clients are listed in Table 16-4. PART V Chapter 16: Web Browsers, FTP, Java, VoIP, and IM 347 Network File Transfer: FTP You can transfer extremely large files directly from one site to another using FTP, which can handle both text and binary files. This TCP/IP protocol operates on systems connected to networks that use TCP/IP, such as the Internet. FTP performs a remote login to another account on another system to which you connect through your network. Once logged in to that other system, you can transfer files to and from it. To log in, you need to know the login name and password for the account on the remote system. For example, if you have accounts at two different sites on the Internet, you can use FTP to transfer files from one to the other. Many sites on the Internet allow public access using FTP, however. Such sites serve as depositories for large files that anyone can access and download. These sites are often referred to as FTP sites, and in many cases, their Internet addresses usually begin with ftp, such as ftp.gnome.org or ftp.ubuntu.com. These public sites allow anonymous FTP login from any user. For the login name, use the word anonymous, and for the password, use your e-mail address. You can then transfer files from that site to your own system. You can perform FTP operations using an FTP client program; for Linux systems, you can choose from several FTP clients. Many now operate using GUIs such as GNOME. Some, such as Firefox, have limited capabilities, whereas others, such as NcFTP, include an extensive set of enhancements. The original FTP client is just as effective, though not as easy to use. It operates using a simple command line interface and requires no GUI or cursor support as other clients do. The Internet has a great many sites open to public access that contain files anyone can obtain using FTP. Unless you already know where a file is located, however, finding it can be difficult. To search for files on FTP sites, you can use search engines such as Yahoo! or Google. For Linux software, you can check sites such as http://freshmeat.net, http:// sourceforge.net, http://apps.kde.com, and www.gnome.org. These sites usually search for both Web pages and FTP files. Web Browser–Based FTP: Firefox You access an FTP site and download files from it with any Web browser. When you access an FTP site, the entire list of files in a directory is listed as a Web page. You can move to a subdirectory by clicking its entry. With Firefox, you can easily browse through an FTP site to FTP Clients Description Firefox Mozilla Web and FTP browser Konqueror KDE file manager Nautilus GNOME file manager gFTP GNOME FTP client ftp Command line FTP client lftp Command line FTP client capable of multiple connections NcFTP Screen-based FTP client curl Internet transfer client (FTP and HTTP) T ABLE 16-4 Linux FTP Clients 348 Part V: Applications download files: just click the download link. This will start the transfer operation, opening a dialog for selecting your local directory and the name for the file. The default name is the same as on the remote system. You can manage your downloads with the download manager, which will let you cancel a download operation in progress or remove other downloads requested. The manager will show the time remaining, the speed, and the amount transferred for the current download. Browsers are useful for locating individual files, though not for downloading a large set of files, as is usually required for a system update. The KDE File Managers: Konqueror and Dolphin On KDE, the Konqueror and Dolphin desktop file managers have built-in FTP capability. The FTP operation has been seamlessly integrated into standard desktop file operations. Downloading files from an FTP site is as simple as copying files by dragging them from one directory window to another, but one of the directories happens to be located on a remote FTP site. On the KDE desktop, you can use a file manager window to access a remote FTP site. Files in the remote directory are listed just as your local files are. To download files from an FTP site, you open a window to access that site, entering the URL for the FTP site in the window’s location box. Use the ftp:// protocol for FTP access. You can also use the fish:// protocol for FTP access using SSH secure connections. Once connected, open the directory you want, and then open another window for the local directory to which you want the remote files copied. In the window showing the FTP files, select the ones you want to download. Then drag-and-drop those files to the window for the local directory. A pop-up menu appears with choices for Copy, Link, or Move. Select Copy to download the selected files. Another window opens, showing the download progress and displaying the name of each file in turn, along with a bar indicating the percentage downloaded so far. GNOME Desktop FTP: Nautilus The easiest way to download files is to use the built-in FTP capabilities of the GNOME file manager, Nautilus. The FTP operation has been seamlessly integrated into standard desktop file operations. Downloading files from an FTP site is as simple as dragging files from one directory window to another, where one of the directories happens to be located on a remote FTP site. Use Nautilus to access a remote FTP site, listing files in the remote directory, just as local files are. Just enter the FTP URL following the prefix ftp:// and press enter. The top directory of the remote FTP site will be displayed. Use Nautilus to progress through the remote FTP site’s directory tree until you find the file you want. Then open another window for the local directory to which you want the remote files copied. In the window showing the FTP files, select those you want to download. Then ctrl-click and drag those files to the window for the local directory. ctrl-clicking performs a copy operation, not a move. As files are downloaded, a dialog appears showing the progress. gFTP The gFTP program is a simpler GNOME FTP client designed to let you make standard FTP file transfers. The gFTP window consists of several panes: The top-left pane lists files in your local directory, and the top-right pane lists your remote directory. Subdirectories have folder icons preceding their names. The parent directory can be referenced by the double period entry ( ) with an up arrow at the top of each list. Double-click a directory entry to access it. The pathnames for all directories are displayed in boxes above each pane. You can enter a new pathname to change to a different directory. PART V Chapter 16: Web Browsers, FTP, Java, VoIP, and IM 349 Two buttons between the panes are used for transferring files. The left arrow button downloads selected files in the remote directory, and the right arrow button uploads files from the local directory. To download a file, click it in the right pane and then click the left arrow button. When the file is downloaded, its name appears in the left pane, your local directory. Menus across the top of the window can be used to manage your transfers. A connection manager enables you to enter login information about a specific site. You can specify whether to perform an anonymous login or provide a username and password. Click Connect to connect to that site. A drop-down menu for sites lets you choose the site you want. Interrupted downloads can be restarted easily. wget The wget tool lets you access Web and FTP sites for particular directories and files. Directories can be recursively downloaded, letting you copy an entire Web site. The wget command takes as its option the URL for the file or directory you want. Helpful options include -q for quiet, -r for recursive (directories), -b to download in the background, and -c to continue downloading an interrupted file. One of the drawbacks is that your URL reference can be very complex. You have to know the URL already; you cannot interactively locate an item as you would with an FTP client. The following would download the Ubuntu DVD in the background: wget -b http://cdimage.ubuntu.com/dvd/currnet/hardy-dvd-amd64.iso TIP TIP With the GNOME wget tool, you can run wget downloads using a GUI. curl The curl Internet client operates much like wget but with much more flexibility. You can specify multiple URLs on curl’s command line, and you can use braces to specify multiple matching URLs, such as different Web sites with the same domain name. You can list the different Web site hostnames within braces followed by their domain name (or vice versa). You can also use brackets to specify a range of multiple items. This can be very useful for downloading archived files that have the same root name with varying extensions, such as different issues of the same magazine. Curl can download using any protocol and will try to intelligently guess the protocol to use if none is provided. Check the curl man page for more information. ftp The name ftp designates the original FTP client used on Unix and Linux systems. The ftp client uses a command line interface, and it has an extensive set of commands and options you can use to manage your FTP transfers. Alternatively you can use sftp for more secure access. The sftp client has the same commands as ftp, but provided Secure Shell (SSH) encryption. Also, if you installed the Kerberos clients, a Kerberized version of ftp is set up, which provides for secure authentication from Kerberos servers. It has the same name as the ftp client (an ftp link to Kerberos ftp) and also the same commands. You start the ftp client by entering the command ftp at a shell prompt. If you want to connect to a specific site, you can include the name of that site on the command line after the ftp keyword. Otherwise, you need to connect to the remote system with the ftp 350 Part V: Applications command open. You are then prompted for the name of the remote system with the prompt (to). When you enter the remote system name, ftp connects you to the system and then prompts you for a login name. The prompt for the login name consists of the word Name and, in parentheses, the system name and your local login name. Sometimes the login name on the remote system is the same as the login name on your own system. If the names are the same, press enter at the prompt. If they are different, enter the remote system’s login name. After entering the login name, you are prompted for the password. In the next example, the user connects to the remote system garnet and logs in to the robert account: $ ftp ftp> open (to) garnet Connected to garnet.berkeley.edu. 220 garnet.berkeley.edu FTP server ready. Name (garnet.berkeley.edu:root): robert password required Password: user robert logged in ftp> Once you’re logged in, you can execute Linux commands on either the remote system or your local system. You execute a command on your local system in ftp by preceding the command with an exclamation point. Any Linux commands without an exclamation point are executed on the remote system. One exception exists to this rule: Whereas you can change directories on the remote system with the cd command, to change directories on your local system, you need to use a special ftp command called lcd (local cd). In the next example, the first command lists files in the remote system, while the second command lists files in the local system: ftp> ls ftp> !ls The ftp program provides a basic set of commands for managing files and directories on your remote site, provided you have the permission to do so (see Table 16-5). You can use mkdir to create a remote directory and rmdir to remove one. Use the delete command to erase a remote file. With the rename command, you can change the names of files. You close your connection to a system with the close command. You can then open another connection if you want. To end the ftp session, use the quit or bye command: ftp> close ftp> bye Good-bye $ To transfer files to and from the remote system, use the get and put commands. The get command receives files from the remote system to your local system, and the put command sends files from your local system to the remote system. In a sense, your local PART V Chapter 16: Web Browsers, FTP, Java, VoIP, and IM 351 system gets files from the remote and puts files to the remote. In the next example, the file weather is sent from the local system to the remote system using the put command: ftp> put weather PORT command successful. ASCII data connection ASCII Transfer complete. ftp> Command Effect ftp Invokes the ftp program. open site-address Opens connection to another system. close Closes connection to a system. quit or bye Ends ftp session. ls Lists the contents of a directory. dir Lists the contents of a directory in long form. get filename Sends file from remote system to local system. put filename Sends file from local system to remote system. mget regular-expression Enables you to download several files at once from a remote system. You can use special characters to specify the files; you are prompted to transfer each file in turn. mput regular-expression Enables you to send several files at once to a remote system. You can use special characters to specify the files; you are prompted for each file to be transferred. runique Toggles storing of files with unique filenames. If a file already exists with the same filename on the local system, a new filename is generated. reget filename Resumes transfer of an interrupted file from where you left off. binary Transfers files in binary mode. ascii Transfers files in ASCII mode. cd directory Changes directories on the remote system. lcd directory Changes directories on the local system. help or ? Lists ftp commands. mkdir directory Creates a directory on the remote system. rmdir Deletes a remote directory. delete filename Deletes a file on the remote system. mdelete file-list Deletes several remote files at once. rename Renames a file on a remote system. hash Displays progressive hash signs during download. status Displays current status of ftp. T ABLE 16-5 The ftp Client Commands 352 Part V: Applications If a download is interrupted, you can resume the download with reget. This is helpful when working with extremely large files; the download resumes from where it left off, so the whole file needn’t be downloaded again. Be sure to download binary files in binary mode. For most FTP sites, the binary mode is the default, but some sites might have ASCII (text) as the default. The command ascii sets the character mode, and the command binary sets the binary mode. Most software packages available at Internet sites are archived and compressed files, which are binary files. In the next example, the transfer mode is set to binary, and the archived software package mydata.tar.gz is sent from the remote system to your local system using the get command: ftp> binary ftp> get mydata.tar.gz PORT command successful. Binary data connection Binary Transfer complete. ftp> You may often want to send several files, specifying their names with wildcard characters. The put and get commands, however, operate only on a single file and do not work with special characters. To transfer several files at a time, you have to use two other commands, mput and mget. When you use mput or mget, you are prompted for a file list. You can then either enter the list of files or a file-list specification using special characters. For example, *.c specifies all the files with a .c extension, and * specifies all files in the current directory. In the case of mget, files are sent one by one from the remote system to your local system. Each time, you are prompted with the name of the file being sent. You can type y to send the file or n to cancel the transmission. You are then prompted for the next file. The mput command works in the same way, but it sends files from your local system to the remote system. In the next example, all files with a .c extension are sent to your local system using mget: ftp> mget (remote-files) *.c mget calc.c? y Answering the prompt for each file can be a tedious prospect if you plan to download a large number of files, such as those for a system update. In this case, you can turn off the prompt with the prompt command, which toggles the interactive mode on and off. The mget operation then downloads all files it matches, one after the other. ftp> prompt Interactive mode off. NOTE NOTE To access a public FTP site, you must perform an anonymous login. Instead of a login name, you enter the keyword anonymous (or ftp). Then, for the password, you enter your e-mail address. Once the ftp prompt is displayed, you are ready to transfer files. You may need to change to the appropriate directory first or set the transfer mode to binary. PART V Chapter 16: Web Browsers, FTP, Java, VoIP, and IM 353 Automatic Login and Macros: .netrc The ftp client has an automatic login ability and support for macros. Both are entered in a user’s ftp configuration file called .netrc. Each time you connect to a site, the .netrc file is checked for connection information, such as a login name and password. In this way, you needn’t enter a login name and password each time you connect to a site. This feature is particularly useful for anonymous logins. Instead of having to enter the username anonymous and your e-mail address as your password, this information can be automatically read from the .netrc file. You can even make anonymous login information your default so that, unless otherwise specified, an anonymous login is attempted for any FTP site to which you try to connect. If you must log in to an FTP site, you can specify it in the .netrc file and, when you connect, either automatically log in with your username and password for that site or be prompted for them. Entries in the .netrc file have the following syntax. An entry for a site begins with the term machine, followed by the network or Internet address, and then the login and password information: machine system-address login remote-login-name password password lftp The lftp program is an enhanced FTP client with advanced features such as the ability to download mirror sites and run several FTP operations in the background at the same time (Ubuntu main repository). Lftp uses a command set similar to that for the ftp client: you use get and mget commands to download files, with the -o option to specify local locations for them. Use lcd and cd to change local and remote directories. To manage background commands, you use many of the same commands used for the shell. The & placed at the end of a command puts it into the background, and pressing ctrl-z puts an already-running job in the background. Commands can be grouped with parentheses and placed together into the background. Use the jobs command to list your background jobs and the wait or fg command to move jobs from the background to the foreground. When you exit lftp, the program will continue to run any background jobs. In effect, lftp becomes a background job itself. When you connect to a site, you can queue commands with the queue command, setting up a list of FTP operations to perform. This feature allows you to queue several download operations to a site. The queue can be reordered and entries deleted if you wish. You can also connect to several sites and set up a queue for each one. The mirror command lets you maintain a local version of a mirror site. You can download an entire site or just update newer files, as well as remove files no longer present on the mirror. You can tailor lftp with options set in the .lftprc file. System-wide settings are placed in the /etc/lftp.conf file. Here, you can set features such as the prompt to use and your anonymous password. The .lftp directory holds support files for command history, logs, bookmarks, and startup commands. The lftp program also supports the .netrc file, checking it for login information. TIP TIP The NcFTP program runs as a command line operation similar to ftp with many of the same commands (Ubuntu universe repository). To start up NcFTP, you enter the ncftp command on the command line. It also provides ncftpput and ncftpget for use in shell scripts. 354 Part V: Applications Network Talk and Messenger Clients: VoIP, IRC, and IM You may, at times, want to communicate directly with other users on your network. You can do so with VoIP, Talk, ICQ, IM, and IRC utilities, provided the other user is also logged in to a connected system at the same time (see Table 16-6). With VoIP applications, you can speak over Internet connections as if you’re on a telephone. With an Internet Relay Chat (IRC) utility, you can connect to a remote server where other users are also connected and talk with them. IM clients operate much the same way, allowing users on the same IM system to communicate anywhere across the Internet. Ubuntu uses Pidgin as its standard interface for IM. Ekiga Ekiga (Figure 16-4) is GNOME’s VoIP application providing Internet IP telephone and video conferencing support. It is installed by default on the Ubuntu desktop and is accessible by choosing Applications | Internet | Ekiga Softphone. To use Ekiga, you will need a Session Initiation Protocol (SIP) address. You can obtain a free address from http://ekiga.net, but you will first have to subscribe to the service. When you start Ekiga, you will be prompted to configure your connection. Here you provide your name, set up your user ID and password, detect your network connection, and specify a sound driver and video device. Use the call pad to make a call. The sound and video panels let you adjust sound levels and video image appearance. Use the address book to connect to another Ekiga user. A white pages directory lets you search for people who are also using Ekiga. Ekiga was formerly called GnomeMeeting, and its Web site is still at www.gnomemeeting .org. Ekiga supports both the H.323 and SIP protocols. It is compatible with Microsoft’s NetMeeting. H.323 is a comprehensive protocol that includes the digital broadcasting protocols such as digital video broadcast (DVB) and H.261 for video streaming, as well as the supporting protocols such as the H.450 series for managing calls. Clients Description Ekiga VoIP application Pidgin Messenger interface for all IM protocols including MSN, AIM, Yahoo!, MySpaceIM, ICQ, XMPP, and IRC X-Chat IRC client Konversation KDE IRC client Gabber Jabber client (XMPP) Gaim GNOME AIM client psi Jabber client using QT (KDE) nalm Command line cursor–based IRC, ICQ, and AIM client T ABLE 16-6 Talk and Messenger Clients PART V Chapter 16: Web Browsers, FTP, Java, VoIP, and IM 355 NOTE NOTE IRC operates like a chat room. You can enter channels and talk to other users already online. You must first select an IRC server to which you want to connect. Various servers are available for different locales and topics. Several IRC clients are available for use on Ubuntu, including sirc, ksirc, Konversation, and irssi. Most IM applications, such as Pidgin, can also support IRC. Instant Messenger: Pidgin IM clients operate much the same way as ICQ (www.icq.com), allowing users on the same IM system to communicate anywhere across the Internet. Currently some of the major IM systems are AIM (AOL), Microsoft Network (MSN), Yahoo!, ICQ, and Jabber. Unlike the others, Jabber is an open source IM service (www.jabber.org). It uses an XML protocol it developed called Extensible Messaging and Presence Protocol (XMPP) (www.xmpp.org). TIP TIP Pidgin will not start up unless you have at least one account configured. The first time you start Pidgin, the Add Account window is displayed with Basic and Advanced tabs for setting up an account. Later you can edit the account by selecting it in the Accounts window (Accounts | Manage) and clicking the Modify button. Ubuntu will install Pidgin as its standard interface for IM. Pidgin, formerly known as GAIM, is a multiprotocol IM client that works with most IM protocols including AIM, MSN, Jabber, Google Talk, ICQ, IRC, Yahoo!, MySpaceIM, and more. Pidgin is accessible by choosing Applications | Internet | Pidgin Instant Messenger. To create a new account, choose Accounts | Manage and click the Add button. This opens an Add Account window with Basic and Advanced tabs. Set protocol and account settings on the Basic tab; choose the protocol from a pop-up menu that shows items such as AIM, Bonjour, MySpaceIM, Yahoo!, and IRC. The configuration entries for both Basic and Advanced will change depending on the protocol. AIM shows entries for Screen Name, Password, and Alias. You can also select a buddy icon. Specify the server and network connection settings on the Advanced tab; the AIM server will already be entered. FIGURE 16-4 Ekiga [...]... messages to another user, you first obtain that user’s public key and use it to encrypt the message you want to send to the user The user then decrypts the messages with his or her own private key In other words, your public key is used by others to encrypt the messages you receive, and you use other users’ public keys to encrypt messages you send to them All the users on your Linux system can have their own... to provide a more secure level of transmission The message is encrypted with the recipient’s public key, and the digital signature is encrypted with your private key The user decrypts both the message (with his private key) and then the signature (with your public key) The user then compares the signature with one that he generates from the message to authenticate it When GnuPG decodes a message, it... select the kind of key you want Normally, you keep the default entry by pressing the enter key Then you choose the key size, usually the default of 1024 You then specify how long the key is to be valid—usually, there is no expiration You are then asked to enter a user ID, a comment, and an e-mail address Press enter to see prompts for each in turn These elements, any of which can be used as the key’s... modification digest Using the fingerprint option, you can generate a hash value from the key you installed, and then contact the sender and ask her what the hash value should really be If they are not the same, you know the key was tampered with in transit TIP You can use the fingerprint option to check a key’s validity If you are confident that the key is valid, you can then sign it with the sign-key command... like myfile.asc and then decode the file with the -d option The -o option will specify a file in which to save the decoded version GPG will automatically determine whether this is a binary file or an ASCII-armored version gpg -d -o myfile.txt myfile.asc To check the digital signature of the file, use the gpg command with the verify option This assumes that the sender has signed the file gpg verify... value The value provides a way to check the integrity of the data Commonly known as the MD5 value, it is reflective of the MD5 hash algorithm that was used encrypt the value The MD5 algorithm has since been replaced by the more secure SHA2 algorithms The MD5 value is encrypted with your private key When the user receives your message, your digital signature is decrypted using your public key Then an... that key For example, the string Richard would reference the preceding key, provided there are no other keys that have the string Richard in them The string richlp would also reference the key, as would author Where a string matches more than one key, all those matched would be referenced After you have entered your user ID, comment, and e-mail address, the elements are displayed along with a menu that... you can use the revocation certificate to tell others that your public key should no longer be used In the next example, the user creates a revocation certificate for the key richlp and places it in the file myrevoke.asc: gpg output myrevoke.asc gen-revoke richlp Importing Public Keys PART VI To decode messages from other users, you will need to have their public keys Either they can send them to you... checks protect the data, they do not authenticate it You also need to know that the user who claims to send a message is actually is the person who sent it, rather than an imposter To authenticate a message, the author can sign it using a digital signature This signature can also be encrypted, allowing the receiver to validate it Digital signatures ensure that the message you receive is authentic Encryption... specify the recipient’s public key, which you should already have imported into your pubring file This key is used to encrypt the message The recipient will then be able to decode the message with her private key Use the recipient or -r option to specify the name of the recipient key You can use any unique substring in the user’s public key name, but the e-mail address usually suffices You use the d . for the local directory to which you want the remote files copied. In the window showing the FTP files, select the ones you want to download. Then drag-and-drop those files to the window for the. find the file you want. Then open another window for the local directory to which you want the remote files copied. In the window showing the FTP files, select those you want to download. Then. prompted for the name of the remote system with the prompt (to). When you enter the remote system name, ftp connects you to the system and then prompts you for a login name. The prompt for the login

Ngày đăng: 13/08/2014, 02:24

Từ khóa liên quan

Mục lục

  • page_z0346

  • page_z0347

  • page_z0348

  • page_z0349

  • page_z0350

  • page_z0351

  • page_z0352

  • page_z0353

  • page_z0354

  • page_z0355

  • page_z0356

  • page_z0357

  • page_z0358

  • page_z0359

  • page_z0360

  • page_z0361

  • page_z0362

  • page_z0363

  • page_z0364

  • page_z0365

Tài liệu cùng người dùng

Tài liệu liên quan