티스토리 뷰
제가 2000년도 초반에 리눅스 운영체제를 처음 접하고 간단한 명령어 사용법부터 배울 때
가장 어렵고 이해가 되지 않던 점이 리눅스을 왜 배우고 어디에 쓰느냐? 였습니다.
위의 궁금점이 해결되지 않은 상태에서 사전식으로 명령어의 작동 여부만
배우다보니 금새 리눅스 운영체제에 흥미를 잃을 수 밖에 없었는데요.
하지만 정작 IT현업에서 일하면서 경험해보니 리눅스 운영체제의 활용도는 굉장히 보편적이고 강력했습니다.
전 당시에 지금의 인공지능 AI 라는 메가 트렌드에 뒤지지 않던 분산저장 및 처리를 기반으로한 빅데이터 구현이 가능한
Hadoop 이라는 기술을 도입하는 프로젝트를 담당했는데
당시 꽤나 파격적이고 시대를 리딩해가는 기술이 리눅스 운영체제 베이스로 만들어져 있고
오픈소스로 이를 이용하고 수정하고 각자의 환경에 맞게 고쳐가며 도입해가는 것을 보고
리눅스 운영체제의 진가를 느낄 수 밖에 없었습니다.
국내에서는 일반 사용자가 당시 active X, MS office 류 등으로 대표되는 윈도우 종속 환경에서 벗어난
리눅스 환경을 이용하는 빈도는 굉장히 드물었지만
IT 현업에서 리눅스 운영체제를 사용하는 것은 매우 경제적이고(공짜),
최신의 기술을 도입할 수 있는 플랫폼을 갖추고 있다는 것을 의미했습니다.
그리고 쓰다보니깐 결국 윈도우나 리눅스나 운영체제(OS) 이기에는 매한가지여서
용도와 사용법만 정확히 알면 둘의 목적과 기능은 대동소이하게 느껴지더군요.
2023년 현재는 맥북과 아마존 AWS, 깃허브, 도커, WSL(Windows Subsystem Linux) 등등
개발 환경이 윈도우와 리눅스 플랫폼을 넘나 들고
개발자도 서버운영자는 아니지만 리눅스 커맨드 정도는 알아야
개발환경 구축부터 프로젝트 관리까지 가능한 시대가 되어버렸습니다.
클라우드 환경이 보편화 되면서
서버 관리자, 네트워크 관리자의 영역이 일반 개발자가 다룰 수 있어야하는 영역으로까지 섞이는 모양새입니다.
이제 리눅스는 서버관리자 뿐만아니라 개발자라면 기본적으로 갖춰야 할 소양 중 하나라고 느껴집니다.
단순하게 사전식으로 리눅스 명령어를 나열하고 익히기 보단
리눅스는 어떤점이 장점이고 어떤 특징이 있는지가 잘 정리된 아래 아티클을 꼭 한번 읽어보시길 바랍니다.
영어로 되어 있긴 한데 사전은 참조하되 번역기는 돌리지 마시고
이 정도는 도전해보길 바랍니다.
해당 글은 간결한 문장과 IT 용어에 대한 적절한 설명이 잘 제시되어 있어
제가 굳이 원문으로 소개하는 수업자료의 일부입니다.
번역기에 의존하지 말고 스스로 완독하면
A4 5,6장 분량의 영어 문서도 읽을 수 있다는 성취감과 자신감을 느낄 수 있을 것입니다.
What Is Linux?
From smartphones to cars, supercomputers and home appliances, home desktops to enterprise servers, the Linux operating system is everywhere.
Linux has been around since the mid-1990s and has since reached a user-base that spans the globe. Linux is actually everywhere: It’s in your phones, your thermostats, in your cars, refrigerators, Roku devices, and televisions. It also runs most of the Internet, all of the world’s top 500 supercomputers, and the world’s stock exchanges.
But besides being the platform of choice to run desktops, servers, and embedded systems across the globe, Linux is one of the most reliable, secure and worry-free operating systems available.
Here is all the information you need to get up to speed on the Linux platform.
What is Linux?
Just like Windows, iOS, and Mac OS, Linux is an operating system. In fact, one of the most popular platforms on the planet, Android, is powered by the Linux operating system. An operating system is software that manages all of the hardware resources associated with your desktop or laptop. To put it simply, the operating system manages the communication between your software and your hardware. Without the operating system (OS), the software wouldn’t function.
The Linux operating system comprises several different pieces:
- Bootloader – The software that manages the boot process of your computer. For most users, this will simply be a splash screen that pops up and eventually goes away to boot into the operating system.
- Kernel – This is the one piece of the whole that is actually called ‘Linux’. The kernel is the core of the system and manages the CPU, memory, and peripheral devices. The kernel is the lowest level of the OS.
- Init system – This is a sub-system that bootstraps the user space and is charged with controlling daemons. One of the most widely used init systems is systemd, which also happens to be one of the most controversial. It is the init system that manages the boot process, once the initial booting is handed over from the bootloader (i.e., GRUB or GRand Unified Bootloader).
- Daemons – These are background services (printing, sound, scheduling, etc.) that either start up during boot or after you log into the desktop.
- Graphical server – This is the sub-system that displays the graphics on your monitor. It is commonly referred to as the X server or just X.
- Desktop environment – This is the piece that the users actually interact with. There are many desktop environments to choose from (GNOME, Cinnamon, Mate, Pantheon, Enlightenment, KDE, Xfce, etc.). Each desktop environment includes built-in applications (such as file managers, configuration tools, web browsers, and games).
- Applications – Desktop environments do not offer the full array of apps. Just like Windows and macOS, Linux offers thousands upon thousands of high-quality software titles that can be easily found and installed. Most modern Linux distributions (more on this below) include App Store-like tools that centralize and simplify application installation. For example, Ubuntu Linux has the Ubuntu Software Center (a rebrand of GNOME Software) which allows you to quickly search among the thousands of apps and install them from one centralized location.
Why use Linux?
This is the one question that most people ask. Why bother learning a completely different computing environment, when the operating system that ships with most desktops, laptops, and servers works just fine?
To answer that question, I would pose another question. Does that operating system you’re currently using really work “just fine”? Or, do you find yourself battling obstacles like viruses, malware, slow downs, crashes, costly repairs, and licensing fees?
If you struggle with the above, Linux might be the perfect platform for you. Linux has evolved into one of the most reliable computer ecosystems on the planet. Combine that reliability with zero cost of entry and you have the perfect solution for a desktop platform.
That’s right, zero cost of entry… as in free. You can install Linux on as many computers as you like without paying a cent for software or server licensing.
Let’s take a look at the cost of a Linux server in comparison to Windows Server 2016. The price of the Windows Server 2016 Standard edition is $882.00 USD (purchased directly from Microsoft). That doesn’t include Client Access License (CALs) and licenses for other software you may need to run (such as a database, a web server, mail server, etc.). For example, a single user CAL, for Windows Server 2016, costs $38.00. If you need to add 10 users, for example, that’s $388.00 more dollars for server software licensing. With the Linux server, it’s all free and easy to install. In fact, installing a full-blown web server (that includes a database server), is just a few clicks or commands away (take a look at Easy LAMP Server Installation to get an idea how simple it can be).
If zero cost isn’t enough to win you over–what about having an operating system that will work, trouble free, for as long as you use it? I’ve used Linux for nearly 20 years (as both a desktop and server platform) and have not had any issues with ransomware, malware, or viruses. Linux is generally far less vulnerable to such attacks. As for server reboots, they’re only necessary if the kernel is updated. It is not out of the ordinary for a Linux server to go years without being rebooted. If you follow the regular recommended updates, stability and dependability are practically assured.
Open source
Linux is also distributed under an open source license. Open source follows these key tenets:
- The freedom to run the program, for any purpose.
- The freedom to study how the program works, and change it to make it do what you wish.
- The freedom to redistribute copies so you can help your neighbor.
- The freedom to distribute copies of your modified versions to others.
These points are crucial to understanding the community that works together to create the Linux platform. Without a doubt, Linux is an operating system that is “by the people, for the people”. These tenets are also a main factor in why many people choose Linux. It’s about freedom and freedom of use and freedom of choice.
What is a “distribution?”
Linux has a number of different versions to suit any type of user. From new users to hard-core users, you’ll find a “flavor” of Linux to match your needs. These versions are called distributions (or, in the short form, “distros”). Nearly every distribution of Linux can be downloaded for free, burned onto disk (or USB thumb drive), and installed (on as many machines as you like).
Popular Linux distributions include:
- LINUX MINT
- MANJARO
- DEBIAN
- UBUNTU
- ANTERGOS
- SOLUS
- FEDORA
- ELEMENTARY OS
- OPENSUSE
Each distribution has a different take on the desktop. Some opt for very modern user interfaces (such as GNOME and Elementary OS’s Pantheon), whereas others stick with a more traditional desktop environment (openSUSE uses KDE).
You can check out the top 100 distributions on the Distrowatch.
And don’t think the server has been left behind. For this arena, you can turn to:
- Red Hat Enterprise Linux
- Ubuntu Server
- Centos
- SUSE Enterprise Linux
Some of the above server distributions are free (such as Ubuntu Server and CentOS) and some have an associated price (such as Red Hat Enterprise Linux and SUSE Enterprise Linux). Those with an associated price also include support.
Which distribution is right for you?
Which distribution you use will depend on the answer to three simple questions:
- How skilled of a computer user are you?
- Do you prefer a modern or a standard desktop interface?
- Server or desktop?
If your computer skills are fairly basic, you’ll want to stick with a newbie-friendly distribution such as Linux Mint, Ubuntu (Figure 3), Elementary OS or Deepin. If your skill set extends into the above-average range, you could go with a distribution like Debian or Fedora. If, however, you’ve pretty much mastered the craft of computer and system administration, use a distribution like Gentoo. If you really want a challenge, you can build your very own Linux distribution, with the help of Linux From Scratch.
If you’re looking for a server-only distribution, you will also want to decide if you need a desktop interface, or if you want to do this via command-line only. The Ubuntu Server does not install a GUI interface. This means two things your server won’t be bogged down loading graphics and you’ll need to have a solid understanding of the Linux command line. However, you can install a GUI package on top of the Ubuntu Server with a single command like sudo apt-get install ubuntu-desktop. System administrators will also want to view a distribution with regards to features. Do you want a server-specific distribution that will offer you, out of the box, everything you need for your server? If so, CentOS might be the best choice. Or, do you want to take a desktop distribution and add the pieces as you need them? If so, Debian or Ubuntu Linux might serve you well.
Installing Linux
For many people, the idea of installing an operating system might seem like a very daunting task. Believe it or not, Linux offers one of the easiest installations of all operating systems. In fact, most versions of Linux offer what is called a Live distribution, which means you run the operating system from either a CD/DVD or USB flash drive without making any changes to your hard drive. You get the full functionality without having to commit to the installation. Once you’ve tried it out, and decided you wanted to use it, you simply double-click the “Install” icon and walk through the simple installation wizard.
Typically, the installation wizards walk you through the process with the following steps (We’ll illustrate the installation of Ubuntu Linux):
- Preparation: Make sure your machine meets the requirements for installation. This also may ask you if you want to install third-party software (such as plugins for MP3 playback, video codecs, and more).
- Wireless setup (if necessary): If you are using a laptop (or machine with wireless), you’ll need to connect to the network, in order to download third-party software and updates.
- Hard drive allocation (Figure 4): This step allows you to select how you want the operating system to be installed. Are you going to install Linux alongside another operating system (called “dual booting”), use the entire hard drive, upgrade an existing Linux installation, or install over an existing version of Linux.
- Location: Select your location from the map.
- Keyboard layout: Select the keyboard for your system.
- User setup: Set up your username and password.
That’s it. Once the system has completed the installation, reboot and you’re ready to go. For a more in-depth guide to installing Linux, take a look at “How to Install and Try Linux the Absolutely Easiest and Safest Way” or download the Linux Foundation’s PDF guide for Linux installation.
Installing software on Linux
Just as the operating system itself is easy to install, so too are applications. Most modern Linux distributions include what most would consider an app store. This is a centralized location where software can be searched and installed. Ubuntu Linux (and many other distributions) rely on GNOME Software, Elementary OS has the AppCenter, Deepin has the Deepin Software Center, openSUSE has their AppStore, and some distributions rely on Synaptic.
Regardless of the name, each of these tools do the same thing: a central place to search for and install Linux software. Of course, these pieces of software depend upon the presence of a GUI. For GUI-less servers, you will have to depend upon the command-line interface for installation.
Let’s look at two different tools to illustrate how easy even the command line installation can be. Our examples are for Debian-based distributions and Fedora-based distributions. The Debian-based distros will use the apt-get tool for installing software and Fedora-based distros will require the use of the yum tool. Both work very similarly. We’ll illustrate using the apt-get command. Let’s say you want to install the wget tool (which is a handy tool used to download files from the command line). To install this using apt-get, the command would like like this:
sudo apt-get install wget
The sudo command is added because you need super user privileges in order to install software. Similarly, to install the same software on a Fedora-based distribution, you would first su to the super user (literally issue the command su and enter the root password), and issue this command:
yum install wget
That’s all there is to installing software on a Linux machine. It’s not nearly as challenging as you might think. Still in doubt? Recall the Easy Lamp Server Installation from earlier. With a single command:
sudo taskel
You can install a complete LAMP (Linux Apache MySQL PHP) server on either a server or desktop distribution. It really is that easy.
More resources
If you’re looking for one of the most reliable, secure, and dependable platforms for both the desktop and the server, look no further than one of the many Linux distributions. With Linux you can assure your desktops will be free of trouble, your servers up, and your support requests minimal.
For more information to help guide you through your lifetime with Linux, check out the following resources:
- Linux.com: Everything you need to know about Linux (news, tutorials and more)
- Howtoforge: Linux tutorials
- Linux Documentation Project: How-tos, guides, and FAQs
- Linux Knowledge Base and Tutorial: Plenty of tutorials and in-depth guides
- LWN.net: Linux kernel news and more
[원본 출처] https://www.linux.com/what-is-linux/
※ 원본 글이 업데이트되면서 일부 삽화가 누락되어 예전 버전 글을 첨부함
본문에 리눅스는 멀웨어, 바이러스, 랜섬웨어에 대해 일반적으로 영향을 덜 받는다고 기술되어 있는데
이 부분에 대해서는 아래 측면에서 한번 더 생각해봐야한다.
리눅스 시스템도 악성 코드(malware), 바이러스(virus), 랜섬웨어(ransomware) 등에 영향을 받을 수 있습니다. 하지만 윈도우 운영체제와 비교하여 리눅스는 악성 코드에 취약한 특성을 가지지 않는다고 여겨집니다. 이는 여러 가지 이유로 설명됩니다:
1. 사용자 권한 관리: 리눅스는 일반적으로 사용자들이 시스템 전체에 대한 루트(root) 권한을 갖지 않습니다. 이는 악성 코드가 시스템 전체를 감염시키는 것을 어렵게 만듭니다.
2. 오픈 소스: 리눅스는 대부분 오픈 소스 소프트웨어로 이루어져 있어서 많은 사용자들이 코드를 검토하고 보안 취약점을 식별하고 수정할 수 있습니다.
3. 다양성: 다양한 리눅스 배포판이 있으며, 이들 간의 차이점으로 인해 악성 코드가 한 번에 모든 시스템을 감염시키기 어렵습니다.
4. 중앙 저장소: 대부분의 리눅스 배포판은 중앙 소프트웨어 저장소를 통해 소프트웨어를 설치하므로, 악성 코드의 유포를 어렵게 만듭니다.
5. 커뮤니티 협력: 리눅스 커뮤니티의 멤버들은 보안 취약점을 식별하고 해결하기 위해 노력하며, 이로 인해 보안 업데이트가 빠르게 제공됩니다.
하지만 리눅스도 완벽하지 않습니다. 악성 코드가 존재하며, 보안 취약점을 이용하여 시스템을 감염시키는 시도가 있을 수 있습니다. 따라서 리눅스 시스템도 보안 조치와 업데이트를 통해 최신 상태를 유지하는 것이 중요합니다.
[ powerd by chatGPT ]
'수업 노트 > 컴퓨터 기초' 카테고리의 다른 글
컴퓨터 네트워크 기초 #1 (0) | 2024.03.30 |
---|---|
wsl 사용 중 별의별 에러가 생겼을 때 조치 (0) | 2023.11.25 |
vmware network 문제 해결 방법 (0) | 2023.05.22 |
ping 과 icmp (0) | 2023.05.17 |
chatGPT가 설명하는 RSA 키 구현 원리 (0) | 2023.04.25 |
- Total
- Today
- Yesterday
- 압축파일
- 리눅스
- Bandit
- gz
- Strings
- X32
- HTTPS
- Natas
- tar
- over the wire
- solution
- BASE64
- 풀이
- grep
- tr
- Encode
- nc
- 32bit
- bz2
- find
- ssh
- java
- 리터럴
- OpenSSL
- OverTheWire
- natas7
- 웹보안공부
- SSL
- 웹보안
- Linux
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |