LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 05-16-2024, 05:23 PM   #1
backtrack5R1
LQ Newbie
 
Registered: Jul 2012
Posts: 8

Rep: Reputation: Disabled
Bug bash 5.0 slackware 15.0 versions"URGENT"


bash 5.0 has a bug that if you run a script to create a mass user and log in to any of these users, bash crashes and you can't do anything, I already removed bash-5 and downgraded to bash-4.4 and then error in a lot of libs and breaks the system, I compiled bash5.2 with all the patches and even so the bug persists this bug affects all versions of slackware15.0 x86 and 64bits live and install, how to solve this problem?

and the biggest problem is still the users of the slackware distribution because I need to at least create the "package.txz", the "package.txt" file and the "package.txz.asc" and no one tells me the correct command to create the ".txz.asc" file from compiled and compressed package.

Last edited by backtrack5R1; 05-16-2024 at 05:48 PM.
 
Old 05-16-2024, 05:29 PM   #2
Gerard Lally
Senior Member
 
Registered: Sep 2009
Location: Leinster, IE
Distribution: Slackware, NetBSD
Posts: 2,198

Rep: Reputation: 1777Reputation: 1777Reputation: 1777Reputation: 1777Reputation: 1777Reputation: 1777Reputation: 1777Reputation: 1777Reputation: 1777Reputation: 1777Reputation: 1777
Quote:
Originally Posted by backtrack5R1 View Post
bash 5.0 has a bug that if you run a script to create user in massa and try to log in to any of these users, it crashes bash and you can't do anything.
English probably isn't your native tongue. I assume you mean "if you run a script to create users en masse"? A script to create multiple users, in other words. You should probably post the script so that people can determine where and why it's going wrong.

Last edited by Gerard Lally; 05-16-2024 at 05:35 PM.
 
Old 05-16-2024, 05:58 PM   #3
backtrack5R1
LQ Newbie
 
Registered: Jul 2012
Posts: 8

Original Poster
Rep: Reputation: Disabled
script bash create user in massa

Quote:
Originally Posted by Gerard Lally View Post
English probably isn't your native tongue. I assume you mean "if you run a script to create users en masse"? A script to create multiple users, in other words. You should probably post the script so that people can determine where and why it's going wrong.
The problem is not in the mass user creation script, but in bash-5 all versions, but if you want to see the script, it's simple:
Code:
#!/bin/sh

if [ $(id -u) -ne 0 ]; then
 echo -e "\n\e[1;31mYou must be root\e[1;32m!\e[0m\n"
  else

declare USERNAME="usuario"

declare SLACKWARE_VERSION="$(sed '1q' /etc/slackware-version | sed 's/\s//g;' | tr 'A-Z' 'a-z')"

declare PYTHON="$(which python{,2.7,3,3.5,3.6,3.8,3.9} 2>/dev/null | tail -1)"

for ((i=1; i < 4; i++)); do

  if [ -n "$(getent passwd ${USERNAME}${i})" ]; then
   echo -e "\n\e[1;31mUser \e[1;34m${USERNAME}${i}\e[1;31m exists\e[1;32m!\e[0m"
    exit 0
    else

    #Cria o grupo sudo se nao existir
    [ -z $(getent group sudo) ] && groupadd sudo
    
    #Senhas randomicas com até 10 caracteres
    PASSWORDS="$(tr -dc a-z0-9_@%*A-Z0-9 < /dev/urandom | head -c 10)"

    #Saltos randomicos para criptografar a senha
    SALT_PASSWD="$(tr -dc _a-z-A-Z-0-9@%* < /dev/urandom | head -c 18)"
    
    #Criptografa a senha com algoritmo SHA-512
    CRYPT_PASSWD="$(${PYTHON} -c "import crypt; print(crypt.crypt('${PASSWORDS}', '\$6\$${SALT_PASSWD}\$'))")"
    
    #Cria o usuario com a senha criptografada
    useradd -m ${USERNAME}${i} -p ${CRYPT_PASSWD} -s /bin/bash -G disk,lp,kmem,floppy,dialout,audio,video,cdrom,games,input,plugdev,power,netdev,scanner,sudo

    #Salva os usuarios criados no diretório /root com o nome slackware15.0-logins
    [ $? -eq 0 ] && echo -e "${i} - USUARIO: ${USERNAME}${i}\tSENHA: ${PASSWORDS}\n" >> ~/${SLACKWARE_VERSION}-logins

    [ $? -eq 0 ] && echo -e "\e[1;34mUser \e[1;31m\"\e[1;32m${USERNAME}${i}\e[1;31m\" \e[1;34msucessfully created\e[1;32m!\e[0m"

    # força que a senha seja trocada no primeiro login
    chage -d 0 ${USERNAME}${i}
  fi

