قالب وردپرس درنا توس
Home / Tips and Tricks / Getting Started with Pentoo for Advanced Software Installations «Zero Byte :: WonderHowTo

Getting Started with Pentoo for Advanced Software Installations «Zero Byte :: WonderHowTo

Kali Linux is probably the best known hacking distribution among penetration testers. However, there are alternative distros that offer versatility and advanced package management systems that are absolutely worth considering.

Such a distribution is Pentoo, a Gentoo-based operating system created by Grimmlin and the maintenance of Rick Farina aka " Zero_Chaos "), an experienced developer and penetration tests. Before we explain Pentoo itself, it is necessary to talk about the underlying Gentoo OS first.

What is Gentoo?

Gentoo is Linux distribution centered around compiling packages from the source. If you have software installed in this way, you know that it can be incredible to compile just one application.

Although it may seem counterproductive to a penetration test that needs new software in the middle of a CTF or an editorial engagement to compile a package altogether, there are several advantages to compiling packages in this manner, as described in later parts of the article. .

What is Pentoo?

Pentoo is a cover for Gentoo, which is similar to how BlackArch and Kali import custom tool stores into the respective Arch and Debian operating systems. Pentoo is Gentoo, with a curated repository of hacking software that can be compiled with a great deal of customization.

Based on its outdated, nearly 90-page site (sorry Farina!), Some may think that Pentoo is no longer under development. A closer look at the GitHub commitments shows consistent daily updates to the repository over the past 12 months.

Pentoo has no marketing department or web developer on its team, unlike Kali Linux. Instead of depletion time and resources on advertising and website maintenance, the Pentoo developers focus strongly on improving the internal features and stability of operating systems, installers, and support tools.

Not only do users benefit from Pentoo's dozens of commitments a week, they also directly benefit from Gentoo's hundreds of commits a week. The development has been very active for 13 years and shows no sign of slowing down anytime soon. We really shine on "actually making the distribution" and "keeping all packages updated, tested and working" but we are getting worse at "maintaining a site" bit.

– Rick Farino in an E-mail with Null Byte

The Pentoo project is an excellent hacking distro and very lively and good.

Should I use Pentoo instead of Kali Linux?

The short answer is: If Kali works for you as a penetration test distro, then use it. Gentoo does not have the beginner-friendly package manager and can be a challenge for some absolute beginners.

On the other hand, if you find that there is a need for greater control over how your hacking program is installed, Pentoo will likely satisfy it. Gentoo-based operating systems really shine when it comes to installing software from the source with very specific support for libraries, chipsets, desktop environments, protocols, scripting languages, databases, and more.

Step 1: Download Pentoo ISO

I use Debian 9 throughout the installation process, but readers using Ubuntu, Kali or macOS can also follow. If you encounter any problems, click on the comment and we will try to help you.

The first step is to take a copy of "full" Pentoo ISO. The download mirrors and version numbers can be changed in the near future so I will not directly link to an ISO. Instead, you should navigate to the Pentoo website to download the latest ISO.

Step 2: Verifying Pentoo ISO

When the download is complete, it is important to verify ISO file integrity because large files may become corrupt when downloaded via the internet.

The ISO hasher is found in the file "pentoo-full – * .iso.DIGESTS", which is also available with the supplied download mirrors. After downloading the DIGESTS file, use sha512sum to generate ISOs sha512 hash.

  sha512sum /path/to/pentoo-full-*.iso

Then, copy the hash to your clipboard and paste it into the command below grip to compare the ishdig file. ISO is verified and can be used. An empty response from grep means that the hash does not match, and you should try to download the ISO again.

Step 3: Create a Live USB by Pentoo

As an alternative to installing Pentoo directly on your portable hard drive, can be set up in a virtual machine (VM). However, the Pentoo developers do not recommend using pentesting distros exactly in VM software, mainly because most distros benefit from accessing the device hardware directly.

For example, port scanning with masscan, GPU password cracking and use of your laptop-built radios will work more efficiently when the operating system has direct contact with the hardware.

Installing Pentoo directly to your laptop gives you the best experience, so I show you how to start installing it. There are several ways to create a live USB, and below are two options.

Option 1: Use the command line as a guide

First insert a USB flash drive into the notebook. The flash drive is formatted and its contents destroyed, so make sure there are no sensitive data on the device before performing the following commands.

After inserting the USB flash drive, open a terminal and use the dmesg command (as root, in macOS) to find the USB flash drive.


[56084.482131] usb 2-5.1: new SuperSpeed ​​USB device number 12 with xhci_hcd
[56084.502882] usb 2-5.1: New USB device found, idVendor = 0781, idProduct = 5581
[56084.502884] usb 2-5.1: New USB device strings: Mfr = 1, Product = 2, Serial number = 3
[56084.502885] usb 2-5.1: Product: Ultra
[56084.502885] usb 2-5.1: Manufacturer: SanDisk
[56084.502886] usb 2-5.1: Serial number: XXXXXXXXXXXXXXXXXXXX
[56084.503313] USB storage 2-5.1: 1.0: USB mass storage device detected
[56084.503466] scsi host7: USB storage 2-5,1: 1,0
[56085.507205] scsi 7: 0: 0: 0: Direct access SanDisk Ultra 1.00 PQ: 0 ANSI: 6
[56085.508028] sd 7: 0: 0: 0: Attached scsi generic sg4 type 0
[56085.508112] sd 7: 0: 0: 0: [sde] 60063744 512-byte logical blocks: (30.8 GB / 28.6 GiB)
[56085.509001] sd 7: 0: 0: 0: [sde] Write Protect is off
[56085.509005] sd 7: 0: 0: 0: [sde] Mode Sense: 43 00 00 00
[56085.509303] sd 7: 0: 0: 0: [sde] Write cache: disabled, read cache: enabled, DPO or FUA does not support
[56085.515111] sde: sde1 sde2
[56085.516038] sd 7: 0: 0: 0: [sde] Attached SCSI removable disk 

