Thứ hai, 14/04/2014 | 00:00 GMT+7

Cách tải phần mềm và nội dung lên VPS Linux của bạn

Một khả năng mà hầu hết tất cả các server phải có là khả năng gửi và nhận thông tin đến các máy nối mạng khác. Mặc dù mọi người thường nghĩ về server như cung cấp nội dung (xét cho cùng thì nó cũng có tên), chúng cũng phải có khả năng thu nhận nội dung vì nhiều lý do.

Mặc dù hầu hết các gói Linux đều có sẵn thông qua repository của bản phân phối của chúng và có thể được download bằng các công cụ quản lý gói tiêu chuẩn, các thông tin và file khác phải sử dụng các cơ chế khác. Trong hướng dẫn này, ta sẽ thảo luận một số phương pháp phổ biến nhất để tải file và dữ liệu lên server Linux của bạn.

Ta sẽ chủ yếu sử dụng version VPS Ubuntu 14.04 để chạy qua danh sách này, nhưng bạn có thể cài đặt và sử dụng hầu hết mọi phần mềm này trên các bản phân phối và bản phát hành khác.

Thu thập dữ liệu và phần mềm từ repository

Có lẽ cách phổ biến nhất để tải các gói và phần mềm lên server của bạn là sử dụng các repository . Các repository trong ngữ cảnh này có thể đề cập đến những thứ khá khác nhau.

Điều này có thể chỉ đơn giản là đề cập đến bộ sưu tập lớn các phần mềm có sẵn. Chúng chứa phần mềm đã được biên dịch và sẵn sàng cài đặt thường đã được kiểm tra và cấu hình để sử dụng với bản phân phối của bạn. Ngoài ra còn có các repository nguồn, chứa tất cả các file cần thiết để xây dựng một dự án phần mềm nhất định.

Ta sẽ xem xét cả hai loại này trong phần này.

Cài đặt Phần mềm từ Kho lưu trữ Phân phối Thông thường

Cách tiêu chuẩn để cài đặt phần mềm cho máy tính Linux là sử dụng trình quản lý gói. Trình quản lý gói được cấu hình để kết nối với một tập hợp server được cấu hình chứa các repository các gói đã được kiểm tra, đóng gói và kiểm tra trên các hệ thống tương thích.

Các bản phân phối Linux sử dụng các định dạng đóng gói và trình quản lý gói khác nhau để thực hiện điều này.

Các định dạng đóng gói phổ biến nhất là định dạng đóng gói .deb , được sử dụng bởi các bản phân phối Debian và Ubuntu và các dẫn xuất của chúng, và định dạng đóng gói .rpm , thường được sử dụng bởi RedHat, CentOS và Fedora và các bản phân phối liên quan. Một số hệ thống sử dụng các định dạng đóng gói khác nhau. Ví dụ, Arch Linux sử dụng các gói .tar.xz đơn giản.

Nhìn chung, các bản phân phối sử dụng .deb có xu hướng sử dụng bộ công cụ quản lý gói apt . Bạn có thể tìm hiểu về cách sử dụng apt để quản lý .deb gói .deb bằng cách nhấp vào đây.

Tương tự như vậy, những bản phân phối sử dụng định dạng gói .rpm thường gắn với trình quản lý gói yum . Bạn có thể tìm hiểu cách sử dụng yum từ nhiều nguồn khác nhau, một số ví dụ có sẵn tại đây , tại đâytại đây .

Vì Arch Linux không tuân theo các mẫu này và sử dụng định dạng đóng gói riêng, nó cũng đã phát triển trình quản lý gói của riêng mình có tên pacman để quản lý chức năng này. Arch wiki có một trang tuyệt vời về cách sử dụng pacman mà bạn có thể tìm thấy tại đây.

Cách sử dụng repository cá nhân

Một phương pháp mua phần mềm có sẵn cho máy Ubuntu là sử dụng repository cá nhân hoặc PPA . Mặc dù phương pháp tải phần mềm này không liên quan đến hầu hết các bản phân phối, nhưng nó mang lại sự linh hoạt cho các server Ubuntu.

PPA về cơ bản là một repository , thường tập trung vào một hoặc một vài gói cụ thể, được duy trì bởi một người hoặc group bên ngoài các kênh chính thức của Ubuntu. Điều này cho phép bạn sử dụng PPA làm nguồn riêng cho trình quản lý gói của bạn và phần mềm được xây dựng và lưu trữ ở đó sẽ có sẵn để cài đặt liền mạch cùng với các gói khác của bạn.

