Thứ Sáu, 28 tháng 7, 2023

Cách sử dụng lệnh Ln để tạo Symbolic Links trên Linux

Trong bài này mình sẽ hướng dẫn cách sử dụng lệnh Ln trong Linux để tạo symbolic link.

Symbolic link hay còn gọi là symlink hoặc soft 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 Symlink thì ta sẽ sử dụng lệnh Ln trên Linux, cách thực hiện thế nào thì chúng ta cùng tìm hiểu ngay nhé.

Mục lục

  • 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

1. Các loại link trên Linux

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

Bài viết này được đăng tại [free tuts .net]

  • 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.

2. Cách sử dụng lệnh Ln để tạo Symbolic Links

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:

1
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

Để 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:

1
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.

1
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:

1
ls -l my_link.txt

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

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

Tạo một Symlink trỏ đến thư mục

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:

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

3. Lỗi tạo symlink đã tồn tại trong Linux

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ụ:

1
ln -s my_file.txt my_link.txt

Kết quả:

1
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).

1
ln -sf my_file.txt my_link.txt

4. Xóa symlink trên Linux

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

unlink
1
unlink symlink_to_remove
rm
1
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é.

Như vậy là mình đã hướng dẫn xong cách sử dụng lệnh ln trên Linux để tạo Symbolic link, đây là cách tạo liên kết ảo cho một file hoặc thư mục bất kì trên Linux. Chúc bạn thành công!
=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master