done

fi
After running the script logged in as root user do:
Code:
# login usuario1
Password:
and see the bug magic happen.

Last edited by backtrack5R1; 05-16-2024 at 06:00 PM.
 
Old 05-16-2024, 09:42 PM   #4
bortolotto
Member
 
Registered: Nov 2019
Location: Brazil
Distribution: Slackware64-current
Posts: 31

Rep: Reputation: 11
No bug and no magic here for me. :-)
Running a Slackware64 15.0 up to date.

Quote:
diniz@darkstar:~$ ssh usuario2@technos
(usuario2@192.168.15.170) Password:
(usuario2@192.168.15.170) You are required to change your password immediately (administrator enforced).
Current password:
(usuario2@192.168.15.170) New password:
(usuario2@192.168.15.170) Retype new password:
Linux 5.15.145.

If value corrupts then absolute value corrupts absolutely

[Slackware64 15.0] usuario2@technos:~$ uname -a
Linux technos.vbox.local 5.15.145 #1 SMP PREEMPT Sun Dec 24 00:07:06 CST 2023 x86_64 Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz GenuineIntel GNU/Linux
[Slackware64 15.0] usuario2@technos:~$ bash --version
GNU bash, version 5.1.16(1)-release (x86_64-slackware-linux-gnu)
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
[Slackware64 15.0] usuario2@technos:~$
I also downgraded bash to 5.0.0 and no error again.

Quote:
diniz@darkstar:~$ ssh usuario2@192.168.15.188
(usuario2@192.168.15.188) Password:
(usuario2@192.168.15.188) You are required to change your password immediately (administrator enforced).
Current password:
(usuario2@192.168.15.188) New password:
(usuario2@192.168.15.188) Retype new password:
Linux 5.15.145.

hardware, n:
The parts of a computer system that can be kicked.

[Slackware64 15.0] usuario2@technos2:~$ uname -a
Linux technos2.vbox.local 5.15.145 #1 SMP PREEMPT Sun Dec 24 00:07:06 CST 2023 x86_64 Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz GenuineIntel GNU/Linux
[Slackware64 15.0] usuario2@technos2:~$ bash --version
GNU bash, version 5.0.0(1)-release (x86_64-slackware-linux-gnu)
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
usuario1 was also ok on both.
BTW why are you running bash 5.0?
ps: vi que o script está com comentários em português.
Se quiser conversar sobre Slackware em pt-BR, pode entrar no grupo de telegram https://t.me/SlackwareBrazil
 
1 members found this post helpful.
Old 05-16-2024, 10:43 PM   #5
bortolotto
Member
 
Registered: Nov 2019
Location: Brazil
Distribution: Slackware64-current
Posts: 31

Rep: Reputation: 11
Quote:
Originally Posted by backtrack5R1 View Post
and the biggest problem is still the users of the slackware distribution because I need to at least create the "package.txz", the "package.txt" file and the "package.txz.asc" and no one tells me the correct command to create the ".txz.asc" file from compiled and compressed package.
About 'the correct command' to do anything, I've learned over time that when asking about Linux-related topics, it always helps to demonstrate that you've done your 'homework' and explain the difficulty you faced. Better than asking for ready-made recipes.

