Tạo link trong linux

Nội dung

  • 1. Các loại link trên Linux
  • 2. Cách sử dụng lệnh Ln để tạo Symbolic Links
    • Tạo một Symlink trỏ đến một file
    • Tạo một Symlink trỏ đến thư mục
  • 3. Lỗi tạo symlink đã tồn tại trong Linux
  • 4. Xóa symlink trên Linux

Hướng dẫn chi tiết cách sử dụng lệnh Ln trong Linux để tạo Symbolic Links (symlink hoặc soft link) cho bạn đọc tham khảo.

Symbolic link là một loại file đặc biệt dùng để khai báo liên kết giữa các file với nhau. Khi truy cập vào link A thì nó se tự gọi đến file B nếu như bạn tạo một sysmlink từ A sang B.

Tạo link trong linux

Trên Linux, chúng ta có hai loại links như sau:

  • Hard links: Bạn có thể hiểu hard link là một cái tên mới bổ sung cho một file nào đó. Bạn có thể tạo một hoặc nhiều hard link cho một file, và không thể tạo cho các file nằm trên các phân vùng khác nhau.
  • Soft links: Nó giống như là shortcut trên Windows vậy đó. Khi bạn mở một biểu tượng shortcut trên Windows thì nó sẽ tự liên kết tới phần mềm và chạy. Với cách này thì bạn có thể liên kết đến các file nằm nhiều phân vùng khác nhau.

ln là một lệnh trên Linux, được dùng để tạo liên kết giữa các file. Theo mặc định thì lệnh ln tạo liên kết cứng (hard link). Để tạo một symbolic link (soft link) thì hãy sử dụng tùy chọn -s (–symbolic).

Cú pháp lệnh ln để tạo symbolic link như sau:

ln -s [OPTIONS] FILE LINK

Trong đó:

  • Nếu cả hai tham số FILE và LINK đều được cung cấp trong lệnh trên thì Linux sẽ tạo một symlink có tên là LINK và trỏ tới FILE.
  • Nếu chỉ cung cấp cho tham số FILE hoặc tham số LINK là dấu chấm thì Linux sẽ tạo một symlink có tên là thư mục hiện tại và trỏ đến file.

Khi thực thi lệnh thành công thì Linux sẽ trả kết quả về là 0.

Để tạo một symlink trỏ đến một file thì bạn hãy mở Terminal lên, sau đó nhập vào lênh có cấu trúc như sau:

ln -s source_file symbolic_link

Thay đổi tham số source_file thành tên của file mà bạn muốn tạo symlink, và symbolic_link chính là tên của nó.

Tham số symbolic_link là tùy chọn, tức là bạn có thể nhập hoặc không. Nếu bạn không nhập thì lệnh ln sẽ tạo một symlink có tên như mục hiện tại bạn đang đứng.

Trong ví dụ sau mình đã tạo một liên kết có tên là my_link.txt đến một file có tên my_file.txt.

ln -s my_file.txt my_link.txt

Để xác minh rằng symlink đã được tạo thành công thì hãy sử dụng lệnh ls:

ls -l my_link.txt

Kết quả trả về sẽ có dạng như sau:

lrwxrwxrwx 1 linuxize users 4 Nov 2 23:03 my_link.txt -> my_file.txt

Lệnh để tạo một symbolic link trỏ đến một thư mục cũng giống như lệnh trỏ đến file. Tham số đầu tiên chính là thư mục và tham số thứ hai chính là tên của symlink.

Ví dụ: Nếu bạn muốn tạo một symlink từ thư mục /mnt/my_drive/movies đến thư mục ~/my_movies, bạn sẽ chạy lệnh sau:

ln -s /mnt/my_drive/movies ~/my_movies

Nếu bạn tạo một symlink đã tồn tại thì lập tức sẽ nhận được một thông báo lỗi. Ví dụ:

ln -s my_file.txt my_link.txt

Kết quả:

ln: failed to create symbolic link 'my_link.txt': File exists

Để giải quyết thì ta chỉ việc khai báo ghi đè lên link đã tồn tại đó, bằng cách thêm vào tham số -f (–force).

ln -sf my_file.txt my_link.txt

Để xóa symlink trên Linux thì ta sử dụng lệnh unlink hoặc rm.

unlink

unlink symlink_to_remove

rm

rm symlink_to_remove

Nếu bạn di chuyển file nguồn đến một vị tri khác thì symlink đó sẽ bị hỏng, lúc này bạn cần sử dụng hai lệnh trên để xóa nhé.

Chúc bạn sử dụng lệnh Ln trong Linux để tạo Symbolic Links thành công!

Nguồn: freetuts

Tạo link trong linux

Điều hướng bài viết