The flash device manufacturer, name, storage capacity and the assigned letter of mail will be displayed at the output. In my case, it is SanDisk, SanDisk Ultra, 30.8 GB and SDE respectively.

Note the driver's note as required in the next command and is not the same every time. My flash drive was assigned "sde", but in some cases it may appear as "sdc" or "sdf". Also, be careful not to use the miswriting letter because dd can erase a whole hard drive in seconds.

The lower dd command can be used to create live USB. In the dd it is instructed to use Pentoo ISO ( if = ) and write data ( off = ) to the flash unit ( sde ). The argument for status = progress is a lesser known feature of dd that prints the status and write speed of the current command. Don't forget, replace the iOS file and flash letter with the ones you use.

  sudo dd if = pentoo-full-amd64-default-2018.0_RC8.iso av = / dev / sde bs = 8M status = progress

2927624192 bytes (2.9GB, 2.7GiB) are copied, 19.0038s, 154MB / s
351 + 1 items in
351 + 1 entries out
2949644288 bytes (2.9 GB, 2.7 GB, 2.7 GB) are copied, 153 675 s, 19.2 MB / s 

After about three minutes, the dd command will be completed and the new Pentoo Live USB The unit can safely be discharged.

Option 2: Use Third Party Software

Alternatively, Etcher, a platform platform USB creator, can be used in the MacOS, Windows and Linux operating systems. In some ways it is a simpler method for beginners but requires installation of third-party applications.

After installing Etcher, insert the USB flash drive into the computer. Open Etcher, select "Select image" and select Pentoo ISO. Then select "Connect a device" or just "Select device" and select your flash drive. Click on "Flash!" button, and wait a few minutes for it to be completed.

Image via GitHub

With this done, we can now launch our laptop with the new Pentoo Live USB.

Step 4: Starting with Live USB

Make sure you turn off your laptop or desktop completely. Then insert Pentoo Live USB and turn on your computer.

The keys required to boot into the live USB device vary depending on the computer manufacturer. Many OEMs use F12 for example Dell and Lenovo. ASUS uses the key Esc .

After booting, select the "Pentoo Standard" option.

It will then request a key folder. If no key folder is selected after a few seconds, it will be default to US English.

  >> Tip: Use shin chain [=seconds] if your living medium is slow and start failing
>> Loading keymaps
Select a key folder from the following list by entering the appropriate name or number. Hit Enter for standard "us / 41" US English keymap.

1 azerty 8 kroat 15 fi 22 jp 29 pt 36 slovene 43 sf
2 var 9 cz 16 fr 23 la 30 ro 37 trf
3 bg 10 de 17 gr 24 lt 31 ru 38 -
4 br-11 dk 18 h 25 mk 32 se 39 ua
5 br-l 12 dvorak 19 il 26 nl 33 sg 40 uk
6 at 13 es 20 is 27 no 34 sc-y 41 µs
7 cf 14 and 21 the 28 µl sc-z 42 cheek
<< Charge keymap (Set as default): 

When ready, a new password is required. If you are planning to spend a lot of time with this operating system, be sure to create a strong password.

  Welcome to Pentoo powered by Gentoo Linux ...

This is pentoo.0 (Linux x86_64 4.17.11-pentoo) 06:45:00

pentoo login: pentoo (automatic login)
************************************************** ***************************
* *
* All network interfaces are now down at startup. *
* For the gui network manager, type "/etc/init.d/NetworkManager start" as root *
* Or you can type "dhcpcd ethX" as root to configure your network interface. *
* *
* If you are running live usb, there are many ways to save changes: *
* You can run flushchanges as root to automatically save all *
* changes made since start. *
* You can run "makemo category / package" as root to install a new package *
* which will be available now and after restart. *
* *
* Pentoo Bug Tracker https://github.com/pentoo/pentoo-overlay/issues *
* Update with "pentoo updater" command as root. *
* *
* Enter startx to start XFCE window manager *
* *
************************************************** ***************************

For your safety, Pentoo will not have a default password.
To protect your session, you must enter a password now.
Don't forget your password.
New password: 

Then, to start the XFCE4 desktop environment, use the startx command.

Step 5: Configure Your Internet

By default, the network manager turns off. Internet access is required to install Pentoo, so click the "Start NetworkManager" icon on the desktop to enable it. Then continue configuring your internet connection as needed.

Step 6: Install Pentoo

To install Pentoo, double-click the "pentoo-installer" icon on the desktop. The installer starts to help you through the process.

Enter the time zone and clock, and then click "OK" to proceed to the next Prepare hard drive step. For a standard, guided partitioning, use the "0" option at the top and select the disk to be overwritten.

The installer will request to start, change, and root partition sizes, but the default values ​​are generally good if Pentoo is the only operating system on the hard drive. Continue pressing Enter to select default values.

When it is ready select and select the "3" option to complete the hard drive preparation step. If you need a more advanced partitioning scheme, check out Gentoo's Handbook and Disk Partitioning Guide for more information.

Then select the "2" option for "Copy Distribution". The installer begins to manage the core system, which may take several minutes depending on the flash drive's read / write speed and the computer's CPU.

After that, it's done, the option "3" to select a profile. You will be presented with three profile options.

  • amd64 : The software will compile and update from the source locally. The software versions used with this profile are believed to be stable and will rarely break or crash when used. If you are familiar with compiling software from the source, this option is likely to provide the best Pentoo experience.
  • binary : Unlike the amd64 option, precompiled binaries created by the Pentoo developers will be drawn from the Pentoo repositories. If you migrate from Kali, this may be the best option, as software installations require less time and user input to complete.
  • bleeding_edge : Like the amd64 option, the software is compiled from the source locally. The software versions provided, however, are unstable and may be more likely to break during the installation or use of software. This option is only recommended for experienced Gentoo users, who will not be disturbed by unstable software.

After selecting a profile, select the "4" option to configure default text editors, network hosts, root passwords, user names, and host names. If you do not want to change the default values, just click "OK" to proceed to the next "Install Bootloader" step. Select the "GRUB2" bootloader option, then "Yes" to continue.