In this topic, '.asc' files are simply signatures made using PGP. It helps to check who made/shared some file with you.
I could verify, for example that I downloaded a good copy of Slackware by its signature:
Code:
diniz@darkstar:/mnt/slackmirror/slackware64-current/source$ ls -l
total 29284
-rw-r--r--   1 root root   620396 May 15 22:19 CHECKSUMS.md5
-rw-r--r--   1 root root      195 May 15 22:19 CHECKSUMS.md5.asc
...

diniz@darkstar:/mnt/slackmirror/slackware64-current/source$ gpg2 --verify CHECKSUMS.md5.asc CHECKSUMS.md5
gpg: Signature made Wed 15 May 2024 10:19:39 PM -03
gpg:                using DSA key EC5649DA401E22ABFA6736EF6A4463C040102233
gpg: Good signature from "Slackware Linux Project <security@slackware.com>" [ultimate]
An example on creating .asc (PGP Detached Signature)
Code:
diniz@darkstar:~$ vi file_created_by_bortolotto.txt
diniz@darkstar:~$ cat file_created_by_bortolotto.txt 
This file was created by Diniz Bortolotto.
diniz@darkstar:~$ gpg2 --armor --detach-sig file_created_by_bortolotto.txt 
diniz@darkstar:~$ cat file_created_by_bortolotto.txt.asc 
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEPBYa/4vZF6EdxMGcoi3JlaQjMU0FAmZG0TYACgkQoi3JlaQj
MU1Abg/9FJD+y/BZbr8YJb6BB7hewXhaWoz+7NhQHLatkL8Y+1wV7EMofgvaRzk+
zq2lYOd13avIu6/K+aomPrV4wDcZbDrvLivP0rkhDycDWgSrDb3svFwfqz4AQox/
mn5JceIK934avhKIly33dH9BKFmeRmS1ox4L61RtRiyr9EtcaxSAGjCstLmymW1g
ghhtCvxCaBmNDzHJOx++j7hOcZmxnSn3TskvRqSwaDGiRs8Hr4f1gVowqXoNuC+H
pp4pyl4BVN1m+BxXNqKOO67PScv/dAkTyquFNOBqznNQKiQu5HUQmIF4P/m5liT+
/M8nLufJ3GGZaw+SPOdV/flPjHP19KAMooTl6AAaU+ul1U17ZC1Q8hRZQOyMmNb5
jQJZs8pY4EQVrQU61G/OIQ4GJv6N5PwdrTydE0/YtdNM0TA6EMzA77WWA8nxw0YQ
FKtxPLBfPHRSjifHmuGlMgp4xea3Fg2TfXHyVElKe+oHFWL/CXtwsam+vf3TxbJP
c0jl80QS9jSrWXQZPPVUyFqKdjNUol8hz+p/l/znmL2qv14uHlCHValnUxwhV326
lFxowirCwNDGHY9/1M0Z7imwv0A0VIbSFGPsD8LzhJFhFnIWltCxtkZfwoqimDNj
4cl6UJcQG9+5tBDcb1lYAi+ZLUCx+SgjJS5anQ1v3v91q+wRyFg=
=heCw
-----END PGP SIGNATURE-----
diniz@darkstar:~$ gpg2 --verify file_created_by_bortolotto.txt.asc file_created_by_bortolotto.txt
gpg: Signature made Fri 17 May 2024 12:38:30 AM -03
gpg:                using RSA key 3C161AFF8BD917A11DC4C19CA22DC995A423314D
gpg: Good signature from "Diniz Bortolotto <diniz.bortolotto@gmail.com>" [ultimate]
diniz@darkstar:~$
 
3 members found this post helpful.
Old 05-17-2024, 12:40 AM   #6
henca
Senior Member
 
Registered: Aug 2007
Location: Linköping, Sweden
Distribution: Slackware
Posts: 1,012

Rep: Reputation: 678Reputation: 678Reputation: 678Reputation: 678Reputation: 678Reputation: 678
Quote:
Originally Posted by bortolotto View Post
In this topic, '.asc' files are simply signatures made using PGP. It helps to check who made/shared some file with you.
Yes, and for your own custom created packages only used by yourself you don't need that.

regards Henrik
 
1 members found this post helpful.
Old 05-17-2024, 01:21 AM   #7
Petri Kaukasoina
Senior Member
 
Registered: Mar 2007
Posts: 1,930

Rep: Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565
Quote:
Originally Posted by backtrack5R1 View Post
logged in as root user do:
Code:
# login usuario1
Password:
This does not work in 15.0 where /bin/login comes from util-linux. The old /bin/login from shadow used to work like this.

If you log in from a real terminal (like Alt-Ctrl-F5 to get /dev/tty5), agetty runs /bin/login, and that works. Similarly, for example, in.telnetd uses /bin/login correctly.

To change user ID, you can use su. Logged in as non-root do:
Code:
$ su - usuario1
Password:
The problem with su is that it uses the original pseudo terminal (like /dev/pts/5) and its owner is not changed. Maybe better use ssh like bortolotto showed above. Then the new session has a new pty with the correct owner.
Code:
$ ssh usuario1@localhost
(usuario1@localhost) Password:
 
4 members found this post helpful.
Old 05-17-2024, 07:15 PM   #8
backtrack5R1
LQ Newbie
 
Registered: Jul 2012
Posts: 8

Original Poster
Rep: Reputation: Disabled
Lightbulb

Quote:
Originally Posted by bortolotto View Post
No bug and no magic here for me. :-)
Running a Slackware64 15.0 up to date.



I also downgraded bash to 5.0.0 and no error again.



usuario1 was also ok on both.
BTW why are you running bash 5.0?
ps: vi que o script está com comentários em português.
Se quiser conversar sobre Slackware em pt-BR, pode entrar no grupo de telegram https://t.me/SlackwareBrazil

the bug didn't happen because you added one user at a time, if I run:
Code:
useradd -m usuário -s /bin/bash
and so on and then create the user password this bug won't happen in the bash5 terminal, but if you run the script creating users en masse and when logging in to any of these users, bash crashes. I'm running bash 5.16(1)-release which is the standard version of the Slackware64-15.0 and Slackware64-current distribution, if I run this same script in bash 4.3 and log in with any of the users created with their random passwords, bash- 4.3 does not crash, preventing login and showing the message "bash5 crashed"
 
Old 05-17-2024, 07:16 PM   #9
backtrack5R1
LQ Newbie
 
Registered: Jul 2012
Posts: 8

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by bortolotto View Post
No bug and no magic here for me. :-)
Running a Slackware64 15.0 up to date.



I also downgraded bash to 5.0.0 and no error again.



usuario1 was also ok on both.
BTW why are you running bash 5.0?
ps: vi que o script está com comentários em português.
Se quiser conversar sobre Slackware em pt-BR, pode entrar no grupo de telegram https://t.me/SlackwareBrazil
In relation to my script, I have comments in Portuguese I have already posted questions about this since slackware was released and I downloaded the stable version of slackware I posted it on vivaolinux in the slackware community, I posted it in other forums related to the distribution of slackware and they only respond stupid questions, things that don't give a future or things that are obvious measures that have already been taken and no problem or suggestions are valid and achievable, the Brazilian slackware community only has users who think they are the guys just because they install 10 desktop environments in the distribution and configure zsh on a line by line and when it comes to informing relevant things, they don't even care about what they do, they are experts and newbies are those who have basic doubts like the ones I posted in this forum about how to solve this problem and when reaching the solution I intend to compile a live iso to install on my HD and play with slackware as I always did until I downloaded version 15.0.

Last edited by backtrack5R1; 05-21-2024 at 10:55 AM. Reason: language edit
 
