20 câu lệnh SSH bên dưới là những lệnh thông dụng nhất bất kỳ ai cũng phải biết để có thể thao tác, quản trị VPS Linux.

Trước khi bắt đầu, bạn cần kết nối với VPS qua SSH bằng cách sử dụng công cụ Putty hoặc ZOC Terminal (nên dùng ZOC vì copy/paste dễ dàng hơn).

Lưu ý:

  • Thư mục, đường dẫn đến thư mục thường kết thúc bởi ký tự /
  • File, đường dẫn đến file không có ký tự / ở cuối
  • Một file trên Linux không phải lúc nào cũng có đuôi đằng sau

20 câu lệnh SSH thông dụng nhất

1. Di chuyển giữa các thư mục

cd [another directory]

VD: chuyển đến thư mục chứa file cấu hình Nginx

cd /etc/nginx/conf.d/

2. Chuyển đến thư mục home của user

cd ~

Nếu bạn login bằng tài khoản root thì lúc này thư mục home sẽ là /root

3. Chuyển đến thư mục trước đây

cd -

4. Di chuyển đến thư mục cha

cd ..

5. Hiển thị đường dẫn thư mục hiện tại

pwd

6. Hiển thị tất cả file/thư mục ở thư mục hiện tại

ls

7. Hiển thị tất cả file và thông tin

ls -al

8. Hiển thị tất cả file với đuôi bất kỳ

ls *.ext

VD: hiển thị toàn bộ file *.PHP

ls *.php

9. Hiển thị tất cả file/thư mục với thông tin chi tiết

ls -alh

10. Tắt kết nối SSH

exit

Quản lý File

11. Copy và đổi tên file

File cũ vẫn được giữ nguyên.

cp [filename] [new filename]

VD: copy và đổi tên file banner.jpg thành banner728px.jpg

cp banner.jpg banner728px.jpg

VD: copy banner.jpg vào folder ads và đổi tên thành banner728px.jpg

cp banner.jpg ads/banner728px.jpg

12. Move và đổi tên file

File cũ sẽ bị xóa và chuyển sang thư mục mới.

mv [old filename] [new filename]

VD: di chuyển banner.jpg sang folder ads

mv banner.jpg ads/banner.jpg

VD: di chuyển banner.jpg sang folder ads và đổi tên file thành banner728px.jpg

mv banner.jpg ads/banner728px.jpg

Tương tự, bạn có thể di chuyển cả folder.

VD: chuyển folder image vào folder media

mv image/ media

VD: chuyển folder image ra thư mục cha

mv image/ ..

13. Xóa một file

rm [file name]

VD: xóa file banner.jpg

rm banner.jpg

14. Xóa toàn bộ file ở thư mục hiện tại

rm *

15. Xóa toàn bộ file với extension bất kỳ

rm *.ext

VD: xóa toàn bộ file .jpg

rm *.jpg

16. Copy một folder kèm theo toàn bộ files, thư mục bên trong

cp -r [directory] [new directory]

17. Tạo thư mục mới

mkdir [folder name]

VD:

mkdir image

18. Tìm kiếm một file từ thư mục hiện tại

find . -name [filename] -print

VD: tìm file banner.jpg ở thư mục hiện tại

find . -name banner.jpg -print

19. Tìm kiếm nội dung trong một file

grep [text] [filename]

VD: tìm từ sidebar trong file index.php

grep sidebar index.php

20. CHMOD – thay đổi file permission

chmod [permission type] [file/folder name]

VD:

chmod 777 wp-config.php

Cách đặt permission:

Số đầu tiên cho file owner, số thứ 2 cho group của owner, và số thứ 3 cho toàn bộ user và group khác.
7 = Read + Write + Execute
6 = Read + Write
5 = Read + Execute
4 = Read
3 = Write + Execute
2 = Write
1 = Execute
0 = All access denied

Comment của bạn

Lưu ý: tất cả comment đều được kiểm duyệt cẩn thận! Nếu có code bạn hãy up lên pastebin.com rồi để lại link trong comment.