The installer opens a text editor to allow us to customize the GRUB2 config file. If you do not want to make changes to the file, just exit the text editor and the installer will continue.

Finally, select the "6" option to exit the installer. You can now shut down your computer, remove the live USB device and restart it to access the new Pentoo OS.

Step 7: Performing System Maintenance

Prior to the mode, the readers are asked to check the Gentoo cheat sheet and ) for extensive descriptions and argument details.

The first thing to do is to open a terminal and synchronize the system, as it will be old and behind the current Gentoo archive. Use the emerge –sync command to do so; It may take several minutes to complete.

  emerge --sync

>>> Synchronization database & # 39; gentoo & # 39; to & # 39; / usr / portage & # 39; ...
* Using keys from /usr/share/openpgp-keys/gentoo-release.asc
* Refreshing keys from keyserver ... 

Layman is a repository management tool that allows users to handle Gentoo repositories in a simple, centralized way. Use the command below to ensure that both Layman and Git are installed.

  sudo emerge app-portage / layman git

Calculation of dependencies ... done!
[ebuild  N     ] app-portage / layman-2.4.2-r1 :: gentoo USE = "git gpg mercurial sqlite-subversion sync-plugin-portage -bazaar -cvs -darcs (-g-sorcery) -quashfs {-test} "PYTHON_TARGETS =" python3-6 (-pypy) -pyton2-7-pyton3-4-pyton3-5 "135 KiB
[ebuild  N     ] dev-pyton / pyGPG-0.2 :: gentoo PYTHON_TARGETS = "python2_7 python3_6-pyton3_4-pyton3_5" 16 KiB
[ebuild     U  ] dev-vcs / git-2.19.2 :: gentoo [2.16.4::gentoo] USE = "blksha1 curl gpg iconv nls pcr perl python subversion threads tk webdav -cgi -cvs -doc -emacs -gnome-keychain -highlight -libressl - mediawiki -mediawiki-experimental -pcre-jit (-ppcsha1) {-test} -xinetd "PYTHON_TARGETS =" python2_7 "5,535 KiB
[ebuild  N     ] dev-vcs / mercurial-4.6.2 :: gentoo USE = "- bugzilla -emacs -gpg {-test} -tk" PYTHON_TARGETS = "python2_7" 6 258 KiB
[nomerge       ] dev-vcs / git-2.19.2 :: gentoo [2.16.4::gentoo] USE = "blksha1 curl gpg iconv nls pcr perl python subversion threads tk webdav -cgi -cvs -doc -emacs -gnome-keychain -highlight -libressl - mediawiki -mediawiki-experimental -pcre-jit (-ppcsha1) {-test} -xinetd "PYTHON_TARGETS =" python2_7 "
[ebuild  N     ] dev-perl / MailTools-2.190.0 :: gentoo USE = "- example {-test}" 55 KiB
[ebuild  N     ] dev-perl / TimeDate-2.300.0 :: gentoo 31 KiB

Total: 6 packages (1 upgrade, 5 new), Size of downloads: 12,028 KiB

!!! The following installed packages are masked:
- dev-qt / qtprintsupport-5.9.6 :: gentoo (masked by: package.mask)
#force qt update

- dev-qt / qtcharts-5.9.6 :: gentoo (masked by: package.mask)
- dev-qt / qtopengl-5.9.6 :: gentoo (masked by: package.mask)
- mail client / thunderbird-bin-52.9.1 :: gentoo (masked by: package.mask)
# Ian Stakenvicius  (07 Nov 2018)
# on behalf of the Mozilla Project 
# Mask old / vuln thunderbird for removal since 2019,
# see security error 670102

- dev-qt / qtsvg-5.9.6 :: gentoo (masked by: package.mask)
- dev-qt / qtcore-5.9.6 :: gentoo (masked by: package.mask)
- net-analyzer / wireshark-2.6.2 :: gentoo (masked by: package.mask)
#mask old wireshark

- dev-qt / qtbluetooth-5.9.6 :: gentoo (masked by: package.mask)
- app-admin / localepurge-0.5.4-r2 :: gentoo (masked by: package.mask)
# Pacho Ramos  (11 Nov 2018)
# Unprotected for years, buggy (# 183273, # 491010, # 605544). You can trust
# INSTALL_MASK to skip unwanted sites and just install foo locale:
# INSTALL_MASK = "/ usr / share / locale - / usr / share / locale / foo"
# Removal in one month.

- dev-qt / qtdbus-5.9.6 :: gentoo (masked by: package.mask)
- sys-libs / glibc-2.26-r7 :: gentoo (masked by: package.mask)
# Michał Górny  Andreas K. Hüttel ,
# Matthias Maier  (May 21, 2017 and later updates)
# These old versions of toolchain packages (binutils, gcc, glibc) are no
# longer official support and are not suitable for general use. Using
# These packages may result in building errors (and possible crimes) for
# Many packages, and can leave your system vulnerable to known security
# exploits.
# If you are still using one of these old toolchain packages, please upgrade (and
# Change the compiler / binaries ASAP. If you need them for a certain one
# (isolated) use case, be good at masking them on your system.

- dev-qt / qtgui-5.9.6 :: gentoo (masked by: package.mask)
- dev-qt / qtxmlpatterns-5.9.6 :: gentoo (masked by: package.mask)
- dev-qt / qtwidgets-5.9.6-r1 :: gentoo (masked by: package.mask)
- dev-qt / qtnetwork-5.9.6 :: gentoo (masked by: package.mask)
For more information, see the section MASKED PACKAGES in the development
one page or refer to the Gentoo manual.