Old 05-17-2024, 10:00 PM   #10
HQuest
Member
 
Registered: Jan 2018
Location: 2001:470:c2d0::/56
Distribution: Anything I can interface with
Posts: 97

Rep: Reputation: Disabled
$ man login
(emphasis mine)

Quote:
BUGS
The undocumented BSD -r option is not supported. This may be required by some rlogind(8) programs.

A recursive login, as used to be possible in the good old days, no longer works; for most purposes su(1) is a
satisfactory substitute. Indeed, for security reasons, login does a vhangup(2) system call to remove any
possible listening processes on the tty. This is to avoid password sniffing. If one uses the command login, then
the surrounding shell gets killed by vhangup(2) because it’s no longer the true owner of the tty.
This can be
avoided by using exec login in a top-level shell or xterm.
Therefore, bash is not the problem, but the way login(1) behaves. Change your testing from "login usuario" to "su usuario".
 
3 members found this post helpful.
Old 05-18-2024, 01:48 AM   #11
Petri Kaukasoina
Senior Member
 
Registered: Mar 2007
Posts: 1,930

Rep: Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565
Quote:
Originally Posted by backtrack5R1 View Post
I'm running bash 5.16(1)-release which is the standard version of the Slackware64-15.0 and Slackware64-current distribution, if I run this same script in bash 4.3 and log in with any of the users created with their random passwords, bash- 4.3 does not crash, preventing login and showing the message "bash5 crashed"
Bash is 5.1.16 in 15.0, 5.2.26 in -current. And 4.3.48 in 14.2. Let me guess, your test with bash 4.3 was actually on slackware 14.2. In slackware64-14.2 /bin/login comes with package shadow-4.2.1-x86_64-1. But slackware-15.0 uses /bin/login from package util-linux-2.37.4-x86_64-3_slack15.0. If you copy the old /bin/login (from shadow) binary from 14.2 to 15.0, then your command 'login usuario1' will work.

Last edited by Petri Kaukasoina; 05-18-2024 at 01:50 AM.
 
1 members found this post helpful.
Old 05-19-2024, 07:08 AM   #12
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 22,039

Rep: Reputation: 7347Reputation: 7347Reputation: 7347Reputation: 7347Reputation: 7347Reputation: 7347Reputation: 7347Reputation: 7347Reputation: 7347Reputation: 7347Reputation: 7347
A crash is definitely a bug. Would be nice to explain exactly how can we reproduce it. Step by step, line by line.
In your case login is crashed, not bash. I assume you created an invalid user with your script, which was not configured properly. You may use strace to check what's going on.
What I can imagine bash4 works somehow differently, therefore that illegal char will not be present. But you gave no enough information to check it.
 
Old 05-19-2024, 08:54 AM   #13
Petri Kaukasoina
Senior Member
 
Registered: Mar 2007
Posts: 1,930

Rep: Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565Reputation: 1565
No, it's not a bug but a feature. Try to execute command 'login' as root from a terminal window.

Code:
$ su -     
Password: 
# login
<bash gets killed>
/bin/login (of util-linux) uses system call vhangup() to kill all other processes on the current tty, so the shell gets killed. Any version of any shell.

In slackware-14.2 there was the old /bin/login from shadow. It didn't kill anything, so the previous user of the tty could run a process reading everything, passwords included, of what the next user types. Or could write anything to the next user's screen.
 
4 members found this post helpful.
Old 05-20-2024, 06:09 PM   #14
backtrack5R1
LQ Newbie
 
Registered: Jul 2012
Posts: 8

Original Poster
Rep: Reputation: Disabled
Thumbs up

Quote:
Originally Posted by henca View Post
Yes, and for your own custom created packages only used by yourself you don't need that.

regards Henrik
The need to create the .asc files of the packages is to customize the distro, each package would have its signature and later an iso image would be created with all the packages.
 
