Báo cáo môn Hệ điều hành LinuxĐề tài: Cài đặt các môi trường hỗ trợ lập trình lập trình web, javaI.Cài đặt môi trường lập trình web1.Cài đặt Visual Studio Code VS Code trên Ubuntu -Mở Te
Trang 1Báo cáo môn Hệ điều hành Linux
Đề tài: Cài đặt các môi trường hỗ trợ lập trình (lập trình web, java) Thành viên:
Bùi Hiếu Hoàn
Trần Tuấn Đạt
Đỗ Thị Diễm
Lương Thu Hà
I.Cài đặt môi trường lập trình web
1.Cài đặt Visual Studio Code (VS Code) trên Ubuntu
-Mở Terminal: Ctrl Alt T
-Cài đặt gói wget:
+sudo apt-get install wget
-Sử dụng wget để tải gói cài đặt VS Code từ trang web chính thức của Microsoft:
+wget -O vscode.deb https://go.microsoft.com/fwlink/?LinkID=760868
=> Lệnh trên sẽ tải gói deb của VS Code và lưu nó vào tệp vscode.deb
-Cài đặt VS Code bằng lệnh:
+sudo dpkg -i vscode.deb
-Khởi động Visual Studio Code bằng lệnh:
+ code
-Kết quả:
Trang 22.Cài đặt môi trường NodeJS và npm trên ubuntu
-Mở Terminal: Ctrl Alt T
-Cài đặt Node.js và npm bằng lệnh:
+sudo apt update
+sudo apt install nodejs npm
-Update lên phiên bản nodejs mới nhất:
+sudo npm install -g n
+sudo n lts
-Kiểm tra phiên bản Node.js và npm để xem đã cài đặt thành công hay chưa: +node -v
+npm -v
-Kết quả:
Trang 3Tạo 1 project trên ubuntu bằng lệnh npx create-react-app weather-app Kết quả khi khởi chạy bằng lệnh npm start
Test 1 project bất kì bằng npm start
Trang 4II.Cài đặt môi trường lập trình java
1 Cài đặt OpenJDK cho ubuntu -sudo apt update
-sudo apt install openjdk-8-jdk -Kiểm tra lại phiên bản openjdk
Trang 52.Thiết lập biến môi trường JAVA_HOME
-Xác định vị trí cài đặt OpenJDK 8:
sudo update-alternatives config java
=> Lúc này trên terminal sẽ hiển thị đường dẫn /usr/lib/jvm/java-8-openjdk-amd64
-Thiết lập biến môi trường JAVA_HOME:
+Mở tệp bashrc để thêm biến môi trường: nano ~/.bashrc
+Thêm dòng lệnh sau vào tệp để điều chỉnh đường dẫn tới vị trí cài đặt OpenJDK 8: export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 + Ctrl O để lưu, sau đó Enter, và Ctrl X để thoát
Trang 6-Làm mới biến môi trường: source ~/.bashrc
-Kiểm tra biến môi trường:
echo $JAVA_HOME
-JAVA_HOME sau khi được cập nhật
Trang 73.Đưa Java vào Visual Studio Code và khởi chạy 1 project bất kì -Download Java Extension Pack
Trang 8-Bắt đầu tạo 1 project java đầu tiên:
-Chạy thử 1 project java bất kì
Trang 9III Cài đặt môi trường lập trình PHP
1.Cài đặt XAMPP
-Tải file xampp cho linux tại https://www.apachefriends.org/ -Run xampp install :
+chmod 755 xampp-linux-x64-8.2.4-0-installer.run +./xampp-linux-x64-8.2.4-0-installer.run
-Run xampp
+sudo /opt/lampp/lampp start
2.Tạo và chạy project đầu tiên
-Truy cập folder htdocs với quyền admin:
+sudo chmod -R 755 /opt/lamp/htdocs
Trang 10-Tạo project đầu tiên
+cd /opt/lampp/htdocs
+sudo touch index.php
+sudo chown username:username index.php +ls
+code index.php
VD viết chương trình giải phương trình bậc 2
Trang 11Sau khi gõ code xong thì truy cập vào http://localhost/index.php để chạy chương trình
Kết quả
Trang 12Câu hỏi: Ai là người dùng, ai là người thu lợi để duy trì cho việc phát hành các distribution? Đặc tả tính khác biệt của hệ điều hành
Người dùng là người sử dụng hệ điều hành để thực hiện các tác vụ và hoạt động trên máy tính Họ tận dụng các tính năng và ứng dụng của hệ điều hành để đáp ứng nhu cầu cá nhân hoặc công việc
Người thu lợi để duy trì việc phát hành các distribution của hệ điều hành có thể
là các tổ chức hoặc cá nhân phát triển và hỗ trợ hệ điều hành Các tổ chức như các công ty công nghệ, cộng đồng mã nguồn mở, hoặc các nhà sản xuất phần cứng có thể đóng vai trò quan trọng trong việc duy trì và phát hành các phiên bản hệ điều hành
Tính khác biệt của hệ điều hành có thể bao gồm các yếu tố như giao diện người dùng, cách thức quản lý tài nguyên, tính bảo mật, khả năng tương thích với phần cứng và phần mềm khác, cũng như các tính năng và công nghệ độc đáo mà
hệ điều hành cung cấp Mỗi hệ điều hành có đặc điểm riêng, và sự khác biệt này
có thể đáp ứng nhu cầu và ưu tiên của người dùng khác nhau
Bảng so sánh về lượng người sử dụng các hệ điều hành (đến tháng 6 năm 2022)
Trang 131 vài so sánh giữa ubuntu và windows
Trang 14Ưu điểm của hệ điều hành Ubuntu:
- Miễn phí và mã nguồn mở: Ubuntu là một hệ điều hành miễn phí và có mã nguồn mở, cho phép người dùng tùy chỉnh và phát triển theo nhu cầu của mình
- Stabilitas và bảo mật: Ubuntu được thiết kế để đảm bảo tính ổn định và bảo mật cao Các bản vá lỗi và cập nhật được phát hành thường xuyên để bảo vệ hệ thống khỏi các lỗ hổng bảo mật
Trang 15- Hỗ trợ cộng đồng mạnh mẽ: Ubuntu có một cộng đồng người dùng và nhà phát triển rộng lớn, sẵn sàng giúp đỡ và chia sẻ kiến thức với nhau thông qua các diễn đàn và nguồn tài liệu trực tuyến
- Giao diện người dùng thân thiện: Ubuntu có giao diện người dùng đơn giản và thân thiện, dễ sử dụng cho cả người mới bắt đầu và người dùng kỹ thuật
- Chu kỳ phát hành đều đặn: Ubuntu thường có các phiên bản LTS (Long-Term Support) và phiên bản thường xuyên Các phiên bản LTS nhận được hỗ trợ bảo mật trong thời gian dài (ví dụ: 5 năm hoặc 10 năm), đảm bảo rằng người dùng có thể cập nhật và bảo mật hệ thống của họ một cách đều đặn
- Quản lý gói APT: Hệ thống quản lý gói Advanced Package Tool (APT) của Ubuntu giúp người dùng cài đặt, cập nhật và gỡ bỏ phần mềm dễ dàng APT đảm bảo rằng phần mềm được cài đặt từ kho chính thức và được kiểm tra chính thức
- AppArmor: Ubuntu sử dụng AppArmor, một hệ thống kiểm soát truy cập dựa trên quyền để hạn chế quyền truy cập của ứng dụng và dịch vụ Điều này giúp ngăn chặn và giới hạn các lỗ hổng bảo mật tiềm ẩn
- Hệ điều hành ubuntu được ưa chuộng bởi các lập trình viên vì:
+ Terminal vô cùng tiện lợi cho các lập trình viên
+ Ví dụ: nếu muốn cài gcc (GNU Compiler Collection." là một bộ biên dịch
mã nguồn mở và công cụ phát triển, được sử dụng rộng rãi để biên dịch nhiều ngôn ngữ lập trình) ta chỉ cần 1 dòng lệnh, cài makefile cần thêm 1 dòng nữa, muốn nén file cũng chỉ cần 1 dòng, tương tự để cài python hay các ngôn ngữ khác hoặc tạo các project khác, ta chỉ cần biết về tập lệnh "apt"
+ Nếu sử dụng thành thạo giao diện dòng lệnh của terminal thì công việc dev
sẽ rất nhanh
Nhược điểm của hệ điều hành Ubuntu:
Trang 161 Hỗ trợ phần cứng hạn chế: Mặc dù đã có nhiều cải tiến, nhưng Ubuntu vẫn có thể gặp khó khăn trong việc tương thích với một số phần cứng đặc biệt, đặc biệt
là các thiết bị mới nhất trên thị trường
2 Ứng dụng phần mềm hạn chế: Một số ứng dụng phần mềm chuyên dụng hoặc phổ biến trên hệ điều hành khác có thể không có sẵn hoặc hỗ trợ tốt trên Ubuntu Tuy nhiên, có nhiều phần mềm thay thế và các giải pháp tương đương
có sẵn trên Ubuntu
3 Khả năng tùy chỉnh phức tạp: Mặc dù Ubuntu có khả năng tùy chỉnh cao, nhưng việc cấu hình và tùy chỉnh hệ thống có thể phức tạp đối với người dùng không có kỹ năng kỹ thuật
4 Phải mất kha khá thời gian để làm quen với giao diện dòng lệnh terminal (khoảng vài tuần)