41 Comments

  1. tong tuấn 5 comment

    Xin chào ad. Mình dùng lệnh (rm * và rm wp-admin ) nhưng không thể xóa được thư mục này.
    Cho mình hỏi dùng lệnh nào để xóa toàn bộ thư mục wp-admin.
    Cảm ơn.

  2. Vũ Bá Hải 1 comment

    Có cái vps mà thỉnh thoảng cứ bị baclist ip. đã xóa hết ip rồi mà vẫn không log được từ cái ip đã bị block đó mà không biết vì sao

  3. TRI LE 19 comment

    Tự nên web mình bị lỗi ERROR ESTABLISHING A DATABASE CONNECTION
    nên phải quản lý phpmyadmin thì sai password. Nhờ các bạn chỉ giúp
    1. cú pháp để xem file /root/hocvps-script.txt ( để lấy pass, chứ xem bằng Bitvise SSH Client pass đó không đúng )
    2. Hướng khắc phục lỗi Database trên như thế nào? ( Web đang bình thường tự nhiên bị vậy, cũng không rõ nguyên nhân )

    1. Việt Phương Moderator

      1. Mật khẩu lưu trong /root/hocvps-script.txt. Nếu không truy cập được mà thông báo dạng SAI MẬT KHẨU thì bạn reset mật khẩu
      2. Trạng thái database của bạn như thế nào
      systemctl status mysql
      df -ah

      1. TRI LE 19 comment

        1. Mình reset mật khẩu các phần khác thì dc đến phpmyadmin thì báo lỗi Connect failed. Mà không hiểu tại sao? Nhờ bạn hướng dẫn tỉ mỉ giúp.
        2. Trạng thái database mình không rõ là làm sao biết?
        Trong vài trang web thì có 1 trang là còn hoạt động bình thường ( chung 1 server )

      2. TRI LE 19 comment

        Mình cũng muốn reset lại mật khẩu để vào phpmyadmin mà không biết chỗ nào?
        Bạn nói rõ chút dc không?

        1. Việt Phương Moderator

          PHPMyAdmin chạy qua MySQL nên MySQL chạy thì PHPMYADmin mới truy cập được nhé
          Bạn kiểm tra như mình bảo chưa?

      3. TRI LE 19 comment

        xem trạng thái database như sau:
        Bạn có thể vui lòng hướng dẫn cụ thể giúp. Rất cảm ơn bạn.
        [root@vultr home]# df -ah
        Filesystem Size Used Avail Use% Mounted on
        /dev/vda1 25G 4.7G 19G 20% /
        proc 0 0 0 – /proc
        sysfs 0 0 0 – /sys
        devpts 0 0 0 – /dev/pts
        tmpfs 498M 0 498M 0% /dev/shm
        none 0 0 0 – /proc/sys/fs/binfmt_misc

          1. TRI LE 19 comment

            Vậy bây giờ mình làm gì để khắc phục lỗi database này.
            Trên server có vài trang web, mà chỉ có 1 trang web thì hoặt động. Vậy mình bị lỗi gì và fix như thế nào bạn ah?
            Cảm ơn bạn quan tâm.

  4. Manh Doan 21 comment

    Bạn ơi cho mình hỏi, mình muốn down file zip backup trên vps thì dùng lệnh nào nhỉ:
    file có tên: VPS-2017-08-02_11-09.zip

    1. Việt Phương Moderator

      Ý bạn là tải về VPS hay tải từ VPS về máy
      1. Tải về VPS: wget
      2. Tải từ VPS về máy : Không có câu lệnh bạn à. Bạn có thể dùng sFTP để down về (Bitvise, FileZilla). Dùng Rclone để up lên Cloud hoặc Thiết lập website thì chỉ cần đặt vào thư mục gốc của web thì down trực tiếp qua domain

  5. Chan Nguyễn 16 comment

    Cho em hỏi chút, ví dụ em vừa cd vào thư mục public_html của code, sau đó
    em dùng câu lệnh zip thư mục như này:
    zip -r codes.zip cd /home/laptopchinh/domains/tendomain.com.vn/public_html/
    nhưng khi zip lại xong mở code ra thì cái thư mục nó nằm mãi bên trong cùng như sau: home/laptopchinh/,,,, public_html/
    Bác cho em hỏi dùng lệnh nào để chỉ zip mỗi thư mục : public_html mà khi mở tra là chỉ có thư mục : public_html này thôi, ?

    1. Việt Phương Moderator

      Bạn chỉ cần ở đúng thư mục mẹ và zip thư mục con thôi. Ví dụ, Bạn đang làm việc tại thư mục tendomain.com.vn nhé: # cd /home/laptopchinh/domains/tendomain.com.vn/
      1. Muốn zip mỗi thư mục public_html: # zip -r test.zip public_html/
      2. Zip tất cả (zip sâu như thế nào tùy bạn định): # zip -r test2.zip home/laptopchinh/domains/tendomain.com.vn/public_html/
      Trong bài viết này mình có đề cập các phương pháp nén, bạn tham khảo : Nén và Giải nén file Tar, Gzip và Zip

  6. thanh 7 comment

    Cho em hỏi chút ạ. Câu lệnh( hay tổ hợp phím ) để save trong ssh là gì vậy ạ. Ví dụ em sửa 1 file như port của ssh xong em muốn lưu lại thì làm như thế nào ạ. Các file khác cũng vậy ạ. Em cảm ơn

  7. dũng 119 comment

    mình bị lỗi :
    MySQL server has gone away
    khi import csdl lớn bằng câu lệnh thông qua ssh
    khắc phục như nào bác luân trần ơi

    1. Luân Trần Admin

      Bạn start lại MySQL, thử import bằng tool chuyên dụng như BigDump thử coi?

  8. vinamax 1 comment

    Thực sự em đang muốn học sử dụng vps nhưng hiện tại em đang ở con số 0, các bác cho em hỏi nếu muốn sử dụng được vps thì cần phải bắt đầu từ đâu ạ, cám ơn mọi người nhiều

      1. Việt Nguyễn 9 comment

        Anh luận add nick skype em hỏi xíu được ko : skype em : qviet.sky

  9. Việt Nguyễn 9 comment

    Anh Luân cho hỏi để bật cái “magic_quotes_gpc:” phải là sao, đang cài cái site GAG bản 6.6
    em dùng vpssim. em thêm mã “php_flag magic_quotes_gpc On” vào htaccess mà vẫn ko được

          1. Việt Nguyễn 9 comment

            Thêm đoạn đó vào rồi cũng không được luôn anh