Điều này có một số lợi thế rõ ràng. Bạn có thể nhận được các version phần mềm mới hơn giữa các bản phát hành Ubuntu chính thức, thường để lại cho bạn version cũ hơn của hầu hết các gói trong 6 tháng cùng một lúc. Chúng cũng cho phép bạn dễ dàng truy cập phần mềm chưa được đóng gói chính thức bởi group Ubuntu, với điều kiện là một bên độc lập đã tự cung cấp các gói đó.

Ưu điểm lớn nhất so với việc biên dịch từ nguồn là các gói này được quản lý thông qua các công cụ đóng gói thông thường. Điều này nghĩa là họ có thể nhận được các bản cập nhật thường xuyên và được cắm vào hệ sinh thái gói chung, cho phép họ tận dụng các tính năng như độ phân giải phụ thuộc.

Tuy nhiên, có những nhược điểm đối với cách tiếp cận này. Thứ nhất, bạn phải đặt nhiều niềm tin vào những người duy trì PPA mà bạn đang sử dụng. Mặc dù bạn có thể có lý do chính đáng để tin tưởng những người đóng gói tại Ubuntu, nhưng bạn nên tự hỏi bản thân xem PPA mà bạn quan tâm có được cung cấp bởi một nguồn tin cậy hay không. Có khả năng ngay cả khi người bảo trì không có ác ý, họ không phải là người có ý thức bảo mật cao nhất và có thể vô tình cung cấp các gói bị xâm phạm.

Một điều cần lưu ý nữa là tuổi thọ của các PPA này. Bạn sẽ có một kế hoạch hành động nào nếu đột nhiên hỗ trợ bị cắt khỏi nguồn này? Bạn có thời gian để theo dõi trong trường hợp bản phân phối của bạn kết thúc việc bổ sung hỗ trợ cho gói thông qua các kênh mặc định không?

Trước khi bắt đầu, bạn có thể phải thêm một gói vào hệ thống của bạn để cho phép bạn dễ dàng quản lý các PPA. Điều này thay đổi theo bản phát hành, nhưng bạn có thể sử dụng một trong hai tùy chọn bên dưới:

sudo apt-get update sudo apt-get install python-software-properties     # For Ubuntu 12.04 and lower sudo apt-get install software-properties-common     # For Ubuntu versions > 12.04 

Sau đó, bạn có thể thêm PPA bằng lệnh nội dung như sau:

<pre>
sudo add-apt-repository ppa: <span class = “highlight”> PPA_name </span>
</pre>

Sau đó, bạn muốn cập nhật index gói của bạn để lấy thông tin từ PPA mới của bạn. Sau đó, bạn có thể cài đặt bất kỳ phần mềm mới nào mà PPA cung cấp:

<pre>
sudo apt-get cập nhật
sudo apt-get install <span class = “highlight”> new_package </span>
</pre>

Kho lưu trữ Git

Loại repository khác mà bạn có thể gặp khi xử lý phần mềm Linux được sử dụng để quản lý các file nguồn phần mềm. Nói chung, điều này nghĩa là repository git .

Nếu các file bạn quan tâm được lưu trữ trong repository lưu trữ git hoặc trên một giải pháp Git được lưu trữ trên server như GitHub, Bitbucket, GitLab riêng tư, v.v., bạn có thể dễ dàng kéo các file xuống bằng các git thông thường.

Đảm bảo rằng server của bạn đã cài đặt git để bắt đầu:

sudo apt-get update sudo apt-get install git 

Sau đó, bạn chỉ cần di chuyển đến folder mà bạn muốn giữ dự án và sao chép repository bằng cách sử dụng thông tin được cung cấp trên trang web. Ví dụ: trên GitHub, bạn có thể lấy URL repository của dự án ở phía bên tay phải:

URL repo GitHub

Bạn có thể sao chép URL và paste vào phiên terminal của bạn sau lệnh sao chép:

<pre>
git clone <span class = “highlight”> https://github.com/user/project.git </span>
</pre>

Thao tác này sẽ sao chép toàn bộ dự án vào folder hiện tại của bạn.

Tài nguyên Web Chung

Mặc dù quản lý phần mềm bằng repository rất dễ dàng và cung cấp một phương pháp tuyệt vời để theo dõi phần mềm và các thay đổi, nhưng không phải lúc nào bạn cũng có thể dựa vào các phương pháp này vì nhiều lý do. Không phải tất cả phần mềm đều được lưu giữ trong repository và gói phần mềm không phải là loại dữ liệu duy nhất bạn có thể cần trên server của bạn .

