LTSP server based on CentOS7

Good day, dear residents of Habr.



Inspired by the LTSP article: The Linux terminal server decided to do the same only on CentOS 7. After wandering around the Internet and finding only bits of information, as well as an old instruction for CentOS 5, I started to go through all the steps from scratch.



This article assumes that you already have configured DHCP and TFTP servers on the network.

Our CentOS 7 experimental stand was deployed in VirtualBox (please do not kick me for this, since only he was at hand).



So, let's get started ...



By entering the command



yum install ltsp-server-standalone
      
      





Bitterly discovered that the package is not in any repository. Attempts were made to change the name of the package to ltsp-server, ltsp, but all to no avail. There is no package in the repositories. OK. Good. We go to the site of the LTSP.org project and do not find it in the list of CentOS systems.



Okay, I thought. But he did not give up. Going to Google with the simplest query ltsp-server-standalone CentOS 7 and scrolling through the order of results, the awale.qc.ca repository was found , in which the package we need is present.



Rejoiced at the fact that the package was still found, we enter the command



 rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/ltsp-server-5.4.5-19.20130427.08.el6.x86_64.rpm
      
      





and get a huge list of packages that are required for the server.



At that moment, I honestly wanted to drop everything, but it became interesting: it would “fly up” or not.

OK. We look at the list of packages:



Package List
  1. bridge-utils
  2. dhcp
  3. dialog
  4. fuse
  5. fuse-devel
  6. fuse-libs
  7. ldm
  8. ldminfod
  9. lsb
  10. ltspfs
  11. mock
  12. nfs-utils
  13. perl (NetAddr :: IP)
  14. squashfs-tools
  15. tftp-server
  16. xinetd
  17. xorg-x11-xdm




Well, dear, let's get started.



 yum install bridge-utils
      
      





We see and enjoy the steady package. Then repeat



 rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/ltsp-server-5.4.5-19.20130427.08.el6.x86_64.rpm
      
      





(I already did this for myself, so as not to forget which packages you need to install), the same list - but without the first line.



 yum install dhcp dialog fuse fuse-devel (fuse-libs    )
      
      





Then he introduced yum install ldm and was saddened. The package is again missing from the repository. OK. Good. Take the package from the repository above:



 rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/ldm-2.2.11-4.el6.x86_64.rpm
      
      





And again, a bunch of dependencies which are not. Here is the list:



Dependencies
  1. libX11.so
  2. libXext.so
  3. libatk-1.0.so
  4. libcairo.so.2
  5. libfontconfig.so.1
  6. libgdk-x11-2.0.so
  7. libgdk_pixbuf-2.0.so
  8. libgtk-x11-2.0.so
  9. libpango-1.0.so
  10. libpangocairo-1.0.so
  11. libpangoft.-1.0.so
  12. nc




Here I started with the simplest:
 yum install nc
      
      



Two packages nmap-ncat and libpcap got up. My joy was limitless. I’m trying to enter the names of the following packages and even more gloomy - not a single one in the repositories. Good. Using Google, I'm dealing with dependencies. Installation continues.



 yum install lsb ( 158 ) rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/ldm-2.2.11-4.el6.x86_64.rpm (   ) rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/ldminfod-2.2.11-4.el6.x86_64.rpm rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/ltspfs-1.1-7.el6.x86_64.rpm rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/mock-1.1.32-1.el6.noarch.rpm
      
      





And here again a mistake. A bunch of dependencies that need to be resolved.



Dependencies
  1. createrepo
  2. pigz
  3. python (abi)
  4. python-decoratortools
  5. usermode
  6. yum-utils




Good. I start to put packages. The first was yum-utils.



 yum install yum-utils rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/pigz-2.2.5-1.el6.x86_64.rpm (     ) yum install perl ( ) yum install nfs-utils yum install mock yum install tftp-server yum install xinetd rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/perl-File-BaseDir-0.03-12.1.noarch.rpm (       ) rpm -i https://kojipkgs.fedoraproject.org//packages/xorg-x11-xdm/1.1.11/20.fc31/x86_64/xorg-x11-xdm-debugsource-1.1.11-20.fc31.x86_64.rpm (  ) yum install libxaw yum install libXdmcp yum install xorg-x11-xinit-session yum install libXxf86misc rpm -i https://kojipkgs.fedoraproject.org//packages/xorg-x11-xinit/1.4.0/4.fc30/x86_64/xorg-x11-xinit-debugsource-1.4.0-4.fc30.x86_64.rpm
      
      





Having been tormented with all this for half a day (most of them in search of dependencies and packages) at the command.



  rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/ltsp-server-5.4.5-19.20130427.08.el6.x86_64.rpm
      
      





finally there is only



Two dependencies


  1. perl (NetAddr :: IP)
  2. squashfs-tools




We continue to move on.



 yum install squashfs-tools yum install perl-NetAddr-IP
      
      





And finally



 rpm -i http://awale.qc.ca/CentOS/ltsp5/el6/x86_64/ltsp-server-5.4.5-19.20130427.08.el6.x86_64.rpm.
      
      





Hurrah! Hurrah! Hurrah! package installed successfully. Finally, we can begin assembling our thin clients.



We start the ltsp-build-client script and see how the progress bar is creating fun creating our image ... And here, where without this, an error pops up:



 Could not retrieve mirrorlist http://ltsp.repo.inode0.com/mirrorlist.php&dist=el6&arch=i386&repo=ltsp error was 12
      
      





Well, everything is clear - connection timeout. Well, let's try to do without this repository.



We go along the path / etc / ltsp / mock / in it we find the file epel-6-i386.cfg and comment on everything that relates to the LTSP repository. We start ltsp-build-client and joyfully observe the build of the thin client.



After assembly, we can install all the necessary software in the image we created with the ltsp-chroot command, after installing all the necessary software in the image (each has its own set), update the image with the ltsp-image-update command.



Well, that's basically it. Server setup on this is done. Thanks for your attention.



All Articles