Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
how different are unix / GNUlinux / BSD / Solaris / other ?
The main difference is in hardware support -- GNU/Linux is far more likely to provide out-of-the-box support for your hardware without requiring further work & set up.
The BSDs tend to be more UNIX-like in their nature, which is to say that most of the configuration is performed by editing simple text files and that lots of small dedicated tools/programs are favoured over large, monolithic software with multiple functions and GUIs. Of course this is just a broad generalisation as Arch & Slackware both favour text-file based configuration and PC-BSD does a nice range of GUI-based "helper" software.
I tried Solaris once and it wouldn't boot on any of my hardware so I don't know about that.
in other words, become a basement dwelling troglodyte who never showers or gets laid and grow a beard/hair like rms?
how do I code and compile my own crypto programs and network transfer protocols
how do I do endpoint security (e.g. SE Linux)
how do I do I pwn networks (e.g. Kali Linux)
how do I do package management (e.g. Arch Linux)
how do I analyze packets (e.g. Wireshark)
how do I do local version control (e.g. git)
how do I port software
how do I reverse engineer software from a binary
how do I code and compile in general in various languages
how do I detect, collect evidence of, and expose the actions of large tech corporations that steal users' data
fk it, I need another college degree
Making broad stereotypes about people will not make you friends.
Neither will implying that you intend to learn cracking. Kali Linux? "Reverse engineer" software from binary? What, do you think you're going to crack Windows and leak their source code? That would be a waste of time, it isn't worth the bother. Unless you're planning on getting a legal job that requires those tools, it's a dumb idea. Besides, why does that even interest you? Cracking doesn't take any creativity. I can understand wanting to know how it works, but there are so many other, more constructive things you could be learning that are more interesting.
However, I WILL help you, give you a place to start, on the off chance that you're not just a troll (albeit a very amusing one).
First off, just in case, I'll clear something up. Don't try to use Windows. I know you're on a Linux forum and it would be reasonably safe to assume therefore that you are using Linux, but just in case you aren't, you should download Virtualbox-- https://www.virtualbox.org/ --and get yourself a Debian or at least Lubuntu torrent, and make a VM to work with Linux. Experiment with a few distros and then pick one to install on your computer, possibly as a dual boot if you rely on Windows programs for some tasks. If you're already using Linux, you can ignore this bit of instruction.
One more thing--a college degree won't necessarily make you a good programmer. You have to cultivate certain qualities and abilities that you can only really teach yourself. Patience. Problem-solving. Logical thinking. The ability to sift through technical manuals. The ability to work with people. College might help with these things, but it also might not depending on how you approach it, and those skills are necessary.
yeah uhhhh.... so I'd have to go back to college and then go for a CS masters? yeah right. I think I'd rather die. I think CS is interesting in practice but the classes are sooooo hard and booring
You can call yourself any title you wish, but I've always found that wanting a particular title is less fulfilling than actually acquiring and using the knowledge that was required to merit that level of title. Which is to say that once you attain enough knowledge of a certain thing to consider yourself a wizard of the topic, you likely will not care that anyone employs that title because you'll be busy working or experimenting on your own projects.
As far as a lot of this stuff:
Quote:
Originally Posted by dragoraexpirafuego
in other words, become a basement dwelling troglodyte who never showers or gets laid and grow a beard/hair like rms?
how do I code and compile my own crypto programs and network transfer protocols
how do I do endpoint security (e.g. SE Linux)
how do I do I pwn networks (e.g. Kali Linux)
how do I do package management (e.g. Arch Linux)
how do I analyze packets (e.g. Wireshark)
how do I do local version control (e.g. git)
how do I port software
how do I reverse engineer software from a binary
how do I code and compile in general in various languages
how do I detect, collect evidence of, and expose the actions of large tech corporations that steal users' data
fk it, I need another college degree
Backwards to forwards:
If you're going to use profanity, even implied, that will just get posts reported and banned
Can't help you with exposing large corporations, I have no helpful suggestions
Coding in C or C++ is very easy to do with Linux. Coding in Objective-C or Swift is very easy on a MAC. There are other languages, and I feel that C or one of the many forms of it is a good place to start. The Programming forum has a sticky note on C/C++ tutorials and I feel it helps starters
Reverse engineering from binary is not always possible, but you'd need to learn assembly language for the particular microprocessor which is running the code and then trace the logic flow of the program exhaustively. It's a lot of work for potentially little or no return, but technically possible.
Porting software, or rather the subject of writing portable software is something that most programmers are exposed to when they proceed through tutorials and the learning process.
You can do version control using rcs or set up your own git repository, if you search the web with "how to set up a local git repository" or "using rcs" you'll find many helpful links. Personally I'd start with rcs merely because it is simpler in my personal opinion
You mention wireshark, so it sounds as if you can capture or view packets. Analyzing them merely means that you take the time to look at the data and decode what it is saying. All Ethernet and WIFI traffic follows a certain set of format rules and you can usually determine the packet type by looking at the data. Wireshark itself will help by decoding frames it knows about, and it knows about a lot of them. Once you reach encrypted frames, which seems to be a subject you're interested in, then you'll have to decrypt on your own, either via a brute force method, some other means you're able to use effectively - none that I'm aware of, or you'll have to know the encryption key
I don't know pwn networks, sorry
Endpoint security, I don't know too much beyond physical, which is to say that denying access to a system is the ultimate security, the logical stuff would be some forms of data encryption, I've seen that you may not be too trusting of that, so that's about the limit of any suggestions I could offer
Coding and compiling your own encryption programs and network transfer protocols? Well that would be building on your knowledge of programming in general, once you've learned to program, you would need to select a language, be that direct assembly, C, C++, or any of the other varieties of languages and scripts, that's really your preference how far you wish to go. As far as network transfer protocols, you should learn the ISO-OSI model and determine whether or not you wish to do custom protocols from layer 2 on up so that you can fully control all aspects of the communications. For that matter, you're certainly free to re-define layer 1 and design your own physical layer to replace that technology. You're free to entirely deviate from the OSI model and not employ the use of Ethernet at all, not use the MAC layer, and have frames which do not follow the 802 series of standards, therefore be entirely different from that form of transmission. Based on posts you've made it would seem that you'd be more interested in not mimicking any existing technology because it would not provide the data protection and privacy which you seem to be seeking. You may want to take a stab at designing your own custom computer using entirely different technologies so as to avoid the NSA or other agencies from being knowledgeable enough to be able to decipher your systems.
And finally about becoming a person not much integrated with society, that's a personal choice, no one says you have too, similarly that no one says that the title of wizard is an adamant requirement
Now based on your posts thus far you have a very busy day in discovering LQ in your basement. The question at this point is whether you wish to take some of the learning steps and have some well intentioned assistance along the way, or if you wish to be classified as a forum troll where the moderators eventually remove many of your posts and lock threads you start. So have a juice box and some goldfish and sit down to think over what your next steps might be.
To be honest, I just tried Ubuntu and went from there. My first posts here were about moving to Linux and some very friendly guy said the less you know about Windows the better and now, seven years or so later, I've not physically grown but I'm significantly more grown up with a university course ahead of me in computer science and I'm happy. Linux is not a quick-click to become some sort of mythical character who will be feared throughout the land. Just pick an OS and go for it.
It's almost as if, though, you've signed up to a forum somewhere and they've told you that you need to use Linux to be a hacker. This forum won't help you with that, nor is it true.
I want to learn how to linux.
How do I even linux.
Please help me linux.
I want to linux harder.
-future root of the entire universe
Try or learn how to do everything you can in linux. If this is your goal to be a wizard in linux you'll have to use linux more and windows less. good luck
I love how half of these responses are helpful/snarky and half of them are wizard jokes.
"Well did you get the letter when you were 11? No? Sorry, you're a muggle."
"Hey, I know where to buy a hat with stars on!"
"Do a blood sacrifice, that's the way!"
"Got a wand yet?"
One more thing--a college degree won't necessarily make you a good programmer. You have to cultivate certain qualities and abilities that you can only really teach yourself. Patience. Problem-solving. Logical thinking. The ability to sift through technical manuals. The ability to work with people. College might help with these things, but it also might not depending on how you approach it, and those skills are necessary.
I agree that the qualities within the individual as well as their initiative and what they do with their skills are more important than formal credentials.
However, at least in the US, and in the US based workforce, there are some "realities." Probably in other countries as well, but I have zero experience there.
When I grew up, it was a mixture where people could gain expertise in life and just in the workplace and be just as well off as a college graduate, in fact many times they could and would be better off.
This changed probably just after I entered the workforce as an Engineer.
One of my colleagues decided to go for their MS, this was also after a few years having worked and started raising children. It took a while being part time and took some strong investment in their effort. I'm sure it's benefited them in knowledge and career, we actually lost touch over time. The thing that caught me about this whole topic was their statements about it. They were doing this to enhance their career, and also for knowledge. That's all fine, and not that any part of their efforts was ever incorrect.
A further point they made was that a college degree means little, but it does demonstrate that you are capable of "learning", and capable of accomplishing something difficult where you need to put in a great personal investment.
Their opinion was that where it does matter are times when companies look at candidates or an existing workforce and need to make business decisions.
They made their choice, this impacted their life for greater than 5 years and since many of us had migrated from one company to another, their reimbursement benefits for classes had changed for the worse, so I did inquire if they felt that this was all really worth it. They acknowledged my query, some reality was that they had invested near 3/4 of the degree fulfillment, so discarding it now would be foolhardy, and further acknowledged that what they were studying did not necessarily make them any smarter than me. But they long ago had started the process and naturally wanted to complete it. I didn't disagree, and was wondering if my one or two failed attempts at starting a masters should have been more energetic on my part.
Somewhere in the flow of all that we had a senior test person who had no degree at all, no peers knew that nor cared until the company hit hard times and that person was unceremoniously laid off in the first round. Statements made by their former peers were that: "The company really screwed them over! They have no degree at all, and now they're in a really tough spot!" That's where we all learned they had no degree, they kept in touch and were searching for jobs and their friends were offering suggestions. At some point they kind of, had to or chose to, admit that there were certain opportunities they could not consider exploring due to the degree requirements and the fact that they didn't have one.
This had been one of those natural cases where it just "happened", they started in manufacturing, performed very well there, got offered to move up, and once again performed very well. Eventually they had been promoted to the test team, made to be a salaried person, and eventually became a Senior Engineer.
They had plenty of knowledge and as far as any peers were concerned, we'd have liked them to be on our test team, or even leading it. The problems were that hiring companies would see "no degree", and "you got laid off", even though they're not supposed to be biased, they clearly wonder what exact reasoning led to that person being laid off.
Not intending to be unkind, my peer who was still working at their MS, reminded me privately about the college degree and corporate business decisions, as well as noted how this filtered more even towards corporate hiring decisions.
Sorry. Very LONG way to say, "A degree doesn't guarantee anything. It clearly cannot hurt you. But also it clearly can help you, and so can the skills which you develop when you obtain that degree."
Distribution: Debian, Red Hat, Slackware, Fedora, Ubuntu
Posts: 13,602
Rep:
@dragoraexpirafuego, please note that the behavior you've exhibited (post #13 and elsewhere) aren't acceptable here at LQ. You may want to re-read the LQ Rules again and then adjust accordingly. If you have any questions, feel free to contact me. Thanks.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.