Đối với nội dung không thuộc repository , ta có các công cụ khác có thể hỗ trợ ta . Ta sẽ thảo luận về một số phương pháp phức tạp và không phức tạp bên dưới.

Download và chuyển từ xa

Có lẽ cách tải dữ liệu lên server của bạn mà bạn cảm thấy tự nhiên nhất là tải dữ liệu về máy tính tại nhà của bạn và sau đó tải lên trang web. Vì bạn có thể đã tải nội dung tùy chỉnh lên trang web của bạn , nên phương pháp này, nếu không chính xác là trang nhã, rất dễ dàng.

Bất kỳ nội dung, file hoặc gói nào bạn muốn trên trang web của bạn đều có thể được download máy tính của bạn bằng trình duyệt web thông thường. Đảm bảo rằng nếu bạn đang tải phần mềm, tức là bạn đang download version chính xác để phù hợp với phân phối, phát hành và kiến trúc của server (nếu các tùy chọn download khác nhau).

Sau đó, bạn có thể dễ dàng chuyển các file này sang server của bạn . Phương pháp được đề xuất là thông qua kết nối sftp , điều này sẽ cho phép bạn truyền dữ liệu một cách an toàn dễ dàng. Bạn có thể sử dụng sftp từ dòng lệnh như ta hiển thị trong hướng dẫn này hoặc bạn có thể sử dụng ứng dụng client FTP với các khả năng của sftp , như ta trình bày trong hướng dẫn này về cách sử dụng FileZilla với sftp .

Đây có lẽ là cách linh hoạt nhất để đưa nội dung vào server của bạn, bởi vì nó cho phép bạn chuyển các file bạn đã tạo ngoài các file bạn có quyền truy cập trên web.

Trình duyệt web dựa trên console

Một cách thú vị khác để đưa nội dung vào hệ thống của bạn là thực sự sử dụng trình duyệt web từ bên trong server .

Mặc dù bạn có thể cài đặt toàn bộ server hiển thị đồ họa và các trình duyệt thông thường vào server của bạn , nhưng điều này hầu như luôn quá mức cần thiết và không cần thiết. Một giải pháp thay thế là sử dụng các trình duyệt web dựa trên console cho phép bạn truy cập một trang web được hiển thị ở dạng kết quả chỉ có văn bản.

Có khá nhiều tùy chọn có sẵn cho các trình duyệt web dựa trên console .

Linh miêu

Trình duyệt lynx là trình duyệt web lâu đời nhất vẫn đang được phát triển và sử dụng tích cực. Nó cũng dễ sử dụng. Về cơ bản, bằng cách sử dụng các phím mũi tên LÊN và XUỐNG cho phép bạn dễ dàng chuyển giữa các liên kết trong toàn bộ trang. Để theo một liên kết, nhấn ENTER hoặc mũi tên PHẢI khi mục nhập của nó được đánh dấu.

Tính năng này có thể không khả dụng trên hệ thống của bạn theo mặc định, nhưng bạn có thể cài đặt nó một cách dễ dàng bằng lệnh thông tin như :

sudo apt-get update sudo apt-get install lynx 

Lynx có thể xử lý quản lý cookie và dấu trang. Nó có thể hiển thị kết quả màu nếu terminal của bạn hỗ trợ nó. Nó thường được dùng cho bất kỳ trang web nào không dựa vào những thứ như javascript để cung cấp chức năng thực tế.

Ví dụ: ở đây, bạn có thể thấy trang account DigitalOcean mẫu được hiển thị trong trình duyệt lynx :

Server     Create Server    × Logged in!    Image         Name            IP Address   Status Memory Disk Region          irssi                xxx.241.xxx.54  Active 512MB  20GB nyc1          try                  192.xxx.170.xx  Active 4GB    60GB nyc2          snmp                 xxx.170.xx.123  Active 4GB    60GB nyc2          tugboat              192.xxx.162.xxx Active 4GB    60GB nyc2 

Như bạn thấy , điều này khá khả dụng.

Trình duyệt này cũng rất tốt khi duyệt web từ dòng lệnh. Một tính năng của trình duyệt links qua một thứ như lynx là nó chứa một hệ thống menu tương tự như một trình duyệt truyền thống có thể được truy cập bằng cách nhấn phím ESC.

Bạn có thể tải trình duyệt này nếu nó chưa có trên hệ thống của bạn bằng lệnh :

sudo apt-get update sudo apt-get install links 

Mặc dù trình duyệt links không hiển thị văn bản màu trong cấu hình mặc định của nó, khiến việc phân biệt các siêu liên kết khó hơn một chút, nhưng nó tận dụng rất nhiều tính năng ncurses để làm cho kết xuất trông khá đẹp. Việc đưa một trang web đồ họa vào văn bản sẽ luôn gây ra các vấn đề về định dạng, nhưng links hoạt động khá tốt:

                                 Server                                      Create Server                                                              Image Name                 IP Address      Status Memory Disk Region             irssi                xxx.241.xxx.54  Active 512MB  20GB nyc1               try                  192.xxx.170.xx  Active 4GB    60GB nyc2               snmp                 xxx.170.xx.123  Active 4GB    60GB nyc2               tugboat              192.xxx.162.xxx Active 4GB    60GB nyc2 

Một tính năng khác có thể ảnh hưởng đến quyết định của bạn là links theo mặc định kết hợp hỗ trợ chuột, nghĩa là bạn có thể nhấp vào các liên kết trong cửa sổ terminal giống như bạn làm trong trình duyệt thông thường của bạn .

Một nhánh phổ biến của trình duyệt linkselinks . Ngã ba này được bắt đầu vào năm 2001 và kết hợp một bộ tính năng mở rộng đồng thời tận dụng các cơ chế links xuất links và động cơ bên dưới.

Để có được elinks trên một máy Ubuntu, bạn có thể gõ:

sudo apt-get update sudo apt-get install elinks 

Một số tính năng mà bạn nhận được từ elinks qua links là password và hình thức quản lý, duyệt web theo thẻ, hỗ trợ javascript một phần, và bittorrent và hỗ trợ giao thức IPv6. Những điều này có thể phải trả giá bằng tốc độ, nhưng rất có thể điều này sẽ không quá đáng chú ý.

w3m

Đây là một trình duyệt văn bản đầy đủ tính năng khác có thể dễ sử dụng hơn giống như cách bạn sử dụng trình duyệt đồ họa. Hầu hết các trình duyệt khác trong danh sách này đều cho phép bạn chuyển giữa các liên kết, nhưng lại gây khó khăn cho việc duyệt trang. Tuy nhiên, trình duyệt w3m sử dụng TAB để chuyển giữa các liên kết và phím mũi tên để di chuyển con trỏ một cách độc lập để cuộn trang.

Mặc dù nhiều hệ thống bao gồm w3m theo mặc định, nhưng nếu server của bạn không có trình duyệt này, bạn có thể thêm nó bằng lệnh :

sudo apt-get update sudo apt-get install w3m 

Một ưu điểm khác của trình duyệt này sẽ khiến một số người quan tâm là nó có thể sử dụng các lệnh phím giống như vi . Ví dụ: bạn cũng có thể di chuyển con trỏ bằng lệnh 'j', 'k', 'l' và 'h'.

Download Tiện ích

Mặc dù đôi khi việc duyệt từ chính server sẽ rất hữu ích, nhưng thường xuyên hơn, bạn sẽ thấy rằng duyệt từ trình duyệt web đồ họa trên máy của chính mình hiệu quả hơn và sẽ cho phép bạn hiển thị các trang theo cách trung thực hơn.

Do đó, nhiều người duyệt web trên máy của họ và sau đó dán các liên kết download vào cửa sổ terminal của họ để sử dụng với các tiện ích download .

wget

Công cụ wget là một lựa chọn tuyệt vời để nhanh chóng tải các trang hoặc download từ một trang web.

Nếu bạn không có wget đã có sẵn trên server Ubuntu, bạn có thể có được nó bằng lệnh :

sudo apt-get update sudo apt-get install wget 

Sau đó, việc download file từ một nguồn từ xa dễ dàng như dán URL sau tên lệnh như sau:

<pre>
wget <span class = “highlight”> www.example.com </span>
</pre>

Nếu bạn trỏ mục này vào một trang web chung, nó sẽ tải index hoặc trang chính xuống một file trong folder local . Nếu bạn hướng nó tới một file , nó sẽ download file đó thay thế.

Thông thường, quy trình sẽ là sử dụng trình duyệt trên máy tính ở nhà của bạn để tìm một file trên internet mà bạn quan tâm, nhấp chuột phải vào liên kết download và chọn tùy chọn tương tự như “sao chép vị trí liên kết”. Sau đó, bạn sẽ sử dụng URL này với lệnh trên.

Nếu quá trình download của bạn bị gián đoạn, bạn có thể sử dụng cờ -c , cờ này sẽ tiếp tục download một phần nếu tìm thấy file chưa hoàn chỉnh trong folder hiện tại:

<pre>
wget -c <span class = “highlight”> www.example.com </span>
</pre>

Lệnh wget có thể xử lý cookie, là một thành phần tốt cho việc tạo tập lệnh và có thể download đệ quy toàn bộ trang web ở định dạng ban đầu của chúng.

Xoăn

Dụng cụ làm curl cũng là một lựa chọn tuyệt vời cho kiểu thao tác này. Mặc dù wget thường hoạt động bằng cách tạo ra các file , curl theo mặc định sử dụng kết quả tiêu chuẩn, làm cho nó cực kỳ hữu ích cho các tập lệnh và đường dẫn. Nó cũng hỗ trợ một số lượng lớn các giao thức và có thể xử lý nhiều phương thức xác thực HTTP hơn wget .

Mặc dù nhiều hệ thống sẽ được cài đặt curl theo mặc định, nhưng nếu máy tính Ubuntu của bạn không có, có thể chạy lệnh:

sudo apt-get update sudo apt-get install curl 

Trong khi curl sử dụng các đường ống bình thường, bạn cũng có thể dễ dàng để nó lưu kết quả của bạn vào một file . Đây là những gì bạn có thể cần nếu bạn đang download các file cho server của bạn . Để download file và xuất file đó ra file local có cùng tên, hãy nhập:

<pre>
curl -O <span class = “highlight”> www.example.com/index.html </span>
</pre>

Ta phải chỉ định một file vì đó là cách curl sẽ biết phải đặt tên cho file local .

Nếu ta muốn chọn cái gì để đặt tên cho file local , ta không cần phải trỏ nó vào một file cụ thể nếu ta đang tìm index folder của một trang web. Thay vào đó, ta có thể tùy chọn trỏ nó vào một vị trí và các file index nào được cấu hình để trả về sẽ được đặt trong file ta chọn:

<pre>
curl -o file.html <span class = “highlight”> www.example.com </span>
</pre>

Điều này cũng hoạt động tốt để tải file xuống một tên bạn muốn chọn và không chỉ hữu ích khi làm việc với các index folder .

Nếu bạn được giao một chuyển hướng, bạn có thể yêu cầu curl đi theo nó bằng cách sử dụng cờ -L .

Kết luận

Bây giờ, bạn có thể thấy rằng có khá nhiều tùy chọn khác nhau để tải phần mềm, dữ liệu và tài liệu từ internet vào server của bạn. Mặc dù tất cả những thứ này đều có khả năng lấy nội dung từ web, nhưng không có cái nào phù hợp cho mọi loại download và tiêu dùng.

Sẽ rất hữu ích nếu biết các lựa chọn của bạn là gì và có thể tận dụng các điểm mạnh của từng giải pháp cho các tình huống mà nó được thiết kế. Điều này sẽ giúp bạn tránh làm những công việc không cần thiết và sẽ mang lại cho bạn sự linh hoạt trong cách tiếp cận vấn đề.

<div class = “author”> Bởi Justin Ellingwood </div>


Tags:

Các tin liên quan

Cách bảo vệ server của bạn chống lại lỗ hổng bảo mật OpenSSL.
2014-04-08
Cách cấu hình mail server bằng Postfix, Dovecot, MySQL và SpamAssassin
2014-04-01
Cách cấu hình mail server bằng Postfix, Dovecot, MySQL và SpamAssassin
2014-04-01
Cách cấu hình công cụ để sử dụng IPv6 trên VPS Linux
2014-04-01
Cách điều chỉnh cấu hình SSH Daemon của bạn trên VPS Linux
2014-03-26
Cách xác thực người dùng với server SSH bằng Monkeysphere trên VPS Ubuntu
2014-03-24
Cách xác thực danh tính server SSH với Monkeysphere trên VPS Ubuntu
2014-03-24
Cách thiết lập DNSSEC trên server DNS BIND ủy quyền
2014-03-19
Cách thiết lập DNSSEC trên server DNS BIND ủy quyền
2014-03-19
Cách cài đặt TrueCrypt (CLI) trên Linux
2014-03-17