Old 05-20-2024, 06:33 PM   #15
backtrack5R1
LQ Newbie
 
Registered: Jul 2012
Posts: 8

Original Poster
Rep: Reputation: Disabled
Thumbs up

Quote:
Originally Posted by pan64 View Post
A crash is definitely a bug. Would be nice to explain exactly how can we reproduce it. Step by step, line by line.
In your case login is crashed, not bash. I assume you created an invalid user with your script, which was not configured properly. You may use strace to check what's going on.
What I can imagine bash4 works somehow differently, therefore that illegal char will not be present. But you gave no enough information to check it.
copy the script in this post, run it as the root user it will create a file "slackware-1X.x-logins" in the root user directory with the users created after that run:
Code:
#!/bin/sh

if [ $(id -u) -ne 0 ]; then
 echo -e "\n\e[1;31mYou must be root\e[1;32m!\e[0m\n"
  else

declare USERNAME="usuario"

declare SLACKWARE_VERSION="$(sed '1q' /etc/slackware-version | sed 's/\s//g;' | tr 'A-Z' 'a-z')"

declare PYTHON="$(which python{,2.7,3,3.5,3.6,3.8,3.9} 2>/dev/null | tail -1)"

for ((i=1; i < 4; i++)); do

  if [ -n "$(getent passwd ${USERNAME}${i})" ]; then
   echo -e "\n\e[1;31mUser \e[1;34m${USERNAME}${i}\e[1;31m exists\e[1;32m!\e[0m"
    exit 0
    else

    #Cria o grupo sudo se nao existir
    [ -z $(getent group sudo) ] && groupadd sudo
    
    #Senhas randomicas com até 10 caracteres
    PASSWORDS="$(tr -dc a-z0-9_@%*A-Z0-9 < /dev/urandom | head -c 10)"

    #Saltos randomicos para criptografar a senha
    SALT_PASSWD="$(tr -dc _a-z-A-Z-0-9@%* < /dev/urandom | head -c 18)"
    
    #Criptografa a senha com algoritmo SHA-512
    CRYPT_PASSWD="$(${PYTHON} -c "import crypt; print(crypt.crypt('${PASSWORDS}', '\$6\$${SALT_PASSWD}\$'))")"
    
    #Cria o usuario com a senha criptografada
    useradd -m ${USERNAME}${i} -p ${CRYPT_PASSWD} -s /bin/bash -G disk,lp,kmem,floppy,dialout,audio,video,cdrom,games,input,plugdev,power,netdev,scanner,sudo

    #Salva os usuarios criados no diretório /root com o nome slackware15.0-logins
    [ $? -eq 0 ] && echo -e "${i} - USUARIO: ${USERNAME}${i}\tSENHA: ${PASSWORDS}\n" >> ~/${SLACKWARE_VERSION}-logins

    [ $? -eq 0 ] && echo -e "\e[1;34mUser \e[1;31m\"\e[1;32m${USERNAME}${i}\e[1;31m\" \e[1;34msucessfully created\e[1;32m!\e[0m"

    # força que a senha seja trocada no primeiro login
    chage -d 0 ${USERNAME}${i}
  fi

done

fi
password view in /root:
Code:
# cat ~/slackware15.0-logins
and run:
Code:
# login usuario1
Password:
and try to log in with the created username and passwords and you will see bash crash. This is the problem that I identified in relation to the version of slackware 14.2 that I use if there is a way to get around this, because when I learned how to create a user in Linux so that it would be possible using the "login username" command you need to be logged in as root and when executing "login username" bash crashes.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Bash "shellshock" CVE-2014-6271 CVE-2014-7169 - Bash Bug Fix enorbet Slackware 42 09-27-2014 12:44 AM
urgent urgent, need help please with bash script to pass exam... engrmilad Programming 32 11-23-2011 02:02 PM
Help With Java Problem Please"""""""""""" suemcholan Linux - Newbie 1 04-02-2008 06:02 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 04:09 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration