Good day!

At the moment, I have been learning to program in Python for a little more than half a year, and now, due to a new place of work, it has become necessary to tighten the system programming in Nixes to an adequate level. I myself understand them at a level slightly above zero, since I used to do almost everything in Windows, plus I didn’t deal with system programming directly.

Actually the question is - what can be read in this area for the initial level? First of all, the Nyxs themselves are interested in - so that the main shell commands can be laid in the head, and a bit of digging around with the tower, but not too much will be books related specifically to system programming on python.

I tried to read Nemeth, Snyder and others, but this is not exactly what is needed - it is the administration that understands it, besides it requires either initially good knowledge, or the ability to touch it all and see at least living workers. servers.

Thank you in advance!

Closed due to the fact that off-topic participants Oceinic , Regent , aleksandr barakin , Aries , BogolyubskiyAlexey Oct 15 '15 at 14:14 .

It seems that this question does not correspond to the subject of the site. Those who voted to close it indicated the following reason:

  • " Questionnaires are forbidden on Stack Overflow in Russian . To get an answer, rephrase your question so that it can be given an unambiguously correct answer." - Regent, aleksandr barakin, Aries, BogolyubskiyAlexey
If the question can be reformulated according to the rules set out in the certificate , edit it .

  • have you already installed Linux? - KoVadim
  • Yes, but in a virtual machine. Ubuntu and FreeBSD - R_cassum

3 answers 3

Personally, I studied Python by tutorial and documentation, while solving various applied problems of automating the build and testing processes. If you summarize, then any language or technology is exactly worth studying, and everyone chooses an interesting or useful area for himself.

System programs are usually written in C, his knowledge in this area is mandatory. But Python is really easy to learn various system APIs in Linux / Unix, as it provides them with direct access through the built-in os module, but you should always look into the target OS man pages (man, second section, for example man 2 open ) .

But in order to put and summarize all the information received in my head, I believe that you need to read a few good books.

By Python, I recommend Mark Lutz , better of course in the original, for he himself read in English:

On Unix, Linux:

  1. General understanding of operating systems, classic genre: Tannenbaum
  2. For beginners, it’s nice to read Graham Glass
  3. For understanding Unix philosophy, it's nice to read Eric Raymond
  4. Unix programming is well laid out in Rochind's book .

    The classic is Stevenson , the indispensable reference book of every unixoid. There is also Stevenson’s two-volume book “Network Programming” and “Multi-threaded Programming”. It is also desirable to have them on hand ... The first two books help me a lot, everything can be found on torrents

    And I also don’t remember the book "Python System Programming" ... not a bad edition

      I advise you to install some Linux at home on the virtual machine, but not out of the box, but something so cool like Slackware .

      Try further on it to pull the graphical shell on the base of the X-Window. Face the cloud of problems that will have to be solved (administered). You can also come up with other tasks: such as sharing folders from Linuha to a child’s laptop, pick up the refrigerator via wifi, download a DLNA server with output to TV — you never know. The point is that in the course of solving problems you will be harassed and it will be immediately clear what books will be needed.

      Reading books on administration, without access to the real axis, is in general a perversion.

      Update: Ubuntu will not work - there all the issues are basically already resolved, we need a pokondovee.

      • Slightly above already commented - I have already raised Ubuntu and FreeBSD, just under Virtual Box. So there is still access to the axis. Could you comment on what exactly Slackware will be better than the ones listed above for training? - R_cassum
      • Ubuntu - server, graph. the shell itself already. - R_cassum
      • > what exactly will Slackware be better than the above for learning? exactly the same, than gas-52 is better than Mercedes. It all depends on the conditions. - KoVadim
      • @Barmaley sorry, with Slackware, I only have memories from the 90s. There, the opinion about the system was very simple: "You need to drink less" (this is about the style of the maintener of this distribution). I would not advise such a miracle to a person who did not do anything to me. - alexlz
      • one
        @Barmaley, you can't be so cruel with children - skegg