>>> Verify ebuild manifest
>>> Run before merging controls for appportage / layman-2.4.2-r1
>>> Emerging (1 of 6) dev-perl / TimeDate-2.300.0 :: gentoo
>>> Emerging (2 or 6) dev-vcs / mercurial-4.6.2 :: gentoo
>>> Install (1 of 6) dev-perl / TimeDate-2.300.0 :: gentoo
>>> Emerging (3 or 6) dev-python / pyGPG-0.2 :: gentoo
>>> Install (3 out of 6) dev-python / pyGPG-0.2 :: gentoo
>>> Emerging (4 of 6) dev-perl / MailTools-2.190.0 :: gentoo
>>> Install (4 of 6) dev-perl / MailTools-2.190.0 :: gentoo
>>> Emerging (5 or 6) dev-vcs / git-2.19.2 :: gentoo
>>> Install (2 of 6) dev-vcs / mercurial-4.6.2 :: gentoo
>>> Install (5 of 6) dev-vcs / git-2.19.2 :: gentoo
>>> Recording dev-vcs / git in "world" favorites file ...
>>> Emerging (6 out of 6) app-portage / layman-2.4.2-r1 :: gentoo
>>> Install (6 out of 6) app-portage / layman-2.4.2-r1 :: gentoo
>>> Recording app portage / layman in "world" favorite file ...
>>> Job: 6 of 6 complete Download avg: 1.82, 0.93, 0.44

* Messages for the dev-python / pyGPG-0.2 package:

* There may still be some python 3 compatibility issues.
* Please help debug / fix / report them in github or bugzilla.

* Messages for the dev-vcs / mercurial-4.6.2 package:

* To convert archives from other tools that use convert
* extension please install the correct tool:
* dev-vcs / cvs
* dev-vcs / darcs
* dev-vcs / git
* dev-vcs / monotone
* dev-vcs / subversion

* Messages for the dev-vcs / git-2.19.2 package:

* Please read / usr / share / bash-completion / completions / git for the Git bash command
* completion.
* Please read /usr/share/git/git-prompt.sh for Git bash prompt
* Note that fast bash code is now in the separate script
* These additional scripts need some dependencies:
* git-quilt import: dev-util / quilt
* git-instaweb: || (www servers / lighttpd www servers / apache www servers / nginx)
>>> Cleaning kit ...

>>> No outdated packages found on your system.

* GNU info directory index is current. 

Then use the command layman -L to see a list of available overlays. You will notice pentoo is an available overlay.

  sudo layman -L 

Pentoo users may want to skip the next command, as the Pentoo overlay is likely to be imported. However, driving it will not damage the system. Gentoo users attempting to import the Pentoo overlay must run the layman -a command to continue tracking.

  sudo layman-a pentoo

* Adding overlay ...
* Running Git ... # (cd / var / lib / layman && / usr / bin / git clone https://github.com/pentoo/pentoo-overlay.git / var / lib / layman / pentoo)
deadly: destination path & var / lib / layman / pentoo & # 39; already exists and is not an empty directory.
* Error results returned from Git
* Running Git ... # (cd / var / lib / layman / pentoo && / usr / bin / git config username "layman")
* Running Git ... # (cd / var / lib / layman / pentoo && / usr / bin / git config user.email "layman @ localhost")
* Added overlay (s) pentoo. 

If you get a "Your current profile is off and no longer supported", use the command below eselect used

  sudo eselect profile set pentoo: pentoo / hardened / linux / amd64 / binary [Thenupdate( -u) packages and the entire dependency ( -D ) trees to the most stable versions available using  emerge -uD @world  ]. The process took about 10 minutes to complete my first time. 

  sudo emerge -uD @world

These are the packages that should be merged, in reverse order:

Calculation of dependencies ... done!
[binary   R    ] virtual / package manager-1 :: gentoo 8 KiB
[ebuild     U  ] sys-apps / elfix-0.9.3 :: gentoo [0.9.2::gentoo] USE = "xtpax -ptpax *" 391 KiB
[binary     U  ] virtual / dev-manager-0-r2 :: gentoo [0-r1::gentoo] 8 KiB
[binary   R    ] virtual / ssh-0 :: gentoo USE = "- minimal" 6 KiB
[binary   R    ] sys-process / procps-3.3.15-r1: 0/6 :: gentoo USE = "kill ncurses nls unicode -elogind -modern-top (-selinux) -static-libs (-systemd) {-test} "903 KiB
[binary     U  ] sys-apps / grep-3.1 :: gentoo [3.0::gentoo] USE = "nls pcre-static" 525 KiB
[binary   R    ] sys-apps / kbd-2.0.4 :: gentoo USE = "nls pam {-test}" 1 647 KiB
[binary   R    ] virtual / service-manager-0 :: gentoo USE = "(- prefix%)" 6 KiB
[binary   R    ] virtual / modutils-0 :: gentoo 7 KiB
[binary     U  ] net-misc / wget-1.19.5-r1 :: gentoo [1.19.5::gentoo] USE = "ipv6 nls pcre (ssl) zlib -debug -nut -id -libressl -ntlm -stat {static {test} -uid" 1.167 KiB
[binary     U  ] sys-apps / man-pages-4.16 :: gentoo [4.15::gentoo] USE = "nls" L10N = "- da -de -fr -it -ja -nl -pl -ru -zh-CN" 1,819 KiB
[binary   R    ] sys-apps / gawk-4.1.4 :: gentoo USE = "nls readline -mpfr" 1,678 KiB
[binary   R    ] sys-boot / grub-2.02-r1: 2 / 2.02-r1 :: gentoo USE = "Device folder-font mount multislot ns sdl themes threat type -debug -doc -efiemu -libzfs -static {-test}" GRUB_PLATFORMS = "coreboot efi-32 efi-64 emu multiboot-computer qemu -ieee1275 -loongson -qemu-mips -uboot -xen -xen-32" 58,175 KiB
[binary   R    ] virtual / man-0-r1 :: gentoo 7 KiB
[nomerge       ] sys-apps / elfix-0.9.3 :: gentoo [0.9.2::gentoo] USE = "xtpax -ptpax *"
[ebuild     U  ] dev-python / pypax-0.9.3 :: gentoo [0.9.2::gentoo] USE = "xtpax -ptpax *" PYTHON_TARGETS = "python2_7 python3_6 (-pypy) -pyton3_4-pyton3_5" 0 KiB
[binary     U  ] sys-apps / iproute2-4.17.0-r1 :: gentoo [4.14.1-r2::gentoo] USE = "caps% * iptables ipv6 -atm -berkdb * -elf% -minimal (-selinux)" 2.941 KiB
[binary   R    ] nett-misc / iputils-20171016_pre :: gentoo USE = "arping caps filecaps ipv6 openssl ssl -SECURITY_HAZARD -clockdiff -doc -gcrypt -idn -libressl -nettle -rarpd -rdisc-static -tftpd -tracpath -traceroute" 149 KiB
[binary   R    ] sys-apps / util-linux-2.32-r4 :: gentoo USE = "caps cramfs ncurses nls pam python readline static-libs suid udev unicode -build -fdformat -kill (-selinux) hose (s) { -test} -helpers "ABI_X86 =" 32 (64) (-x32) "PYTHON_TARGETS =" python2_7 "15,763 KiB
[binary     U  ] dev-lang / python-2.7.15: 2.7 :: gentoo [2.7.14-r1:2.7::gentoo] USE = "bluetooth% * gdbm hardened * ipv6 ncurses readline sqlite ssl (threads) tk (wide-unicode) xml (-berkdb) -build -doc copy -libressl win "22,237 KiB
[ebuild     U  ] virtual / editor-0-r2 :: gentoo [0-r1::gentoo] 0 KiB
[binary   R    ] sys-process / psmisc-23.1-r1 :: gentoo USE = "X ipv6 nls (-selinux)" 226 KiB
[binary   R    ] virtual / pager-0 :: gentoo 9 KiB
[binary     U  ] sys-apps / less-531 :: gentoo [529::gentoo] USE = "pcre unicode" 285 KiB
[binary   R    ] app-skal / bash-4.4_p12 :: gentoo USE = "not like (readline) -afs -bashlogger -examples -mem-scramble-plugins" 2.555 KiB
[binary     U  ] sys-apps / diffutils-3.6-r1 :: gentoo [3.5::gentoo] USE = "nls-static" 704 KiB
[binary   R    ] app-arch / tar-1.30 :: gentoo USE = "acl nls (xattr) minimal (-selinux) static" 1,515 KiB
[binary   R    ] net-misc / rsync-3.1.3 :: gentoo USE = "acl iconv ipv6 xattr-copy-static-tunnel" 761 KiB
[binary   R    ] sys-apps / findutils-4.6.0-r1 :: gentoo USE = "nls (-selinux) static {test}" 937 KiB
[binary     U  ] sys-devel / binutils-2.30-r4: 2.30 :: gentoo [2.30-r2:2.30::gentoo] USE = "cxx multitarget nls -doc -static-libs {-test}" 50,948 KiB
[binary   R    ] sys-devel / gcc-7.3.0-r3: 7.3.0 :: gentoo USE = "cxx preference hardened * (multilib) nptl openmp pgo (pie) (ssp) vtv (-altivec) -cilk debug -doc (-fixed-point) -go -graphite (-jit) (-libssp) -mpx -objc -objc ++ -objc-gc (-pch *) -regression test (-sanitize *) -vanilla "324,277 KiB
[binary   R    ] sys-apps / sed-4.5 :: gentoo USE = "acl nls -forced-sandbox (-selinux) static" 383 KiB
[binary     U  ] sys-devel / patch-2.7.6-r2 :: gentoo [2.7.6-r1::gentoo] USE = "xattr-static {-test}" 327 KiB
[ebuild     U  ] sys-apps / busybox-1.29.3 :: gentoo [1.28.0::gentoo] USE = "ipv6 static -debug (-livecd) -make-symlinks -math -mdev -pam -savedconfig (-selinux) -sep-usr - syslog (system) "2.252 KiB
[binary     U  ] sys-devel / make-4.2.1-r4 :: gentoo [4.2.1-r3::gentoo] USE = "nls -guile-static" 711 KiB
[binary     U  ] sys-apps / file-5.34 :: gentoo [5.33-r4::gentoo] USE = "zlib -python -static-libs" ABI_X86 = "32 (64) (-x32)" PYTHON_TARGETS = "python2_7 python3_6 (-pypy) -python3_4 -pyton3-5 (-pyton3-7) "921 KiB
[ebuild     U  ] sys-apps / net-tools-1.60_p20180626073013 :: gentoo [1.60_p20161110235919::gentoo] USE = "arp hostname ipv6 nls -nis -plipconfig (-selinux) -slattach -static" 223 KiB
[ebuild     U  ] sys-apps / baselayout-2.6-r1 :: gentoo [2.4.1-r2::gentoo] USE = "split-usr% * -build" 32 KiB
[binary   R    ] app-arch / gzip-1.8 :: gentoo USE = "- pic static" 218 KiB
[ebuild     U  ] app-arch / bzip2-1.0.6-r10: 0/1 :: gentoo [1.0.6-r9:0/1::gentoo] USE = "- static-static-libs" ABI_X86 = "32 (64) (-x32)" 764 KiB
[nomerge       ] sys-apps / iproute2-4.17.0-r1 :: gentoo [4.14.1-r2::gentoo] USE = "caps% * iptables ipv6 -atm -berkdb * -elf% -minimal (-selinux)"
[binary     U  ] sys-libs / glibc-2.27-r6: 2.2 :: gentoo [2.26-r7:2.2::gentoo] ANVÄNDNING = "caps hardened * multiarch% * (multilib) -audit (-compile-locales) -doc -gd-headers-only -nscd (-profil) (-selinux) -suid-systemtap (-vanilla) (-debug%) "77.269 KiB

Totalt: 40 paket (20 uppgraderingar, 20 återinstallerar, 33 binärer), Storlek på nedladdningar: 572,734 KiB 

När det är klart är det viktigt att städa systemet med gamla och föråldrade paket med emerge -v --depclean .

 sudo emerge -v -depclean 

Steg 8: Kom igång med Gentoos paketchef

Gentoos paketchef, framträder, har en kort inlärningskurva. För dig Debian / Ubuntu-läsare, nedan är ett APT-till-Emerge fuskblad för att förhoppningsvis göra övergången sömlös.


 apt-get install  ]
emerge -a  

Ta bort:

 apt-get remove 
framkalla -C  


 apt-cache search 
framträda -S 


 apt-get update && apt-get uppgradering
framträda -u värld 

Ta bort gamla beroenden:

 apt-get autoremove
emerge -av --depclean

For a complete cheat sheet of package manager commands, check out the official Gentoo documentation.

Using Eix

Eix includes several utilities for searching and updating local repositories. Made to be more efficient than emerge, it features a colorized output that makes it easy to read and find package information. To get started, use the eix-update command to update the Gentoo and Pentoo caches.


Reading Portage settings...
Building database (/var/cache/eix/portage.eix)...
[0] "gentoo" /usr/portage/ (cache: metadata-md5-or-flat)
     Reading category 167|167 (100) Finished
[1] "pentoo" /var/db/repos/pentoo (cache: parse|ebuild*#metadata-md5#metadata-flat#assign)
     Reading category 167|167 (100) Finished
Applying masks...
Calculating hash tables...
Writing database file /var/cache/eix/portage.eix...
Database contains 20132 packages in 167 categories

Then, view the available Pentoo packages using the --in-overlay argument.

eix --in-overlay pentoo

The eix will limit the output by default. To remove this restriction, append the EIX_LIMIT=0 argument to the command (shown below).

EIX_LIMIT=0 eix --in-overlay pentoo

[I] app-admin/genmenu [1]
     Available versions:  (**)9999
     Installed versions:  9999(06:03:10 AM 08/09/2018)
     Homepage:            https://github.com/pentoo/genmenu
     Description:         a tool for generating freedesktop-compliant menus

* app-antivirus/malheur [1]
     Available versions:  0.5.4 {openmp}
     Homepage:            http://www.mlsec.org/malheur/
     Description:         Malware analysis tool

* app-antivirus/veil [1]
     Available versions:  (~)3.1.11 {tools PYTHON_SINGLE_TARGET="python3_5 python3_6" PYTHON_TARGETS="python3_5 python3_6"}
     Homepage:            https://github.com/Veil-Framework/Veil
     Description:         A tool for payloads generation that bypass common anti-virus solutions

* app-antivirus/veil-evasion [1]
     Available versions:  (~)2.28.2-r1 {tools windows PYTHON_TARGETS="python2_7"}
     Homepage:            https://github.com/Veil-Framework/Veil-Evasion
     Description:         A tool for payloads generation that bypass common anti-virus solutions

[I] app-crypt/SIPcrack [1]
     Available versions:  (~)0.4-r1
     Installed versions:  0.4-r1(11:20:46 PM 08/29/2013)
     Homepage:            http://www.remote-exploit.org/?page_id=418 -gone
     Description:         SIPcrack is a SIP protocol login cracker

* app-crypt/acsccid [1]
     Available versions:  (~)1.1.5 ~1.1.6
     Homepage:            http://acsccid.sourceforge.net/
     Description:         Generic driver for ACS (CCID and non-CCID) Smart Card Reader.

[I] app-crypt/asleap [1]
     Available versions:  2.2
     Installed versions:  2.2(11:38:56 PM 08/29/2013)
     Homepage:            http://www.willhackforsushi.com/Asleap.html
     Description:         exploiting cisco leap; As in asleap behind the wheel.

* app-crypt/bob-the-butcher [1]
     Available versions:  ~0.7.1 {sse2}
     Homepage:            http://download.openwall.net/pub/projects/john/contrib/parallel/btb/
     Description:         A distributed password cracker

Use the --only-names argument to view available hacking tool categories.

eix --only-names --overlay pentoo


Then, search (grep) specific categories for available tools using the below command. At the time of this writing, there are 175 wireless hacking tools, hundreds of network analyzers, and dozens of forensics tools between the Pentoo and Gentoo repositories.

EIX_LIMIT=0 eix --only-names | grep &#39;net-wireless&#39;


Performing Quick Installations

Installing popular software like Burp Suite is easy. Simply search for the application name using the -S argument.

eix -s burpsuite

[I] net-proxy/burpsuite [1]
     Available versions:  1.7.29 1.7.36{tbz2}
     Installed versions:  1.7.36{tbz2}(10:06:54 PM 11/06/2018)
     Homepage:            https://portswigger.net/burp/
     Description:         Interactive proxy for attacking and debugging web applications

[1] "pentoo" /var/db/repos/pentoo

Alternatively, emerge can be used to search as well.

emerge -S burpsuite

[ Results for search key : burpsuite ]

*  net-proxy/burpsuite
      Latest version available: 1.7.36
      Latest version installed: 1.7.36
      Size of files: 25,847 KiB
      Homepage:      https://portswigger.net/burp/
      Description:   Interactive proxy for attacking and debugging web applications
      License:       BURP

[ Applications found : 1 ]

Then, install the desired package (net-proxy/burpsuite).

emerge -a net-proxy/burpsuite

Calculating dependencies... done!
[binary     U  ] net-proxy/burpsuite-1.7.36::pentoo [1.7.29::pentoo] 25,173 KiB

Total: 1 package (1 upgrade, 1 binary), Size of downloads: 25,173 KiB

!!! The following installed packages are masked:
- dev-qt/qtwidgets-5.9.6-r1::gentoo (masked by: package.mask)
#force qt update

- dev-qt/qtbluetooth-5.9.6::gentoo (masked by: package.mask)
- dev-qt/qtnetwork-5.9.6::gentoo (masked by: package.mask)
- dev-qt/qtdbus-5.9.6::gentoo (masked by: package.mask)
- dev-qt/qtxmlpatterns-5.9.6::gentoo (masked by: package.mask)
- sys-devel/prelink-20130503::gentoo (masked by: package.mask)
# broken on hardened, use sys-apps/elfix to fix gnustack

- dev-qt/qtcharts-5.9.6::gentoo (masked by: package.mask)
- app-admin/localepurge-0.5.4-r2::gentoo (masked by: package.mask)
# Pacho Ramos  (11 Nov 2018)
# Unmaintained for years, buggy (#183273, #491010, #605544). You can rely on
# INSTALL_MASK to skip unwanted locales and install only foo locale:
# INSTALL_MASK="/usr/share/locale -/usr/share/locale/foo"
# Removal in a month.

- dev-qt/qtgui-5.9.6::gentoo (masked by: package.mask)
- mail-client/thunderbird-bin-52.9.1::gentoo (masked by: package.mask)
# Ian Stakenvicius  (07 Nov 2018)
# on behalf of Mozilla Project 
# Mask old/vuln thunderbird for removal by 2019,
# see security bug 670102

- dev-qt/qtcore-5.9.6::gentoo (masked by: package.mask)
- dev-qt/qtopengl-5.9.6::gentoo (masked by: package.mask)
- net-analyzer/wireshark-2.6.2::gentoo (masked by: package.mask)
#mask old wireshark

- dev-qt/qtsvg-5.9.6::gentoo (masked by: package.mask)
- dev-qt/qtprintsupport-5.9.6::gentoo (masked by: package.mask)
For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.

Would you like to merge these packages? [Yes/No] yes
>>> Emerging binary (1 of 1) net-proxy/burpsuite-1.7.36::pentoo
>>> Jobs: 0 of 1 complete, 1 running                Load avg: 0.19, 0.13, 0.09

You can see I now have Burp working on my system:

We can do the same with bettercapa fully-featured man-in-the-middle framework.

eix -s bettercap

[I] net-analyzer/bettercap [1]
     Available versions:  (~)2.9 (~)2.10 (~)2.11{tbz2}
     Installed versions:  2.11{tbz2}(02:00:43 PM 11/21/2018)
     Homepage:            https://github.com/bettercap/bettercap/
     Description:         A complete, modular, portable and easily extensible MITM framework

[1] "pentoo" /var/db/repos/pentoo
emerge -a net-analyzer/bettercap

Calculating dependencies... done!
[binary     U ~] net-analyzer/bettercap-2.11::pentoo [2.7::pentoo] 6,380 KiB
[binary  N    ~]  dev-go/go-net-0_pre20180816:0/0_pre20180816::gentoo  2,479 KiB
[binary  N    ~]   dev-go/go-text-0.3.0:0/0.3.0::gentoo  19,366 KiB
[binary  N    ~]    dev-go/go-tools-0_pre20180817:0/0_pre20180817::gentoo  57,930 KiB
[binary  N    ~]   dev-go/go-crypto-0_pre20180816:0/0_pre20180816::gentoo  2,906 KiB
[binary  N    ~]    dev-go/go-sys-0_pre20180816:0/0_pre20180816::gentoo  625 KiB

Total: 6 packages (1 upgrade, 5 new, 6 binaries), Size of downloads: 89,684 KiB

!!! The following installed packages are masked:
- dev-qt/qtgui-5.9.6::gentoo (masked by: package.mask)
#force qt update

- dev-qt/qtsvg-5.9.6::gentoo (masked by: package.mask)
- app-admin/localepurge-0.5.4-r2::gentoo (masked by: package.mask)
# Pacho Ramos  (11 Nov 2018)
# Unmaintained for years, buggy (#183273, #491010, #605544). You can rely on
# INSTALL_MASK to skip unwanted locales and install only foo locale:
# INSTALL_MASK="/usr/share/locale -/usr/share/locale/foo"
# Removal in a month.

- dev-qt/qtwidgets-5.9.6-r1::gentoo (masked by: package.mask)
- net-analyzer/wireshark-2.6.2::gentoo (masked by: package.mask)
#mask old wireshark

- dev-qt/qtdbus-5.9.6::gentoo (masked by: package.mask)
- mail-client/thunderbird-bin-52.9.1::gentoo (masked by: package.mask)
# Ian Stakenvicius  (07 Nov 2018)
# on behalf of Mozilla Project 
# Mask old/vuln thunderbird for removal by 2019,
# see security bug 670102

- dev-qt/qtprintsupport-5.9.6::gentoo (masked by: package.mask)
- dev-qt/qtcharts-5.9.6::gentoo (masked by: package.mask)
- sys-devel/prelink-20130503::gentoo (masked by: package.mask)
# broken on hardened, use sys-apps/elfix to fix gnustack

- dev-qt/qtxmlpatterns-5.9.6::gentoo (masked by: package.mask)
- dev-qt/qtopengl-5.9.6::gentoo (masked by: package.mask)
- dev-qt/qtbluetooth-5.9.6::gentoo (masked by: package.mask)
- dev-qt/qtnetwork-5.9.6::gentoo (masked by: package.mask)
- dev-qt/qtcore-5.9.6::gentoo (masked by: package.mask)
For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.

Would you like to merge these packages? [Yes/No] yes

>>> Emerging binary (1 of 6) dev-go/go-sys-0_pre20180816::gentoo
>>> Emerging binary (2 of 6) dev-go/go-tools-0_pre20180817::gentoo
>>> Installing (1 of 6) dev-go/go-sys-0_pre20180816::gentoo
>>> Emerging binary (3 of 6) dev-go/go-crypto-0_pre20180816::gentoo
>>> Installing (3 of 6) dev-go/go-crypto-0_pre20180816::gentoo
>>> Installing (2 of 6) dev-go/go-tools-0_pre20180817::gentoo
>>> Emerging binary (4 of 6) dev-go/go-text-0.3.0::gentoo
>>> Installing (4 of 6) dev-go/go-text-0.3.0::gentoo
>>> Emerging binary (5 of 6) dev-go/go-net-0_pre20180816::gentoo
>>> Installing (5 of 6) dev-go/go-net-0_pre20180816::gentoo
>>> Emerging binary (6 of 6) net-analyzer/bettercap-2.11::pentoo
>>> Installing (6 of 6) net-analyzer/bettercap-2.11::pentoo
>>> Recording net-analyzer/bettercap in "world" favorites file...
>>> Jobs: 6 of 6 complete                           Load avg: 0.44, 0.27, 0.16
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

Performing USE Flag Installations

USE flags are one of the biggest perks of Gentoo-based operating systems. They allow users to define the features a package should support, before compiling it. Support for a particular graphics library or desktop environment can be completely omitted to make an application run with more stability and efficiency.

If there is no need for OpenGL, why would someone bother to install and maintain OpenGL and build OpenGL support in most of the packages? If someone doesn&#39;t want to use KDE, why would they bother compiling packages with KDE support if those packages work flawlessly without?

— Gentoo Linux Wiki

USE flags are a bit beyond the scope of this article. For more on the subject, check out Gentoo&#39;s excellent documentation.

Step 9: Customize the Desktop Environment (Optional)

Like most Linux distributions, the desktop environment theme, icon set, and color scheme are highly customizable. I&#39;ll quickly walk through how to give Pentoo a modern look and feel.

Option 1: Theme Installation

Arc is a popular theme with support for many desktop environments like GNOME, XFCE, MATE, and Budgie. It&#39;s available in the Gentoo repositories and can be installed using the below command.

sudo ACCEPT_KEYWORDS="~amd64" emerge -a x11-themes/arc-theme

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild  N     ] x11-themes/arc-theme-20181022::gentoo  USE="gtk2 gtk3 pre-rendered -cinnamon -gnome-shell -mate -xfce" 308 KiB
[nomerge       ]  x11-themes/gtk-engines-murrine-0.98.2-r1::gentoo  USE="themes -animation-rtl" ABI_X86="32 (64) (-x32)"
[ebuild  N     ]   x11-themes/murrine-themes-0.98.0-r1::gentoo  38 KiB
[ebuild  N     ]    x11-themes/gtk-engines-murrine-0.98.2-r1::gentoo  USE="themes -animation-rtl" ABI_X86="32 (64) (-x32)" 290 KiB
[ebuild  N     ]  dev-lang/sassc-3.5.0::gentoo  26 KiB
[ebuild  N     ]   dev-libs/libsass-3.5.2:0/1::gentoo  USE="-static-libs" ABI_X86="32 (64) (-x32)" 320 KiB

Total: 5 packages (5 new), Size of downloads: 980 KiB

Would you like to merge these packages? [Yes/No]

Option 2: Icon Installation

Similarly, the Arc icon theme can be installed to match.

sudo emerge -a x11-themes/arc-icon-theme

Calculating dependencies... done!
[ebuild  N     ] x11-themes/arc-icon-theme-20161122::gentoo  4,916 KiB

Total: 1 package (1 new), Size of downloads: 4,916 KiB

Would you like to merge these packages? [Yes/No] yes
>>> Verifying ebuild manifests
>>> Emerging (1 of 1) x11-themes/arc-icon-theme-20161122::gentoo
>>> Installing (1 of 1) x11-themes/arc-icon-theme-20161122::gentoo
>>> Recording x11-themes/arc-icon-theme in "world" favorites file...
>>> Jobs: 1 of 1 complete                           Load avg: 0.18, 0.13, 0.17
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

Option 3: Multiplexer Installation

Tilix is the Null Byte terminal multiplexer of choice but isn&#39;t available in the Gentoo/Pentoo repositories. Instead, we&#39;ll install it from source. Head over to the Tilix GitHub to download the latest Tilix release.

wget &#39;https://github.com/gnunn1/tilix/releases/download/1.8.5/tilix.zip&#39;

tilix.zip                                       100%[===================================>]   3.32M   674KB/s    in 11s

2018-12-10 04:11:16 (299 KB/s) - ‘tilix.zip’ saved [3485622/3485622]

Then, decompress(unzip) the Tilix ZIP file.

sudo unzip tilix.zip -d /
Archive:  tilix.zip
  inflating: /usr/bin/tilix
  inflating: /usr/share/metainfo/com.gexperts.Tilix.appdata.xml
  inflating: /usr/share/applications/com.gexperts.Tilix.desktop
  inflating: /usr/share/icons/hicolor/scalable/apps/com.gexperts.Tilix-symbolic.svg


  inflating: /usr/share/tilix/schemes/material.json
  inflating: /usr/share/tilix/schemes/linux.json
  inflating: /usr/share/tilix/schemes/base16-twilight-dark.json
   creating: /usr/share/tilix/resources/
  inflating: /usr/share/tilix/resources/tilix.gresource
  inflating: /usr/share/glib-2.0/schemas/com.gexperts.Tilix.gschema.xml

And compile using the glib-compile-schemas command.

sudo glib-compile-schemas /usr/share/glib-2.0/schemas/

It would also be possible to add more color schemes to Tilix. First, make sure Git is installed and clone the Tilix theme GitHub repository.

sudo emerge dev-vcs/git && git clone https://github.com/storm119/Tilix-Themes/ /tmp/themes

Cloning into &#39;/tmp/themes&#39;...
remote: Enumerating objects: 395, done.
Receiving objects: 100% (395/395), 1.34 MiB | 213.00 KiB/s, done.
remote: Total 395 (delta 0), reused 0 (delta 0), pack-reused 395
Resolving deltas: 100% (50/50), done.

Make a directory in your home directory to store the new themes using the mkdir command.

mkdir -p ~/.config/tilix/schemes/

Finally, move (mv) the Tilix themes into the new schemes directory. Close all instances of Tilix and restart it for the new themes to become available in the settings.

mv /tmp/themes/Themes/*.json ~/.config/tilix/schemes/

That&#39;s all there is to it.

Step 10: Join the Gentoo/Pentoo Communities (Optional)

There are a number of ways to contribute to the Pentoo project and get help when you need it. Below is a list of available forums, wikis, official documentation, and mailing lists for those of you who want to get involved.

Final Thoughts

Pentoo was created by command-line enthusiasts and hackers who required greater control over how packages are installed. It offers an intuitive package manager and profiles that make compiling packages easy.

After a decade of development, Pentoo is constantly receiving updates and shows no sign of slowing down. While the developers may not have an interest in web design, they know how to spend time where it counts: ensuring Pentoo is as stable, up-to-date, and reliable as possible. This goes to show, we can&#39;t judge a distribution by its website.

Cover photo and screenshots by distortion/Null Byte

Source link